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(itest): run integration tests using docker #767

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

andrewazores
Copy link
Member

@andrewazores andrewazores commented Jan 6, 2025

Welcome to Cryostat! 👋

Before contributing, make sure you have:

  • Read the contributing guidelines
  • Linked a relevant issue which this PR resolves
  • Linked any other relevant issues, PR's, or documentation, if any
  • Resolved all conflicts, if any
  • Rebased your branch PR on top of the latest upstream main branch
  • Attached at least one of the following labels to the PR: [chore, ci, docs, feat, fix, test]
  • Signed all commits using a GPG signature

To recreate commits with GPG signature git fetch upstream && git rebase --force --gpg-sign upstream/main


Related to #759
See #759 (comment)

Description of the change:

  1. Splits up the CI run into more distinct phases: unit testing, container image building, and integration testing of that built image, each run for both supported architectures. Once all of these pass then the images for all architectures are combined together into the multiarch manifest and published.
  2. Performs the integration testing step using docker rather than podman. This works around an issue seen in test(agent): add Agent itest #759 where the test harness fails to start containers due to a "Broken pipe" error when communicating with podman.

Motivation for the change:

This change is helpful because users may want to...

How to manually test:

See https://github.com/andrewazores/cryostat3/actions/runs/12638048397/job/35214513676 for a sample run including #759

@mergify mergify bot added the safe-to-test label Jan 6, 2025
@andrewazores andrewazores added the ci label Jan 6, 2025
@andrewazores andrewazores mentioned this pull request Jan 6, 2025
7 tasks
@andrewazores andrewazores marked this pull request as ready for review January 6, 2025 18:48
@andrewazores
Copy link
Member Author

/build_test

Copy link

github-actions bot commented Jan 6, 2025

Workflow started at 1/6/2025, 1:49:06 PM. View Actions Run.

Copy link

github-actions bot commented Jan 6, 2025

No GraphQL schema changes detected.

Copy link

github-actions bot commented Jan 6, 2025

No OpenAPI schema changes detected.

Copy link

github-actions bot commented Jan 6, 2025

CI build and push: All tests pass ✅
https://github.com/cryostatio/cryostat/actions/runs/12638451272

tmp

refactor

typo

escape linebreak

prepare metadata before itest run

don't rebuild frontend

skip importing image tarballs

rename

skip spotless

verify test run result

try to use existing image for test run

image pull should not be required

ensure artifact properties file exists

ensure directory exists

additional prep

create directory if not exists

dump logs

run unit tests separately

run latest image

container images debug

explicit compile

list containers

load specific tarball

linebreak

tarball format

correct tag

skip container rebuild

only include podman images in final manifest

Revert "tmp"

This reverts commit 60c13e6.
@andrewazores andrewazores force-pushed the itest-run-under-docker branch from ef1a13e to 4c1af98 Compare January 7, 2025 17:47
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.

1 participant