Skip to content

Latest commit

 

History

History
55 lines (39 loc) · 3.99 KB

File metadata and controls

55 lines (39 loc) · 3.99 KB

github-release-workflow

Usage Used by Stats

Important

To ensure changelogs are generated correctly, all git commit messages must follow the Conventional Commits specification.

Also, you must go to your repository Settings > Actions > General > Workflow permissions and enable "Allow GitHub Actions to create and approve pull requests", otherwise the automated release process will fail.

🚀 Instant Magic for Your Repository!!!

Add professional release automation to your personal project with a single step:

Copy the prepare-release.yml and publish-release.yml files from .github/workflows into your project's .github/workflows directory.

✨ That's it! Your repository is now enchanted.

⚙ How It Works

This workflow streamlines your release process into a few simple steps:

  1. Tag Your Release: On your development branch (separate from master or main), create a git tag with a v prefix (e.g., v1.0.0).

    git tag v1.0.0
  2. Push the Tag: Push the tag to GitHub.

    git push origin v1.0.0
  3. Automated Magic: GitHub Actions will automatically:

    • Generate a changelog based on your conventional commits.
    • Create a specific release branch.
    • Open a Pull Request to your default branch (e.g., master).
  4. Review and Merge: Review the Pull Request created by the bot.

    • Do not modify the Pull Request title or body, as they are used for the release metadata.
    • Merge the Pull Request.
    • The workflow will automatically create coordinated releases across GitHub and supported package registries.

📦 Optional Publishing

Note

If the required inputs or secrets for a release target are not configured, publishing for that target will not start.

Configure target publishing in your user-side entry workflow (.github/workflows/publish-release.yml):

Release Target Required User-Side Inputs (with)
GitHub Release ACCESS_TOKEN (Mapped from secrets.GITHUB_TOKEN) None
npm NPM_TOKEN npm-node-version (Default 20)
npm-package-dir (Default .)
npm-deploy-command (Default npm run deploy)
TODO Requirement Blueprint (Bump Project Node Version) trb-repository
trb-project-node-name