Uploaded image for project: 'Subscription Watch'
  1. Subscription Watch
  2. SWATCH-4504

Reduce deployment wait times for ephemeral environments

XMLWordPrintable

    • Icon: Spike Spike
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • None
    • CI/Infrastructure
    • None
    • False
    • Hide

      None

      Show
      None
    • False
    • subs-swatch-lightning

      We need to speed up how long it takes to deploy our application in ephemeral environments.

      Right now, deploying the full application stack in ephemeral environments takes around 13 minutes, which slows down our testing and development feedback loop. This affects developer productivity and increases the time it takes to validate changes through our Konflux CI/CD pipeline.

      From recent deployment analysis, we identified that several components are responsible for most of the wait time:

      • swatch-api: 13 minutes (the slowest, blocking everything else)
      • host-inventory: 11 minutes (deploys 12 separate components)
      • kessel-inventory: 9 minutes
      • swatch-utilization: 11 minutes
      • swatch-metrics-hbi: 10 minutes
      • puptoo, storage-broker, and rbac: 6-8 minutes each

      Many of these components may not be essential for every test scenario. For example, kessel-inventory, puptoo, and storage-broker might only be needed for specific integration tests but are currently deployed for all test runs.

      See attached file for a reference about the deployment times for each service: bonfire-integration-tests-pipelinerun-9p2lf-deploy-application.log

      Potential approaches to investigate

      • Skip non-essential dependencies based on test type (could save 4-5 minutes immediately)
      • Optimize resource allocation for faster startup
      • Adjust health check intervals

      This work should be done in the Konflux pipeline specifically, as Jenkins-based pipelines are being phased out. The goal is to maintain test coverage while significantly reducing deployment overhead.

      Acceptance Criteria

      • Identify which services can be safely excluded from ephemeral deployments for different test scenarios
      • Implement configuration to skip deploying non-essential services (e.g., kessel-inventory, puptoo, storage-broker) that take 6+ minutes
      • Measure and document the deployment time improvement achieved
      • Ensure test coverage remains intact with the optimized deployment
      • Update Konflux integration test pipeline configuration with the improvements

              Unassigned Unassigned
              jcarvaja@redhat.com Jose Carvajal Hilario
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: