Skip to content

Minimal integration test for bundle installation.#748

Open
AdamSaleh wants to merge 28 commits intorh-gitops-midstream:release-1.20from
AdamSaleh:konflux
Open

Minimal integration test for bundle installation.#748
AdamSaleh wants to merge 28 commits intorh-gitops-midstream:release-1.20from
AdamSaleh:konflux

Conversation

@AdamSaleh
Copy link
Copy Markdown
Collaborator

@AdamSaleh AdamSaleh commented Mar 9, 2026

Decided to develop against 1.20 as I want this to be useful for current release testing.

Also, on main I was waiting too long for rebuilds.

First - the more sweeping change. I needed to update all of the PR based pipelines to produce ARM images as well, as we are mostly getting arm clusters in konflux ci.

Second - overviewof the pipeline:

  • it is triggered on completion of a group, which means it has access to all pr built images. This leads to littlebit of awkwardness during testing, as the pipeline always fails in first few minutes because of chsins signing issue and then gets triggered again in ~hour or so after it finishes bulding all of the components.
  • on PR it will not actually test the bundle as committed, as it takes the snapshots of the images anx creates a temporary bundle. This part of the pipeline was supplied by claude code. On Push, it should use the bundle as specified.
  • then it will create cluster, install the bundle, and run small subset of ginkgo tests - these will be hosted in new rh-gitops-release-qa organization made to facilitate faster updates of tests during release process.
  • regardless of the success of the pipeline, it will collect information from the test cluster, the pipeline logs, store these in quay as an artefact and send a slack message to our test-notification channel. This was based on our existing script and some konflux CI utilities vendored in and modified by claude code.

There is one more utility task, that parses the pipeline param for the PRs repository and branch so that you can change the steps contents when developing.

Please review and comment :)

svghadi and others added 4 commits March 5, 2026 20:56
Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>
…ops-midstream#746)

* Add script and gha automation to build agent helm-chart

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

* Modify ci triggers

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

---------

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>
Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>
@AdamSaleh
Copy link
Copy Markdown
Collaborator Author

/retest

1 similar comment
@AdamSaleh
Copy link
Copy Markdown
Collaborator Author

/retest

@AdamSaleh AdamSaleh marked this pull request as draft March 9, 2026 14:14
@AdamSaleh
Copy link
Copy Markdown
Collaborator Author

/retest

1 similar comment
@AdamSaleh
Copy link
Copy Markdown
Collaborator Author

/retest

@AdamSaleh AdamSaleh marked this pull request as ready for review March 10, 2026 10:09
@AdamSaleh AdamSaleh requested a review from svghadi March 10, 2026 15:14
red-hat-konflux Bot and others added 5 commits March 13, 2026 13:08
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Co-authored-by: red-hat-konflux[bot] <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>
Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>
Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Co-authored-by: red-hat-konflux[bot] <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Copy link
Copy Markdown
Collaborator

@svghadi svghadi left a comment

Choose a reason for hiding this comment

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

When is this integration test going to run? on component build or on bundle build?

Comment on lines +10 to +13
application: gitops-main
contexts:
- description: bundle testing
name: component_bundle
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Can you verify these values? I think the application should be gitops-1-20 and component should be name of the bundle component.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

You are right about the application. The component_bundle is the context so that it catches all the changes. Currently if you change any of the application references, it shoul make you a new testing bundle that contains it and run tests on that.

I will point it to 1.20

Comment on lines +17 to +22
- name: url
value: https://github.com/rh-gitops-midstream/release
- name: revision
value: main
- name: pathInRepo
value: /.tekton/integration-tests/pipelines/gitops-bundle-integration-test-pipeline.yaml No newline at end of file
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Should the values point to release-1.20 branch and the pipeline name added in this PR?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Yeah, I used to develop it against 1.20 branch

@svghadi svghadi self-requested a review March 19, 2026 06:06
…ate tarball (rh-gitops-midstream#653)

* build microshift-gitops using pre-build-script custom task to create tarball

* changed script to force rebuild

* updated to 1.19.2 images references
@AdamSaleh
Copy link
Copy Markdown
Collaborator Author

@svghadi on second note, I figured I will get this merged first and then I will do a followup where I will create the scenario and point the steps to the rh-gitops-midstream/release instead of my fork.

name: gitops-bundle-lowest-parallel-integration-test-pipeline
spec:
description: |
An integration test which provisions an ephemeral Hypershift cluster and deploys an Operator
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Suggested change
An integration test which provisions an ephemeral Hypershift cluster and deploys an Operator
An integration test which provisions an ephemeral Hypershift cluster and deploys the Openshift GitOps operator

oc get csv -n "${OPERATOR_NAMESPACE}" -o wide 2>/dev/null || echo "No CSVs found"

echo -e "\n[CatalogSources]"
oc get catalogsources -n "${OPERATOR_NAMESPACE}" 2>/dev/null || echo "No catalogsources found"
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Suggested change
oc get catalogsources -n "${OPERATOR_NAMESPACE}" 2>/dev/null || echo "No catalogsources found"
oc get catalogsources -n openshift-marketplace 2>/dev/null || echo "No catalogsources found"


echo -e "\n[Operator Pod Logs (last 100 lines)]"
oc logs -n "${OPERATOR_NAMESPACE}" --all-containers=true --prefix=true --tail=100 \
--selector='control-plane=controller-manager' --ignore-errors=true 2>/dev/null || \
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Suggested change
--selector='control-plane=controller-manager' --ignore-errors=true 2>/dev/null || \
--selector='control-plane=gitops-operator' --ignore-errors=true 2>/dev/null || \

Comment on lines +69 to +71
oc logs -n "${OPERATOR_NAMESPACE}" --all-containers=true --prefix=true --tail=100 \
-l 'app' --ignore-errors=true 2>/dev/null || \
echo "No logs available"
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Suggested change
oc logs -n "${OPERATOR_NAMESPACE}" --all-containers=true --prefix=true --tail=100 \
-l 'app' --ignore-errors=true 2>/dev/null || \
echo "No logs available"


echo -e "\n[Recent Pod Logs (last 50 lines)]"
oc logs -n "${NAMESPACE}" --all-containers=true --prefix=true --tail=50 \
-l 'app.kubernetes.io/part-of=argocd' --ignore-errors=true 2>/dev/null || \
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

I don't think we use this label

echo -e "\n[Recent Pod Logs (last 50 lines)]"
oc logs -n "${NAMESPACE}" --all-containers=true --prefix=true --tail=50 \
-l 'app.kubernetes.io/part-of=argocd' --ignore-errors=true 2>/dev/null || \
oc logs -n "${NAMESPACE}" --all-containers=true --prefix=true --tail=50 \
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This wouldn't work as we are not specifying the pod name


# Wait for the operator to create the application-controller StatefulSet before checking rollout
echo "Waiting for openshift-gitops-application-controller StatefulSet to be created..."
#oc wait --for=create statefulset/openshift-gitops-application-controller -n "${NAMESPACE}" --timeout=300s || exit 1
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This can be removed

Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Co-authored-by: red-hat-konflux[bot] <126015336+red-hat-konflux[bot]@users.noreply.github.com>
red-hat-konflux Bot and others added 5 commits April 6, 2026 08:50
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Co-authored-by: red-hat-konflux[bot] <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Co-authored-by: red-hat-konflux[bot] <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Co-authored-by: red-hat-konflux[bot] <126015336+red-hat-konflux[bot]@users.noreply.github.com>
)

* build: switch argocd-agent build to make target

Signed-off-by: Jayendra Parsai <jparsai@redhat.com>

* build: switch argocd-agent build to make target

Signed-off-by: Jayendra Parsai <jparsai@redhat.com>

---------

Signed-off-by: Jayendra Parsai <jparsai@redhat.com>
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Co-authored-by: red-hat-konflux[bot] <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>
@AdamSaleh
Copy link
Copy Markdown
Collaborator Author

/retest

svghadi and others added 7 commits April 14, 2026 17:24
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Co-authored-by: red-hat-konflux[bot] <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Updated versions for external images in config.yaml.
red-hat-konflux Bot and others added 3 commits May 1, 2026 00:08
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Co-authored-by: red-hat-konflux[bot] <126015336+red-hat-konflux[bot]@users.noreply.github.com>
…4cc51e9e1c398ac (v1.2.0) (rh-gitops-midstream#912)

Signed-off-by: dkarpele <karpelevich@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants