Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci(github): add workflow to check ci stability of release branches #12256

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

bartsmykla
Copy link
Contributor

@bartsmykla bartsmykla commented Dec 12, 2024

Motivation

We decided to run daily tests for release branches to monitor stability. This change adds a new workflow in the master branch that triggers CI on release branches using the workflow_dispatch event. The schedule is:

  • release-A: 11:00 AM PST / 20:00 CET / 03:00 CST
  • release-B: 01:00 PM PST / 22:00 CET / 05:00 CST
  • release-C: 03:00 PM PST / 00:00 CET / 07:00 CST
  • release-D: 05:00 PM PST / 02:00 CET / 09:00 CST

Each branch's build-test-distribute workflow was already updated earlier to support workflow_dispatch. The new master workflow uses the GitHub API to trigger these workflows. This ensures we are able to check branch stability with minimal changes and no interruptions to ongoing work.

Supporting documentation

Part of:

@bartsmykla bartsmykla added the ci/skip-test PR: Don't run unit and e2e tests (maybe this is just a doc change) label Dec 12, 2024
Copy link
Contributor

Reviewer Checklist

🔍 Each of these sections need to be checked by the reviewer of the PR 🔍:
If something doesn't apply please check the box and add a justification if the reason is non obvious.

  • Is the PR title satisfactory? Is this part of a larger feature and should be grouped using > Changelog?
  • PR description is clear and complete. It Links to relevant issue as well as docs and UI issues
  • This will not break child repos: it doesn't hardcode values (.e.g "kumahq" as an image registry)
  • IPv6 is taken into account (.e.g: no string concatenation of host port)
  • Tests (Unit test, E2E tests, manual test on universal and k8s)
    • Don't forget ci/ labels to run additional/fewer tests
  • Does this contain a change that needs to be notified to users? In this case, UPGRADE.md should be updated.
  • Does it need to be backported according to the backporting policy? (this GH action will add "backport" label based on these file globs, if you want to prevent it from adding the "backport" label use no-backport-autolabel label)

@bartsmykla bartsmykla force-pushed the ci/add-gh-action-to-check-ci-stability-of-release-branches branch 6 times, most recently from 78c56d7 to 3ce6028 Compare December 12, 2024 13:30
…atch

We decided to run daily tests for release branches to monitor stability.
This change adds a new workflow in the master branch that triggers CI
on release branches using the `workflow_dispatch` event. The schedule
is:

- release-A: 11:00 AM PST / 20:00 CET / 03:00 CST
- release-B: 01:00 PM PST / 22:00 CET / 05:00 CST
- release-C: 03:00 PM PST / 00:00 CET / 07:00 CST
- release-D: 05:00 PM PST / 02:00 CET / 09:00 CST

Each branch's `build-test-distribute` workflow was already updated
earlier to support `workflow_dispatch`. The new master workflow uses the
GitHub API to trigger these workflows. This ensures we are able to check
branch stability with minimal changes and no interruptions to ongoing
work.

Signed-off-by: Bart Smykla <[email protected]>
@bartsmykla bartsmykla force-pushed the ci/add-gh-action-to-check-ci-stability-of-release-branches branch from 3ce6028 to 7acfb17 Compare December 12, 2024 13:39
@bartsmykla bartsmykla requested a review from lukidzi December 12, 2024 13:41
@bartsmykla bartsmykla marked this pull request as ready for review December 12, 2024 13:42
@bartsmykla bartsmykla requested a review from a team as a code owner December 12, 2024 13:42
@bartsmykla bartsmykla requested review from michaelbeaumont and removed request for a team December 12, 2024 13:42
Signed-off-by: Bart Smykla <[email protected]>
group: ${{ format('{0}-{1}', github.workflow, github.event_name) }}

jobs:
fetch-release-branches:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WDYT about: get-active-branches?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

but it's not active branches, because we are excluding master

branches: ${{ steps.generate-branches.outputs.branches }}
steps:
- name: Fetch release branches
id: generate-branches
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe active-branches

exit 1
fi

validate-schedule:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure if validate-schedule maybe schedule-branch, since you match branch to the schedule

run: |
BRANCH=""
case "$SCHEDULED_TIME" in
"0 19 * * *") BRANCH=$(echo "$RELEASE_BRANCHES" | jq -r '.[0]') ;;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we have more than 4 branches? I feel like 5 can be max but what about LTS?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ci/skip-test PR: Don't run unit and e2e tests (maybe this is just a doc change)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants