Uploaded image for project: 'OpenShift Pipelines'
  1. OpenShift Pipelines
  2. SRVKP-8095

Migrate nightly Infra from Azure to GHA - upstream effort

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Done
    • Icon: Major Major
    • None
    • None
    • Process Improvements
    • None
    • Pipelines Sprint pioneers 33, Pipelines Sprint Pioneers 34

      Story (Required)

      This Jira captures the effort to contribute upstream towards migrating the nightly builds infrastructure for Tekton from Azure to GitHub Actions (GHA).

      Upstream Issue: https://github.com/tektoncd/plumbing/issues/2670 

      Azure credits will expire by end of July 2025. To avoid disruption of nightly builds and manage cost-effectiveness, the plan is to:

      • Move nightly builds from Azure Pipelines to GitHub Actions (GHA)
      • Reduce the build frequency from nightly to weekly (or less frequent)
      • Optionally publish build manifests to GitHub and delete very old manifests to conserve cloud storage

      Background (Required)

      This effort aligns with ongoing upstream discussions and historical context tracked in 

      https://github.com/tektoncd/plumbing/issues/2156

      Previously, nightly builds were hosted on GCP and later moved to Azure for cost reasons. With Azure sponsorship ending, a sustainable and zero-cost platform like GitHub Actions is the logical choice.


      Out of Scope

      • Migrating other CI/CD workflows not related to nightly builds
      • Supporting nightly builds for downstream or forked projects
      • Infrastructure work for publishing build artifacts outside GitHub (e.g., GCS, S3)
      • Introducing flaky test handling or build alerting

      Approach (Required)

      1. Define new GHA workflow in tektoncd/plumbing for each project currently using nightly builds
        • Mirror existing logic from Azure pipelines where applicable
        • Include steps to publish manifests (if needed) to a GitHub branch or release
      1. Update frequency from nightly to weekly or manual based on project needs
      1. Test on fork or shadow run before enabling
      1. Coordinate merge and cleanup of Azure pipeline references
      1. Optionally: Add a retention cleanup job to delete old nightly manifests

      Dependencies

      • Access to update GHA workflows in upstream Tekton repos
      • Coordination with maintainers for frequency and trigger schedule
      • GitHub Personal Access Token (PAT) or GitHub App credentials if publishing manifests

      Acceptance Criteria (Mandatory)

      • All nightly builds are migrated from Azure Pipelines to GitHub Actions
      • GHA workflows verified to build and pass for each component (e.g., pipelines, triggers, chains)
      • Nightly builds reduced to weekly or lower frequency
      • Azure pipeline configs for nightly builds are removed
      • (Optional) Build artifacts or manifests are published to GitHub
      • (Optional) Retention policy or cleanup strategy defined and documented
      • Documentation updated in tektoncd/plumbing or related README.md files

      INVEST Checklist

      • ✅ Dependencies identified
      • ✅ Blockers noted (Azure budget deadline)
      • ✅ Design is implementable using GitHub Actions
      • ✅ Acceptance criteria agreed
      • ✅ Story estimated

      Done Checklist

      • Code implemented, reviewed, merged upstream
      • Unit/integration tests (if applicable) pass in GHA
      • GitHub Actions CI pipelines include new build logic
      • Azure Pipelines jobs deleted
      • Build outputs verified (manifests, images if applicable)
      • User-facing documentation updated (e.g., README.md)
      • Acceptance criteria met and validated

              rh-ee-anataraj Anitha Natarajan
              rh-ee-anataraj Anitha Natarajan
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: