refactor: unify E2E setup into Makefile targets, remove dead serverless/OSSM scripts#1433
refactor: unify E2E setup into Makefile targets, remove dead serverless/OSSM scripts#1433jlost wants to merge 6 commits intoopendatahub-io:masterfrom
Conversation
- Override BASE_IMG to UBI in Makefile.overrides.mk so `make docker-build-*` uses the same base image the Dockerfiles expect (fixes dnf-not-found on Debian slim) - Deploy SeaweedFS separately in ODH operator mode since the operator doesn't include it, but the E2E tests need a local S3 backend Made-with: Cursor
Extract operator installation logic into install-operator.sh (shared by deploy.odh.sh and VS Code tasks) and DSCI/DSC application into apply-dsci-dsc.sh. Enhance the setup-e2e-ocp Makefile target to accept OPERATOR_TYPE, OPERATOR_VERSION, and CATALOG_SOURCE, translating them into INSTALL_ODH_OPERATOR for setup-e2e-tests.sh. MIRROR_IMAGES is now auto-derived (true when OPERATOR_TYPE=rhoai and CATALOG_SOURCE is an FBC fragment image). setup-e2e-tests.sh is unchanged -- backward compatible with existing CI. Made-with: Cursor
- Add `build-images-ocp` and `reset-e2e-ocp` Makefile targets - Remove deploy.serverless.sh and deploy.ossm.sh (dead code) - Remove ServiceMeshMember cleanup from teardown-ci-namespace.sh - Remove serverless/servicemesh references from version.sh - Drop unused DEPLOYMENT_TYPE arg from setup-ci-namespace.sh - Update fvt-tests.md to document Makefile-based E2E workflow Made-with: Cursor
|
Skipping CI for Draft Pull Request. |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jlost The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Central YAML (base), Organization UI (inherited) Review profile: CHILL Plan: Enterprise Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
- deploy.odh.sh: use OPERATOR_NAME for CSV lookup and dynamic pod selector from deployment matchLabels (was hardcoded to ODH) - copy-kserve-manifests-to-pvc.sh: derive operator deployment name from OPERATOR_TYPE instead of hardcoding ODH label - setup-e2e-tests.sh: set KSERVE_NAMESPACE per operator type (redhat-ods-applications for RHOAI, opendatahub for ODH); skip DSCI apply when one already exists (RHOAI auto-creates it) - Makefile.overrides.mk: forward COPY_PR_MANIFESTS to setup script; add $(strip) to all forwarded variables for VSCode space defaults Made-with: Cursor
- Replace the deletion of the S3 init job with a forceful replacement to ensure the job is updated correctly. - This change improves the reliability of the S3 initialization process during E2E tests. Made-with: Cursor Signed-off-by: James Ostrander <jostrand@redhat.com>
- Removed unused INSTALL_ODH_OPERATOR variable and refactored setup-e2e-tests.sh to derive installation mode from OPERATOR_TYPE. - Updated teardown-e2e-setup.sh to support both raw and operator-based deployments, ensuring a more robust cleanup process. - Enhanced install-operator.sh to dynamically handle channel detection and CSV validation, improving operator installation reliability. - Adjusted deploy.odh.sh to remove the CHANNEL_OVERRIDE variable, simplifying the script. Made-with: Cursor Signed-off-by: James Ostrander <jostrand@redhat.com>
|
@jlost: The following test has Failed: OCI Artifact Browser URLInspecting Test Artifacts ManuallyTo inspect your test artifacts manually, follow these steps:
mkdir -p oras-artifacts
cd oras-artifacts
oras pull quay.io/opendatahub/odh-ci-artifacts:kserve-group-test-n2djv |
What this PR does / why we need it:
Consolidates the local E2E test workflow into consistent Makefile targets and removes dead serverless/OSSM infrastructure:
New Makefile targets and scripts:
build-images-ocp,setup-e2e-ocp,e2e-ocp,reset-e2e-ocp,teardown-e2e-ocpMake targets inMakefile.overrides.mksetup-e2e-ocpacceptsOPERATOR_TYPE(odh/rhoai),OPERATOR_VERSION, andCATALOG_SOURCEfor operator-based installsinstall-operator.shfor operator installation with version pinning, channel detection, and catalog source configurationapply-dsci-dsc.shfor DSCI/DSC application with optional cert-manager + KueueBug fixes:
INSTALL_ODH_OPERATOR=truepath: SeaweedFS was not deployed in operator mode, causingsetup-e2e-tests.shto timeout waiting for a deployment that nobody created. The operator doesn't include SeaweedFS, so it must be deployed separately for E2E tests.Cleanup and refactoring:
build-kserve-images.shwith abuild_tag_pushhelper (eliminates manual docker tag/push steps)AGENT_IMG,ROUTER_IMG,STORAGE_INIT_IMG) with ODH registry conventionsdeploy.serverless.shanddeploy.ossm.sh(dead code -- nothing calls them)teardown-ci-namespace.shDEPLOYMENT_TYPEarg fromsetup-ci-namespace.shfvt-tests.mdto document the new Makefile-based E2E workflowWhich issue(s) this PR fixes:
Feature/Issue validation/testing:
make setup-e2e-ocp E2E_MARKER=predictoron a fresh cluster (manual deploy mode)make setup-e2e-ocp E2E_MARKER=predictor OPERATOR_TYPE=odh(operator mode)make e2e-ocp E2E_MARKER=predictorruns tests successfullymake reset-e2e-ocpresets namespace cleanlymake teardown-e2e-ocptears down without errorsmake build-images-ocp QUAY_REPO=quay.io/<user>builds and pushes imagesSpecial notes for your reviewer:
deploy.serverless.shanddeploy.ossm.shwere not referenced by any script or CI config. Service Mesh was only referenced inteardown-ci-namespace.sh(ServiceMeshMember cleanup) andversion.sh(diagnostic grep), both now cleaned up.Checklist: