Uploaded image for project: 'camunda BPM'
  1. camunda BPM
  2. CAM-14888

Improve CI performance

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Unresolved
    • Icon: L3 - Default L3 - Default
    • None
    • None
    • CI
    • None

      Context

      Umbrella ticket to improve the performance of the CI.

      Proposed Approach

      • Establish data to understand CI performance
        • Where does a pipeline run spend its time?
        • How many pipelines/stages were in parallel execution or scheduled over time?
      • Establish continuous monitoring of performance data
      • Define performance goal per pipeline
      • Identify root causes
      • Choose and implement tasks that fix the root causes

      Hints

      • Work iteratively, it is very easy to sink time here without any benefit. Carefully consider which next step to take and if it is worth it
      • Resulting tasks may be for us or Infra

      Potential tasks

      1. Don't use the Jenkins master for stashing; instead, use Google Bucket (CAM-14537)
      2. Improve performance of cambpmLogParser (CAM-13010)
      3. Avoid parallel pipeline runs: if a new run is triggered, the previous run is canceled (cf. [1])
        • One downside could be that it is harder to understand what commit causes a CI failure; however, finding this out doesn't often happen these days since we have the PR-based CI and don't "hot merge" anymore.
      4. Detect release commits and run only assembly and distro-ee stages

      [1] https://stackoverflow.com/questions/40760716/jenkins-abort-running-build-if-new-one-is-started

        This is the controller panel for Smart Panels app

              Unassigned Unassigned
              tassilo.weidner Tassilo Weidner
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated: