camunda / camunda

Process Orchestration Framework
https://camunda.com/platform/
3.32k stars 604 forks source link

CI: reduce team's pipeline code duplication via custom GHA actions #18214

Open cmur2 opened 6 months ago

cmur2 commented 6 months ago

Description

After migrating existing CI workflows of multiple teams to the monorepo there is some redundancy across GHA workflow code. Due to similarities in tech stack all team's CIs have code to set up Java+Maven, build, run tests and create artifacts like Docker images. This can be seen in https://github.com/camunda/camunda/tree/main/.github/actions where several redundant GHA exists like build-operate-docker, build-tasklist-docker, build-zeebe-docker or collect-test-artifacts, collect-operate-test-artifacts, collect-tasklist-test-artifacts.

Goal: solve common tasks in CI with the same code without redundancies.

This can be achieved by unifying redundant code from e.g. https://github.com/camunda/camunda/tree/main/.github/actions in to single parameterized reusable actions that are used by all teams afterward:

cmur2 commented 4 months ago

Work for Docker build action in https://github.com/camunda/camunda/pull/19521

cmur2 commented 1 month ago

Subtask https://github.com/camunda/team-infrastructure/issues/675