Skip to content

ps-jfrog/PRbuildPromote

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GIT branching strategy to Build Promote

This project captures a structured promotion flow with MAIN governing three controlled branches (DEV, TEST, Main/PROD) and enforcing build immutability and promotion-based lifecycle:

Image

This representation enforces promotion over rebuild, ensures traceability across environments, and embeds governance gates before production release-driving consistency, reliability, and auditability across the delivery pipeline.

NOTE: Lengend

  • CC: A developer code commit to the DEV branch automatically triggers a new build and publishes the artifacts to the JFrog platform.
  • PR: Every pull request from DEV → TEST or TEST → MAIN promotes the corresponding DEV branch build to the next local repository.
    • DEV → TEST: promote from prbranch-bpr-dev-local to prbranch-bpr-test-local
    • TEST → MAIN: promote from prbranch-bpr-test-local to prbranch-bpr-prod-local

Actions status:

  • branch DEV: Artifactory create and build published to prbranch-bpr-dev-local DEV: Build Create
  • branch TEST: git merged from DEV, Artifactory build promoted to prbranch-bpr-test-local DEV 2 TEST: Build Promote
  • branch MAIN: git merged from TEST, Artifactory build promoted to prbranch-bpr-prod-local TEST 2 PROD: Build Promote
  • FrogBot: Frogbot: Scan and Fix

Sequence Flow

sequenceDiagram
    autonumber
    participant code as Code
    participant pr as Terminal CLI-PR
    participant vcs as GIT VCS
    participant action as GITHUB ACTIONS
    participant repos as REPO Management
    loop developer build code
        code->>vcs: A developer commits code to the DEV branch in Git.
        vcs->>action: Triggers the build-create.yml pipeline for a commit on the DEV branch.
        action->>repos: Creates an artifact, uploads it to init-local, and then promotes it to dev-local.
    end
    loop DEV to TEST pr
        pr->>vcs: Creates a PR from the DEV branch and merges it into the TEST branch using ./scripts/pr-dev2test.sh (promote/dev-to-test).
        vcs->>action: Triggers the promote-test.yml pipeline for a merge on the TEST branch.
        action->>repos: The promote-test.yaml pipeline runs and transfers the artifact from dev-local to qa-local, adding a status comment: “Promoted from DEV (DEV_COMMIT_SHORT_SHA) to TEST (MERGE_COMMIT_SHORT_SHA).”
    end
    loop TEST to MAIN pr
        pr->>vcs: Creates a PR from the TEST branch and merges it into the MAIN branch using ./scripts/pr-test2prod.sh (promote/test-to-main).
        vcs->>action: Triggers the promote-prod.yml pipeline for a merge on the MAIN branch.
        action->>repos: The promote-prod.yaml pipeline runs and transfers the artifact from qa-local to prod-local, adding a status comment: “Promoted from TEST (MERGE_COMMIT_SHORT_SHA) to PROD (MERGE_COMMIT_SHORT_SHA).”
    end
Loading

Screenshots

Repo structure

Repos

Builds

Builds Publish Module Release History VCS Build Info

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages