Skip to content

Latest commit

 

History

History
92 lines (66 loc) · 2.8 KB

File metadata and controls

92 lines (66 loc) · 2.8 KB

BookVerse Promotion Workflows

Overview

The BookVerse platform uses automated promotion workflows to move artifacts through development stages: DEV → QA → STAGING → PROD. These workflows integrate with JFrog AppTrust for lifecycle management and validation.

What It Does

The promotion system automatically:

  1. Validates Artifacts

    • Runs quality gates and security scans
    • Verifies build requirements and tests
    • Checks artifact integrity and signatures
  2. Promotes Through Stages

    • Moves successful artifacts from DEV to QA to STAGING to PROD
    • Updates lifecycle stages in JFrog AppTrust
    • Maintains promotion history and audit trails
  3. Handles Failures

    • Stops promotion on failed quality gates
    • Provides rollback capabilities
    • Sends notifications for failed promotions

Lifecycle Stages

  • DEV: Development builds and initial testing
  • QA: Quality assurance and automated testing
  • STAGING: Pre-production validation and integration testing
  • PROD: Production-ready releases

Promotion Triggers

Automated Triggers:

  • Successful CI/CD pipeline completion
  • Passing quality gates and security scans
  • Scheduled promotion windows

Manual Triggers:

  • Developer-initiated promotions via GitHub Actions
  • Emergency hotfix promotions
  • Rollback operations

Quality Gates

Each promotion stage includes validation:

  • Code Quality: Linting, testing, coverage thresholds
  • Security: Vulnerability scans, dependency checks
  • Performance: Load testing, performance benchmarks
  • Integration: API testing, service compatibility

How to Use

Automatic Promotion: Most promotions happen automatically when CI/CD pipelines succeed and quality gates pass.

Manual Promotion:

  1. Go to GitHub Actions in the service repository
  2. Select "Promote" workflow
  3. Choose target stage (QA/STAGING/PROD)
  4. Monitor promotion progress

Rollback:

  1. Go to GitHub Actions
  2. Select "Rollback" workflow
  3. Choose target version to rollback to
  4. Confirm rollback operation

Monitoring

Promotion Status:

  • Check GitHub Actions for promotion workflow status
  • View JFrog AppTrust for lifecycle stage information
  • Monitor service dashboards for deployment health

Troubleshooting:

  • Review GitHub Actions logs for failed promotions
  • Check quality gate results in CI/CD pipelines
  • Verify JFrog AppTrust connectivity and permissions

Best Practices

  • Test Thoroughly: Ensure comprehensive testing in lower stages
  • Monitor Promotions: Watch for failed quality gates or deployment issues
  • Plan Rollbacks: Have rollback procedures ready for production issues
  • Document Changes: Maintain clear release notes and change logs

Note: Promotions to PROD require additional approvals and may have restricted time windows for safety.