stages: - init - rpmbuild - prepare-rhel-internal - test - finish .base: before_script: - mkdir -p /tmp/artifacts - schutzbot/ci_details.sh > /tmp/artifacts/ci-details-before-run.txt - cat schutzbot/team_ssh_keys.txt | tee -a ~/.ssh/authorized_keys > /dev/null # workaround bug https://issues.redhat.com/browse/RHEL-17890 - sudo dnf upgrade -y nettle after_script: - schutzbot/ci_details.sh > /tmp/artifacts/ci-details-after-run.txt || true - schutzbot/unregister.sh || true - schutzbot/update_github_status.sh update || true - schutzbot/save_journal.sh || true - schutzbot/upload_artifacts.sh interruptible: true retry: 1 tags: - terraform artifacts: paths: - "*.repo" - COMPOSER_NVR when: always .terraform: extends: .base tags: - terraform .terraform/openstack: extends: .base tags: - terraform/openstack .terraform/gcp: extends: .base tags: - terraform/gcp init: stage: init interruptible: true tags: - shell script: - schutzbot/update_github_status.sh start .build_rules: rules: - if: '$CI_PIPELINE_SOURCE != "schedule" && $SKIP_CI == "false"' - if: '$CI_PIPELINE_SOURCE != "schedule" && $SKIP_CI == "true"' when: manual .upstream_rules_all: rules: - if: '$CI_PIPELINE_SOURCE != "schedule" && $RUNNER !~ /[\S]+rhel-[\S]+-(?:(?:ga)|(?:eus))[\S]+/' .upstream_rules_x86_64: rules: - if: '$CI_PIPELINE_SOURCE != "schedule" && $RUNNER =~ "/^.*(x86_64).*$/" && $RUNNER !~ /[\S]+rhel-[\S]+-(?:(?:ga)|(?:eus))[\S]+/' .upstream_and_ga_rules_all: rules: - if: '$CI_PIPELINE_SOURCE != "schedule" && $RUNNER' .nightly_rules_all: rules: - if: '$CI_PIPELINE_SOURCE == "schedule" && $RUNNER =~ /[\S]+rhel-9.7-[^ga][\S]+/ && $NIGHTLY == "true" && $RHEL_MAJOR == "9"' - if: '$CI_PIPELINE_SOURCE == "schedule" && $RUNNER =~ /[\S]+rhel-10.1-[^ga][\S]+/ && $NIGHTLY == "true" && $RHEL_MAJOR == "10"' .nightly_rules_x86_64: rules: - if: '$CI_PIPELINE_SOURCE == "schedule" && $RUNNER =~ /[\S]+rhel-9.7-[^ga][\S]+/ && $RUNNER =~ "/^.*(x86_64).*$/" && $NIGHTLY == "true" && $RHEL_MAJOR == "9"' - if: '$CI_PIPELINE_SOURCE == "schedule" && $RUNNER =~ /[\S]+rhel-10.1-[^ga][\S]+/ && $RUNNER =~ "/^.*(x86_64).*$/" && $NIGHTLY == "true" && $RHEL_MAJOR == "10"' .ga_rules_all: rules: - if: '$CI_PIPELINE_SOURCE == "schedule" && $RUNNER =~ /[\S]+rhel-[\S]+-(?:(?:ga)|(?:eus))[\S]+/ && $NIGHTLY == "false"' .ga_rules_x86_64: rules: - if: '$CI_PIPELINE_SOURCE == "schedule" && $RUNNER =~ /[\S]+rhel-[\S]+-(?:(?:ga)|(?:eus))[\S]+/ && $RUNNER =~ "/^.*(x86_64).*$/" && $NIGHTLY == "false"' .RPM_RUNNERS_RHEL: &RPM_RUNNERS_RHEL RUNNER: - aws/rhel-9.7-nightly-x86_64 - aws/rhel-9.7-nightly-aarch64 - aws/rhel-10.1-nightly-x86_64 - aws/rhel-10.1-nightly-aarch64 INTERNAL_NETWORK: ["true"] RPM: stage: rpmbuild extends: .terraform rules: - !reference [.build_rules, rules] - !reference [.ga_rules_all, rules] script: - sh "schutzbot/mockbuild.sh" parallel: matrix: - RUNNER: - aws/fedora-41-x86_64 - aws/fedora-41-aarch64 - aws/fedora-42-x86_64 - aws/fedora-42-aarch64 - aws/rhel-8.10-ga-x86_64 - aws/rhel-8.10-ga-aarch64 - aws/rhel-9.5-ga-x86_64 - aws/rhel-9.5-ga-aarch64 - aws/centos-stream-9-x86_64 - aws/centos-stream-9-aarch64 - aws/centos-stream-10-x86_64 - aws/centos-stream-10-aarch64 - <<: *RPM_RUNNERS_RHEL Build -tests RPM for RHEL: stage: rpmbuild extends: .terraform rules: - !reference [.nightly_rules_all, rules] script: - sh "schutzbot/mockbuild.sh" interruptible: true after_script: - schutzbot/update_github_status.sh update - schutzbot/save_journal.sh parallel: matrix: - <<: *RPM_RUNNERS_RHEL Container: stage: rpmbuild extends: .terraform rules: - !reference [.upstream_and_ga_rules_all, rules] - !reference [.ga_rules_all, rules] script: - sh "schutzbot/containerbuild.sh" parallel: matrix: - RUNNER: - aws/rhel-8.10-ga-x86_64 Packer: stage: test extends: .terraform rules: - !reference [.upstream_and_ga_rules_all, rules] script: - tools/ci-build-worker-packer.sh variables: RUNNER: aws/rhel-9.5-ga-x86_64 Prepare-rhel-internal: stage: prepare-rhel-internal extends: .terraform rules: - !reference [.nightly_rules_all, rules] script: - schutzbot/prepare-rhel-internal.sh artifacts: paths: - rhel-${RHEL_MAJOR}.json - rhel${RHEL_MAJOR}internal.repo - COMPOSE_ID parallel: matrix: - RUNNER: # NOTE: 1 runner prepares for all arches b/c subsequent jobs download # artifacts from all previous jobs and the last one wins - aws/rhel-9.7-nightly-x86_64 - aws/rhel-10.1-nightly-x86_64 INTERNAL_NETWORK: ["true"] Base: stage: test extends: .terraform rules: - !reference [.upstream_rules_all, rules] - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/base_tests.sh parallel: matrix: - RUNNER: - aws/fedora-41-x86_64 - aws/fedora-41-aarch64 - aws/rhel-8.10-ga-x86_64 - aws/rhel-8.10-ga-aarch64 - aws/rhel-9.5-ga-x86_64 - aws/rhel-9.5-ga-aarch64 - RUNNER: - aws/rhel-9.7-nightly-x86_64 - aws/rhel-9.7-nightly-aarch64 - aws/rhel-10.1-nightly-x86_64 - aws/rhel-10.1-nightly-aarch64 - aws/centos-stream-9-x86_64 - aws/centos-stream-9-aarch64 - aws/centos-stream-10-x86_64 - aws/centos-stream-10-aarch64 INTERNAL_NETWORK: ["true"] .regression: stage: test extends: .terraform rules: - !reference [.upstream_rules_all, rules] - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/${SCRIPT} parallel: matrix: - RUNNER: - aws/fedora-41-x86_64 - aws/fedora-41-aarch64 - RUNNER: - aws/rhel-8.10-ga-x86_64 - aws/rhel-8.10-ga-aarch64 - aws/rhel-9.5-ga-x86_64 - aws/rhel-9.5-ga-aarch64 - aws/rhel-9.7-nightly-x86_64 - aws/rhel-9.7-nightly-aarch64 - aws/rhel-10.1-nightly-x86_64 - aws/rhel-10.1-nightly-aarch64 - aws/centos-stream-9-x86_64 - aws/centos-stream-9-aarch64 - aws/centos-stream-10-x86_64 - aws/centos-stream-10-aarch64 INTERNAL_NETWORK: ["true"] regression-composer-works-behind-satellite-fallback: extends: .regression rules: # WHITELIST: Run on RHEL-nightly only - if: $RUNNER =~ "/^.*(rhel-.*-nightly).*$/" && $CI_PIPELINE_SOURCE != "schedule" variables: SCRIPT: regression-composer-works-behind-satellite-fallback.sh regression-composer-works-behind-satellite: extends: .regression rules: # WHITELIST: Run on RHEL-nightly only - if: $RUNNER =~ "/^.*(rhel-.*-nightly).*$/" && $CI_PIPELINE_SOURCE != "schedule" variables: SCRIPT: regression-composer-works-behind-satellite.sh regression-excluded-dependency: extends: .regression rules: # WHITELIST & BLACKLIST: excluding GA runners from the PR pipeline - if: $RUNNER =~ "/^.*(rhel-8.*|rhel-9.*|centos-stream-*).*$/" && $CI_PIPELINE_SOURCE != "schedule" && $RUNNER !~ /[\S]+rhel-[\S]+-(?:(?:ga)|(?:eus))[\S]+/ - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] variables: SCRIPT: regression-excluded-dependency.sh regression-include-excluded-packages: extends: .regression rules: # BLACKLIST: Skipped on fedora systems & excluding GA runners from the PR pipeline - if: $RUNNER !~ "/^.*(fedora).*$/" && $CI_PIPELINE_SOURCE != "schedule" && $RUNNER !~ /[\S]+rhel-[\S]+-(?:(?:ga)|(?:eus))[\S]+/ - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] variables: SCRIPT: regression-include-excluded-packages.sh regression-old-worker-new-composer: rules: - !reference [.upstream_and_ga_rules_all, rules] - !reference [.ga_rules_all, rules] parallel: matrix: - RUNNER: - aws/rhel-8.10-ga-x86_64 - aws/rhel-9.5-ga-x86_64 INTERNAL_NETWORK: ["true"] extends: .regression variables: SCRIPT: regression-old-worker-new-composer.sh regression-insecure-repo: extends: .regression rules: # WHITELIST & BLACKLIST: excluding GA runners from the PR pipeline - if: $RUNNER =~ "/^.*(rhel-*).*$/" && $CI_PIPELINE_SOURCE != "schedule" && $RUNNER !~ /[\S]+rhel-[\S]+-(?:(?:ga)|(?:eus))[\S]+/ - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] variables: SCRIPT: regression-insecure-repo.sh regression-no-explicit-rootfs-definition: extends: .regression rules: # BLACKLIST: Skipped on fedora systems & excluding GA runners from the PR pipeline - if: $RUNNER !~ "/^.*(fedora).*$/" && $CI_PIPELINE_SOURCE != "schedule" && $RUNNER !~ /[\S]+rhel-[\S]+-(?:(?:ga)|(?:eus))[\S]+/ - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] variables: SCRIPT: regression-no-explicit-rootfs-definition.sh Image Tests: stage: test extends: .terraform rules: - !reference [.nightly_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/image_tests.sh parallel: matrix: - RUNNER: - aws/rhel-8.10-ga-x86_64 - aws/rhel-8.10-ga-aarch64 - aws/rhel-9.7-nightly-x86_64 - aws/rhel-9.7-nightly-aarch64 - aws/rhel-10.1-nightly-x86_64 - aws/rhel-10.1-nightly-aarch64 INTERNAL_NETWORK: ["true"] # NB (thozza): The rhel-edge-ci job is currently disabled because the tests have been consistently failing for a while. # The tests need to be investigated and fixed before re-enabling the job. # See https://issues.redhat.com/browse/HMS-8719 # Trigger-rhel-edge-ci: # rules: # - if: '$CI_PIPELINE_SOURCE != "schedule"' # stage: test # interruptible: true # tags: # - shell # script: # - 'curl -u "${SCHUTZBOT_LOGIN}" -X POST -H "Accept: application/vnd.github.v3+json" https://api.github.com/repos/osbuild/rhel-edge-ci/dispatches -d "{\"event_type\":\"osbuild-composer-ci\",\"client_payload\":{\"pr_number\":\"${CI_COMMIT_BRANCH}\"}}"' .integration_base: stage: test extends: .terraform rules: - !reference [.upstream_rules_all, rules] - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/${SCRIPT} .rhel_runners: &rhel_runners RUNNER: - aws/rhel-8.10-ga-x86_64 - aws/rhel-9.5-ga-x86_64 - aws/rhel-9.7-nightly-x86_64 - aws/rhel-10.1-nightly-x86_64 - aws/centos-stream-9-x86_64 - aws/centos-stream-10-x86_64 INTERNAL_NETWORK: ["true"] .integration_rhel: extends: .integration_base parallel: matrix: - *rhel_runners .fedora_runners: &fedora_runners RUNNER: - aws/fedora-41-x86_64 .integration_fedora: extends: .integration_base parallel: matrix: - *fedora_runners .integration: extends: .integration_base parallel: matrix: - *fedora_runners - *rhel_runners koji.sh (cloud upload): stage: test extends: .terraform rules: - !reference [.upstream_and_ga_rules_all, rules] - !reference [.ga_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/koji.sh cloud-upload ${CLOUD_TARGET} ${IMAGE_TYPE} parallel: matrix: - RUNNER: - aws/rhel-9.5-ga-x86_64 INTERNAL_NETWORK: ["true"] CLOUD_TARGET: aws IMAGE_TYPE: aws-rhui - RUNNER: - aws/rhel-9.5-ga-x86_64 INTERNAL_NETWORK: ["true"] CLOUD_TARGET: azure IMAGE_TYPE: azure-rhui - RUNNER: - aws/rhel-9.5-ga-x86_64 INTERNAL_NETWORK: ["true"] CLOUD_TARGET: gcp IMAGE_TYPE: gcp-rhui koji.sh (cloudapi): extends: .integration # Not supported in nightly pipelines rules: - !reference [.upstream_and_ga_rules_all, rules] - !reference [.ga_rules_all, rules] variables: SCRIPT: koji.sh parallel: matrix: - *fedora_runners - RUNNER: - aws/rhel-9.5-ga-x86_64 INTERNAL_NETWORK: ["true"] aws.sh: extends: .integration rules: - !reference [.upstream_rules_all, rules] - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] variables: SCRIPT: aws.sh oci.sh: extends: .integration rules: # Run only on x86_64 - !reference [.upstream_rules_x86_64, rules] - !reference [.ga_rules_x86_64, rules] variables: SCRIPT: oci.sh OpenShift_Virtualization: extends: .integration_rhel rules: - !reference [.nightly_rules_x86_64, rules] variables: SCRIPT: openshift_virtualization.sh parallel: matrix: - RUNNER: - aws/rhel-9.7-nightly-x86_64 - aws/rhel-10.1-nightly-x86_64 INTERNAL_NETWORK: ["true"] azure.sh: extends: .integration rules: # Run only on x86_64 - !reference [.upstream_rules_x86_64, rules] - !reference [.nightly_rules_x86_64, rules] - !reference [.ga_rules_x86_64, rules] variables: SCRIPT: azure.sh azure.sh_hyperv_gen2: extends: .integration rules: # Run only on x86_64 - !reference [.upstream_rules_x86_64, rules] - !reference [.nightly_rules_x86_64, rules] - !reference [.ga_rules_x86_64, rules] variables: SCRIPT: azure_hyperv_gen2.sh # The required GCE image type is not supported on Fedora gcp.sh: extends: .integration_rhel rules: - !reference [.upstream_rules_x86_64, rules] - !reference [.nightly_rules_x86_64, rules] - !reference [.ga_rules_x86_64, rules] variables: SCRIPT: gcp.sh # NOTE(akoutsou): The vmware tests are consistently failing. While the # build succeeds, the upload fails with: # Unable to protect host, if the host isn't running as part of an # autoscaling group, this can safely be ignored: operation error Auto # Scaling: DescribeAutoScalingInstances, get identity: get credentials: # failed to refresh cached credentials, no EC2 IMDS role found, operation # error ec2imds: GetMetadata, http response error StatusCode: 404, request # to EC2 IMDS failed # Disabling the test until we have time to look into it furhter. # vmware.sh_vmdk: # extends: .integration_rhel # rules: # # Run only on x86_64 # - !reference [.upstream_rules_x86_64, rules] # - !reference [.nightly_rules_x86_64, rules] # - !reference [.ga_rules_x86_64, rules] # variables: # SCRIPT: vmware.sh vmdk # vmware.sh_ova: # extends: .integration_rhel # rules: # # Run only on x86_64 # - !reference [.upstream_rules_x86_64, rules] # - !reference [.nightly_rules_x86_64, rules] # - !reference [.ga_rules_x86_64, rules] # variables: # SCRIPT: vmware.sh ova filesystem.sh: extends: .integration parallel: matrix: - CUSTOMIZATION_TYPE: "disk-btrfs" RUNNER: - aws/fedora-42-x86_64 - CUSTOMIZATION_TYPE: "filesystem" RUNNER: - aws/rhel-8.10-ga-x86_64 INTERNAL_NETWORK: ["true"] - CUSTOMIZATION_TYPE: "disk-plain" RUNNER: - aws/rhel-9.5-ga-x86_64 - aws/rhel-10.1-nightly-x86_64 INTERNAL_NETWORK: ["true"] - CUSTOMIZATION_TYPE: "disk-lvm" RUNNER: - aws/rhel-9.7-nightly-x86_64 INTERNAL_NETWORK: ["true"] - CUSTOMIZATION_TYPE: "disk-lvm" RUNNER: - aws/centos-stream-9-x86_64 - CUSTOMIZATION_TYPE: "filesystem" RUNNER: - aws/centos-stream-10-x86_64 variables: SCRIPT: filesystem.sh ${CUSTOMIZATION_TYPE} cross-distro.sh: extends: .integration variables: SCRIPT: cross-distro.sh .API_TESTS: &API_TESTS IMAGE_TYPE: - aws - azure - edge-commit - gcp - vsphere - edge-commit generic.s3 - edge-container - oci API: stage: test extends: .terraform rules: - !reference [.upstream_and_ga_rules_all, rules] - !reference [.ga_rules_all, rules] # note: cloud API is not supported for on-prem installations so # don't run this test case for nightly trees script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/api.sh ${IMAGE_TYPE} parallel: matrix: - <<: *API_TESTS RUNNER: - aws/rhel-8.10-ga-x86_64 - aws/rhel-9.5-ga-x86_64 - aws/rhel-9.7-nightly-x86_64 INTERNAL_NETWORK: ["true"] # el10 for now supports only a subset of image types - IMAGE_TYPE: - aws - azure - gcp - oci - vsphere RUNNER: - aws/rhel-10.1-nightly-x86_64 INTERNAL_NETWORK: ["true"] - IMAGE_TYPE: ["iot-commit"] RUNNER: - aws/fedora-41-x86_64 - IMAGE_TYPE: ["iot-bootable-container"] RUNNER: - aws/fedora-41-x86_64 - aws/fedora-41-aarch64 - IMAGE_TYPE: ["aws"] RUNNER: - aws/rhel-8.10-ga-aarch64 - aws/rhel-9.5-ga-aarch64 INTERNAL_NETWORK: ["true"] API-module-hotfixes: stage: test extends: .terraform rules: - !reference [.upstream_and_ga_rules_all, rules] - !reference [.ga_rules_all, rules] # note: cloud API is not supported for on-prem installations so # don't run this test case for nightly trees script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/api.sh "${IMAGE_TYPE}" parallel: matrix: - IMAGE_TYPE: - aws RUNNER: - aws/rhel-8.10-ga-x86_64 - aws/rhel-8.10-ga-aarch64 INTERNAL_NETWORK: ["true"] TEST_MODULE_HOTFIXES: [1] - IMAGE_TYPE: - vsphere RUNNER: - aws/rhel-8.10-ga-x86_64 INTERNAL_NETWORK: ["true"] TEST_MODULE_HOTFIXES: [1] .libvirt_integration: stage: test extends: .terraform/gcp rules: - !reference [.upstream_rules_all, rules] - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/${SCRIPT} parallel: matrix: - RUNNER: - rhos-01/fedora-42-x86_64 - RUNNER: - gcp/rhel-8.10-ga-x86_64 - gcp/rhel-9.5-ga-x86_64 - gcp/rhel-9.7-nightly-x86_64 # TODO: replace the rhos-01 runner with this gcp runner once it's available # - gcp/rhel-10.0-nightly-x86_64 - rhos-01/rhel-10.1-nightly-x86_64 - gcp/centos-stream-9-x86_64 INTERNAL_NETWORK: ["true"] libvirt.sh: extends: .libvirt_integration variables: SCRIPT: libvirt.sh ubi-wsl.sh: stage: test extends: .terraform rules: - !reference [.upstream_rules_all, rules] - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/ubi-wsl.sh parallel: matrix: - RUNNER: - aws/rhel-8.10-ga-x86_64 - aws/rhel-9.5-ga-x86_64 - aws/rhel-10.1-nightly-x86_64 INTERNAL_NETWORK: "true" weldr-distro-dot-notation+aliases: stage: test extends: .terraform rules: - !reference [.upstream_rules_all, rules] - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/weldr-distro-dot-notation-and-aliases.sh parallel: matrix: - RUNNER: - aws/rhel-8.8-ga-x86_64 - aws/rhel-9.7-nightly-x86_64 INTERNAL_NETWORK: ["true"] .generic_s3: extends: .libvirt_integration rules: # BLACKLIST - if: $RUNNER !~ "/^.*(rhel-9.7).*$/" && $CI_PIPELINE_SOURCE != "schedule" && $NIGHTLY != "true" && $RUNNER !~ /[\S]+rhel-[\S]+-(?:(?:ga)|(?:eus))[\S]+/ - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] generic_s3_http.sh: extends: .generic_s3 variables: SCRIPT: generic_s3_http.sh generic_s3_https_secure.sh: extends: .generic_s3 variables: SCRIPT: generic_s3_https_secure.sh generic_s3_https_insecure.sh: extends: .generic_s3 variables: SCRIPT: generic_s3_https_insecure.sh aws_s3.sh: extends: .generic_s3 variables: SCRIPT: aws_s3.sh RHEL 8 on 9 (Koji): stage: test extends: .terraform rules: - !reference [.upstream_and_ga_rules_all, rules] - !reference [.ga_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/koji.sh variables: RUNNER: aws/rhel-9.5-ga-x86_64 INTERNAL_NETWORK: "true" DISTRO_CODE: rhel-8.10 RHEL 10 on 9 (Koji): stage: test extends: .terraform rules: - !reference [.upstream_and_ga_rules_all, rules] - !reference [.ga_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/koji.sh variables: RUNNER: aws/rhel-9.5-ga-x86_64 INTERNAL_NETWORK: "true" DISTRO_CODE: rhel-10.1 Multi-tenancy: stage: test extends: .terraform rules: - if: '$CI_PIPELINE_SOURCE != "schedule"' script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/multi-tenancy.sh variables: RUNNER: aws/rhel-8.10-ga-x86_64 INTERNAL_NETWORK: "true" Upgrade: stage: test extends: .terraform/openstack rules: - !reference [.nightly_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/rhel-upgrade.sh parallel: matrix: - RUNNER: - rhos-01/rhel-9.7-nightly-x86_64-large - rhos-01/rhel-10.1-nightly-x86_64-large NIGHTLY_FAIL: stage: finish tags: - shell rules: - if: '$CI_PIPELINE_SOURCE == "schedule" && $NIGHTLY == "true"' when: on_failure script: - schutzbot/slack_notification.sh FAILED ":big-sad:" nightly NIGHTLY_SUCCESS: stage: finish tags: - shell rules: - if: '$CI_PIPELINE_SOURCE == "schedule" && $NIGHTLY == "true"' script: - schutzbot/slack_notification.sh SUCCESS ":partymeow:" nightly GA_FAIL: stage: finish tags: - shell rules: - if: '$CI_PIPELINE_SOURCE == "schedule" && $NIGHTLY== "false"' when: on_failure script: - schutzbot/slack_notification.sh FAILED ":big-sad:" ga GA_SUCCESS: stage: finish tags: - shell rules: - if: '$CI_PIPELINE_SOURCE == "schedule" && $NIGHTLY== "false"' script: - schutzbot/slack_notification.sh SUCCESS ":partymeow:" ga Installer: stage: test extends: .terraform/openstack rules: - !reference [.upstream_rules_all, rules] - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/installers.sh parallel: matrix: - RUNNER: - rhos-01/rhel-9.7-nightly-x86_64 - rhos-01/centos-stream-9-x86_64 # NB (thozza): The test is disabled for RHEL 10.1 due to https://issues.redhat.com/browse/RHEL-96222 # Re-enable it once kernel-6.12.0-97.el10 lands in the repositories. # See https://issues.redhat.com/browse/HMS-8718 # - rhos-01/rhel-10.1-nightly-x86_64 # - rhos-01/centos-stream-10-x86_64 ContainerUpload: stage: test extends: .terraform rules: - !reference [.upstream_rules_all, rules] - !reference [.ga_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/container-upload.sh parallel: matrix: - RUNNER: - aws/fedora-41-x86_64 ContainerEmbedding: stage: test extends: .terraform rules: - !reference [.upstream_rules_all, rules] - !reference [.nightly_rules_all, rules] - !reference [.ga_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/container-embedding.sh parallel: matrix: - INTERNAL_NETWORK: "true" RUNNER: - aws/centos-stream-9-x86_64 - aws/centos-stream-10-x86_64 - aws/rhel-9.7-nightly-x86_64 - aws/rhel-10.1-nightly-x86_64 WorkerExecutor: stage: test extends: .terraform rules: - !reference [.upstream_rules_all, rules] - !reference [.ga_rules_all, rules] script: - schutzbot/deploy.sh - /usr/libexec/tests/osbuild-composer/worker-executor.sh variables: RUNNER: aws/fedora-41-x86_64 IAM_INSTANCE_PROFILE: worker-executor finish: stage: finish dependencies: [] tags: - shell script: - schutzbot/update_github_status.sh finish