chore: migrate to trunk-based development with automated build, merge, and release#2675
Closed
Snailedlt wants to merge 2 commits intodevicons:masterfrom
Closed
chore: migrate to trunk-based development with automated build, merge, and release#2675Snailedlt wants to merge 2 commits intodevicons:masterfrom
Snailedlt wants to merge 2 commits intodevicons:masterfrom
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
This PR migrates the repository from the current GitFlow model (master + develop) to trunk-based development (master only), with a fully automated icon PR lifecycle.
Motivation
The current workflow requires maintainers to:
This PR automates all three steps, reducing maintainer toil and making the contribution pipeline more reliable and transparent.
Changes
Removed
in_develop_labeler.yml- no longer needed (no develop branch)in_develop_labeler_preflight.yml- samein_develop_labeler.py- sameUpdated
check_icon_pr.yml- path-based trigger onicons/**anddevicon.jsoninstead of branch-based; targets masterpeek_icons.yml- auto-triggers on all icon PRs (no more manualbot:peeklabel needed)codeql-analysis.yml- removed develop branch referencebuild_icons.yml- explicitbase: master; kept as manual fallback for full rebuildsCONTRIBUTING.md- updated workflow documentationPULL_REQUEST_TEMPLATE/new_icon.md- updated referencesAdded
auto_build_merge.yml- fires on PR approval; validates icon file changes, checks approval count, runs Icomoon build + CSS, commits font artifacts, squash-merges to master. On failure: comments tagging PR author + approvers, addsbuild-failedlabel.version_and_release.yml- fires on push to master for icon/devicon.json changes; reads PR labels (release: major/release: minor/ default patch), bumps version, creates GitHub release. Loop prevention: skipsbuild:andchore: bump versioncommits.New Icon PR Lifecycle
check_icon_pr.ymlvalidates SVGs automaticallypeek_icons.ymlposts font preview screenshot automatically (no label needed)auto_build_merge.ymlfires:build-failedversion_and_release.yml:npm version, pushes tag, creates GitHub releasenpm_publish.ymlMigration Steps (after merging this PR)