CI: run push workflows on master only, stop duplicate PR runs - #934
Merged
Merged
Conversation
Restrict the push trigger to master in build-deploy and markdown-lint workflows. pull_request stays the only source of PR checks, so same-repo PRs no longer run each workflow twice per push (push run + PR run), which showed up as 6 checks for same-repo PRs vs 2 for fork PRs. Deploys now run once per master push; per-branch preview deploys from topic branches and v* tag builds are dropped.
|
Preview was deployed to: https://pull-request-934.kb-adg.pages.dev/ |
el-termikael
approved these changes
Sep 28, 2026
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.
Why
Workflows currently trigger on both
push(all branches) andpull_request. For a PR whose branch lives in this repo, GitHub fires both events for the same commit, so each workflow runs twice per push — the push run plus the PR run. This showed up as PR #484 showing 6 checks while fork-based PR #478 showed 2 (fork pushes run workflows in the fork, so the base repo only ever saw thepull_requestrun).The duplicate push run adds no signal — it runs the exact same commit.
Change
pull_requestbecomes the only source of PR checks;pushCI happens only on master:.github/workflows/build-deploy.yml:push: branches: ["**"]+tags: v*→push: branches: [master].github/workflows/markdown-lint.yml: barepush:(all branches) →push: branches: [master]pull_request,workflow_dispatch, jobs, steps, and check names are untouched.crowdin.ymlalready ran on master only — unchanged. The same change is being applied across all AdGuard knowledge bases (KnowledgeBaseDNS, KnowledgeBaseVPN, KnowledgeBaseMail, KnowledgeBaseWallet).Effect
Please note (deliberate trade-offs, approved)
pull_requestrun, which still builds and deploys apull-request-<N>preview with a comment link. What goes away is CI/preview for pushes to branches that have no PR yet (e.g. grabbing a preview URL before opening a PR) — open the PR and everything works. Speak up if you relied on that.v*tag builds/deploys are dropped. Tag pushes no longer triggerbuild-deploy. If release tags should build/deploy, say so and we'll addtags: [v*]back.