Skip to content

Use GHA self-hoster runner for e2e/k8s science tests#1147

Merged
fjammes merged 5 commits intomasterfrom
1131-home-ci-integration
Mar 30, 2026
Merged

Use GHA self-hoster runner for e2e/k8s science tests#1147
fjammes merged 5 commits intomasterfrom
1131-home-ci-integration

Conversation

@fjammes
Copy link
Copy Markdown
Contributor

@fjammes fjammes commented Mar 16, 2026

Use home-ci/home-ci-reporter for e2e test
Bump ktbx to v1.1.6-rc5
Bump down kind to v0.20.0
Add suffix option to push image script
Use skopeo to manage image name
Improve CIUX image name management
Improve logging

IMPORTANT: Please create an issue first before opening a Pull Request.
Linked to issue(s): Closes #1131

What changes were proposed in this pull request?

How is the issue this PR is referenced against solved with this PR?

How was this patch tested?

@fjammes fjammes self-assigned this Mar 16, 2026
@fjammes fjammes linked an issue Mar 16, 2026 that may be closed by this pull request
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the CI/e2e pipeline to support running Kubernetes E2E tests on a GitHub Actions self-hosted runner, integrates home-ci-reporter for structured reporting, and adjusts image promotion/push behavior.

Changes:

  • Add home-ci-reporter initialization/step reporting/finalization to the E2E runner script and improve E2E logging.
  • Update reusable GHA workflow to optionally skip artifact upload/download and instead persist the Docker image via a shared path for self-hosted runners.
  • Update image push logic to handle promoted image tagging/pushing and fallback to skopeo copy; bump ktbx dependency.

Reviewed changes

Copilot reviewed 14 out of 15 changed files in this pull request and generated 13 comments.

Show a summary per file
File Description
push-image.sh Reworks image push/promotion logic and adds skopeo-based copy path.
home-ci-oneshot.sh Adds a one-line helper to run home-ci with a fixed config/branch.
e2e/run.sh Adds structured home-ci-reporter reporting and more phased logging; tweaks option parsing.
e2e/clean.sh Adds a helper script to delete the e2e cluster.
e2e/check-results.sh Improves failure logging/diagnostics while waiting for expected topics.
build.sh Removes an obsolete TODO comment.
TODO.org / TODO.latest / TODO.931 Minor TODO housekeeping (blank line added; old TODO files removed).
.gitignore Ignores generated e2e-report.yaml.
.github/workflows/e2e-k8s-ztf-science-self-hosted.yml Enables skip_artifacts for self-hosted E2E runs.
.github/workflows/e2e-common.yml Implements skip_artifacts flow and shared-image-path handling; updates outputs.
.github/workflows/dispatch.yaml Ensures E2E report parsing runs even when prior steps fail.
.ciux Bumps ktbx to v1.1.6-rc5.
Comments suppressed due to low confidence (1)

e2e/run.sh:83

  • The usage string doesn’t document the -S <storage> option, but getopts accepts it and it’s used to set storage (and passed to argocd.sh). Please update the help text so the CLI surface matches the implementation.
usage () {
  echo "Usage: $0 [-c] [-h] [-m] [-s]"
  echo "  -s: Use the science algorithms during the tests"
  echo "  -c: Cleanup the cluster after the tests"
  echo "  -i: Specify input survey. Default: ztf"
  echo "  -m: Install monitoring stack"
  echo "  -h: Display this help"
  echo ""
  echo " Run fink-broker e2e tests, using source code from the parent directory."
  exit 1
}

SUFFIX="noscience"

ciux_version=v0.0.7-rc1

src_dir=$DIR/..
cleanup=false
build=false
e2e=false
monitoring=false
push=false
storage="hdfs"
CIUX_IMAGE_URL="undefined"
input_survey="ztf"

token="${TOKEN:-}"

# Get options for suffix
while getopts hcmsi:S: opt; do
  case ${opt} in

    c )
      cleanup=true
      ;;
    h )
      usage
      exit 0
      ;;
    m )
      monitoring=true
      ;;
    s )
      SUFFIX=""
      ;;
    i )
      input_survey="$OPTARG"
      ;;
    S) storage="$OPTARG" ;;
    \? )

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Copy Markdown
Contributor Author

@fjammes fjammes left a comment

Choose a reason for hiding this comment

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

LGTM

@codecov
Copy link
Copy Markdown

codecov bot commented Mar 19, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 62%. Comparing base (552998e) to head (fdf6408).
⚠️ Report is 21 commits behind head on master.

Additional details and impacted files
@@          Coverage Diff           @@
##           master   #1147   +/-   ##
======================================
  Coverage      62%     62%           
======================================
  Files          27      27           
  Lines        1887    1887           
======================================
  Hits         1180    1180           
  Misses        707     707           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Copy Markdown
Member

@JulienPeloton JulienPeloton left a comment

Choose a reason for hiding this comment

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

Thank you @fjammes -- this is a great PR!

I left one comment, otherwise, good to merge.

fjammes and others added 5 commits March 30, 2026 16:05
Use home-ci/home-ci-reporter for e2e test
Bump ktbx to v1.1.6-rc5
Bump down kind to v0.20.0
Add suffix option to  push image script
Use skopeo to manage image name
Improve CIUX image name management
Improve logging
Co-authored-by: Copilot Autofix powered by AI <[email protected]>
@fjammes fjammes force-pushed the 1131-home-ci-integration branch from e5199c2 to 28aeb71 Compare March 30, 2026 14:05
@fjammes fjammes merged commit 99a012b into master Mar 30, 2026
11 checks passed
@sonarqubecloud
Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

home-ci integration

3 participants