From a1894a8debf08481e79d4563cca0f7241249a630 Mon Sep 17 00:00:00 2001 From: David Zager Date: Tue, 7 Nov 2023 12:27:43 -0500 Subject: [PATCH] build the bundle too Signed-off-by: David Zager --- .github/workflows/global-ci-bundle.yml | 131 +++++++++++++++++++++---- 1 file changed, 113 insertions(+), 18 deletions(-) diff --git a/.github/workflows/global-ci-bundle.yml b/.github/workflows/global-ci-bundle.yml index 36d7720..fa3a2c4 100644 --- a/.github/workflows/global-ci-bundle.yml +++ b/.github/workflows/global-ci-bundle.yml @@ -9,12 +9,40 @@ on: images stored in the artifact will be automatically loaded. type: string required: false - bundle_image: - description: | - Image URI for the Konveyor operator bundle to be used when installing Konveyor. - This image MUST be publicly accessible (ie. not in the artifact). - For example, `ttl.sh/konveyor-operator-bundle-${SHA}:1h` - type: string + operator: + description: image uri for operator (ie. quay.io//:). Must be pullable. + required: false + default: "" + oauth_proxy: + description: image uri for oauth_proxy (ie. quay.io//:) + required: false + default: "" + tackle_hub: + description: image uri for tackle-hub (ie. quay.io//:) + required: false + default: "" + tackle_postgres: + description: image uri for tackle-postgres (ie. quay.io//:) + required: false + default: "" + keycloak_sso: + description: image uri for keycloak_sso image (ie. quay.io//:) + required: false + default: "" + keycloak_init: + description: image uri for keycloak_init image (ie. quay.io//:) + required: false + default: "" + tackle_ui: + description: image uri for tackle-ui (ie. quay.io//:) + required: false + default: "" + addon_admin: + description: image uri for admin addon (ie. quay.io//:) + required: false + default: "" + addon_analyzer: + description: image uri for analyzer addon (ie. quay.io//:) required: false default: "" namespace: @@ -25,10 +53,10 @@ on: default: "" tackle_cr: description: | - Full yaml encoded string representing the Tackle resource to be created. + Full JSON encoded string representing the Tackle resource to be created. type: string required: false - default: "" + default: '{"kind":"Tackle","apiVersion":"tackle.konveyor.io/v1alpha1","metadata":{"name":"tackle"},"spec":{"image_pull_policy":"IfNotPresent","analyzer_container_memory":0,"analyzer_container_cpu":0,"feature_auth_required":false}}' run_api_tests: description: | A flag that determines whether the API tests should be run or not @@ -74,13 +102,42 @@ on: images stored in the artifact will be automatically loaded. type: string required: false - bundle_image: - description: | - Image URI for the Konveyor operator bundle to be used when installing Konveyor. - This image MUST be publicly accessible (ie. not in the artifact). - For example, `ttl.sh/konveyor-operator-bundle-${SHA}:1h` - type: string + operator: + description: image uri for operator (ie. quay.io//:). Must be pullable. + required: false + default: "" + oauth_proxy: + description: image uri for oauth_proxy (ie. quay.io//:) required: false + default: "" + tackle_hub: + description: image uri for tackle-hub (ie. quay.io//:) + required: false + default: "" + tackle_postgres: + description: image uri for tackle-postgres (ie. quay.io//:) + required: false + default: "" + keycloak_sso: + description: image uri for keycloak_sso image (ie. quay.io//:) + required: false + default: "" + keycloak_init: + description: image uri for keycloak_init image (ie. quay.io//:) + required: false + default: "" + tackle_ui: + description: image uri for tackle-ui (ie. quay.io//:) + required: false + default: "" + addon_admin: + description: image uri for admin addon (ie. quay.io//:) + required: false + default: "" + addon_analyzer: + description: image uri for analyzer addon (ie. quay.io//:) + required: false + default: "" namespace: description: | Namespace for the konveyor install. @@ -89,9 +146,10 @@ on: default: "" tackle_cr: description: | - Full yaml encoded string representing the Tackle resource to be created. + Full JSON encoded string representing the Tackle resource to be created. type: string required: false + default: '{"kind":"Tackle","apiVersion":"tackle.konveyor.io/v1alpha1","metadata":{"name":"tackle"},"spec":{"image_pull_policy":"IfNotPresent","analyzer_container_memory":0,"analyzer_container_cpu":0,"feature_auth_required":false}}' run_api_tests: description: | A flag that determines whether the API tests should be run or not @@ -130,6 +188,9 @@ on: type: string default: main +env: + operator_bundle: ttl.sh/konveyor-operator-bundle-${{ github.sha }}:2h + jobs: e2e-api-integration-tests: runs-on: ubuntu-latest @@ -177,10 +238,27 @@ jobs: docker load --input ${image} ; done + - name: make bundle + uses: djzager/tackle2-operator/.github/actions/make-bundle@main + with: + operator_bundle: ${{ env.operator_bundle }} + operator: ${{ inputs.operator }} + oauth_proxy: ${{ inputs.oauth_proxy }} + tackle_hub: ${{ inputs.tackle_hub }} + tackle_postgres: ${{ inputs.tackle_postgres }} + keycloak_sso: ${{ inputs.keycloak_sso }} + keycloak_init: ${{ inputs.keycloak_init }} + tackle_ui: ${{ inputs.tackle_ui }} + addon_admin: ${{ inputs.addon_admin }} + addon_analyzer: ${{ inputs.addon_analyzer }} + + - name: push bundle + run: docker push ${operator_bundle} + - name: install konveyor - uses: konveyor/tackle2-operator/.github/actions/install-konveyor@main + uses: djzager/tackle2-operator/.github/actions/install-konveyor@main with: - bundle_image: ${{ inputs.bundle_image }} + bundle_image: ${{ env.operator_bundle }} namespace: ${{ inputs.namespace }} tackle_cr: ${{ inputs.tackle_cr }} # end DRY @@ -253,10 +331,27 @@ jobs: docker load --input ${image} ; done + - name: make bundle + uses: konveyor/tackle2-operator/.github/actions/make-bundle@main + with: + operator_bundle: ${{ env.operator_bundle }} + operator: ${{ inputs.operator }} + oauth_proxy: ${{ inputs.oauth_proxy }} + tackle_hub: ${{ inputs.tackle_hub }} + tackle_postgres: ${{ inputs.tackle_postgres }} + keycloak_sso: ${{ inputs.keycloak_sso }} + keycloak_init: ${{ inputs.keycloak_init }} + tackle_ui: ${{ inputs.tackle_ui }} + addon_admin: ${{ inputs.addon_admin }} + addon_analyzer: ${{ inputs.addon_analyzer }} + + - name: push bundle + run: docker push ${operator_bundle} + - name: install konveyor uses: konveyor/tackle2-operator/.github/actions/install-konveyor@main with: - bundle_image: ${{ inputs.bundle_image }} + bundle_image: ${{ env.operator_bundle }} namespace: ${{ inputs.namespace }} tackle_cr: ${{ inputs.tackle_cr }} # end DRY