4545 with :
4646 repo : ${{ github.repository }}
4747 ref : ${{ github.ref }}
48-
48+
4949 provider-tests :
5050 needs : [detect-changes, build-images]
5151 runs-on : ubuntu-latest
@@ -56,48 +56,49 @@ jobs:
5656 matrix :
5757 include :
5858 - provider : java
59- artifact_pattern : " {konveyor- analyzer-lsp,java-provider}"
59+ artifact_pattern : " *{ analyzer-lsp,java-external -provider}"
6060 test-data : external-providers/java-external-provider/examples
61- image_name : java-provider
61+ image_env : IMG_JAVA_PROVIDER
6262 demo-output-path : external-providers/java-external-provider/e2e-tests/demo-output.yaml
6363 provider_settings-path : external-providers/java-external-provider/e2e-tests/provider_settings.json
6464 testing-rules : external-providers/java-external-provider/e2e-tests/rule-example.yaml
6565 # Generic golang
6666 - provider : generic
67- artifact_pattern : " {konveyor- analyzer-lsp,generic-provider,golang-dep -provider}"
67+ artifact_pattern : " *{ analyzer-lsp,generic-external -provider}"
6868 test-data : examples
69- image_name : generic-provider
69+ image_env : IMG_GENERIC_PROVIDER
7070 demo-output-path : external-providers/generic-external-provider/e2e-tests/golang-e2e/demo-output.yaml
7171 provider_settings-path : external-providers/generic-external-provider/e2e-tests/golang-e2e/provider_settings.json
7272 testing-rules : external-providers/generic-external-provider/e2e-tests/golang-e2e/rule-example.yaml
7373 # Generic python
7474 - provider : generic
75- artifact_pattern : " {konveyor- analyzer-lsp,generic-provider}"
75+ artifact_pattern : " *{ analyzer-lsp,generic-external -provider}"
7676 test-data : examples
77- image_name : generic-provider
77+ image_env : IMG_GENERIC_PROVIDER
7878 demo-output-path : external-providers/generic-external-provider/e2e-tests/python-e2e/demo-output.yaml
7979 provider_settings-path : external-providers/generic-external-provider/e2e-tests/python-e2e/provider_settings.json
8080 testing-rules : external-providers/generic-external-provider/e2e-tests/python-e2e/rule-example.yaml
8181 # Generic nodejs
8282 - provider : generic
83- artifact_pattern : " {konveyor- analyzer-lsp,generic-provider}"
83+ artifact_pattern : " *{ analyzer-lsp,generic-external -provider}"
8484 test-data : examples
85- image_name : generic-provider
85+ image_env : IMG_GENERIC_PROVIDER
8686 demo-output-path : external-providers/generic-external-provider/e2e-tests/nodejs-e2e/demo-output.yaml
8787 provider_settings-path : external-providers/generic-external-provider/e2e-tests/nodejs-e2e/provider_settings.json
8888 testing-rules : external-providers/generic-external-provider/e2e-tests/nodejs-e2e/rule-example.yaml
8989 - provider : yq
90- artifact_pattern : " {konveyor- analyzer-lsp,yq-provider}"
90+ artifact_pattern : " *{ analyzer-lsp,yq-external -provider}"
9191 test-data : examples
92- image_name : yq-provider
92+ image_env : IMG_YQ_PROVIDER
9393 demo-output-path : external-providers/yq-external-provider/e2e-tests/demo-output.yaml
9494 provider_settings-path : external-providers/yq-external-provider/e2e-tests/provider_settings.json
9595 testing-rules : external-providers/yq-external-provider/e2e-tests/rule-example.yaml
9696 - provider : c-sharp
9797 repo : " konveyor/c-sharp-analyzer-provider"
98- artifact_pattern : " {konveyor-analyzer-lsp,c-sharp-provider}"
98+ artifact_pattern : " *{analyzer-lsp}"
99+ nightly_pattern : " *{c-sharp-provider}"
99100 test-data : testdata
100- image_name : c-sharp-provider
101+ image_env : IMG_C_SHARP_PROVIDER
101102 demo-output-path : e2e-tests/demo-output.yaml
102103 provider_settings-path : e2e-tests/provider_settings.json
103104 testing-rules : rulesets
@@ -114,13 +115,50 @@ jobs:
114115 pattern : ${{ format('{0}--{1}', matrix.artifact_pattern, github.run_id) }}
115116 path : /tmp/images
116117 merge-multiple : true
118+
119+ - name : Get nightly if needed
120+ if : needs.detect-changes.outputs[matrix.provider] == 'true' && matrix.nightly_pattern != ''
121+ env :
122+ GH_TOKEN : ${{ github.token }}
123+ shell : bash
124+ run : |
125+ WORKFLOW_RUN=$(gh run list -R=konveyor/ci --workflow=nightly-koncur.yaml --branch=main --status=success --limit=1 --json databaseId --jq '.[0].databaseId')
126+ gh run download -R=konveyor/ci "$WORKFLOW_RUN" --pattern "${{ matrix.nightly_pattern }}--*_20[0-9][0-9].[0-9][0-9].[0-9][0-9]" --dir /tmp/images" 2>&1 |
117127
118128 - name : Load images into podman
119129 if : needs.detect-changes.outputs[matrix.provider] == 'true'
120130 run : |
131+ java_provider_image_regex=".*java(-external)?-provider.*"
132+ generic_provider_image_regex=".*generic(-external)?-provider.*"
133+ yq_provider_image_regex=".*yq-external-provider.*
134+ analyzer_regex=".*analyzer-lsp.*"
135+ c_sharp_provider_image_regex = ".*c-sharp-provider.*"
136+
121137 for image in $(find /tmp/images -type f -name "*.tar"); do
122138 echo "Loading image: ${image}"
123- podman load -i "${image}"
139+ image=${podman load -i "${image}" | awk '{print $NF}')
140+
141+ if [[ "$image" =~ $java_provider_image_regex ]]; then
142+ echo "Java Provider Image Found Set Env Var: JAVA_PROVIDER_IMG=$image"
143+ echo "IMG_JAVA_PROVIDER=$image" >> $GITHUB_ENV
144+ fi
145+ if [[ "$image" =~ $c_sharp_provider_image_regex ]]; then
146+ echo "Java Provider Image Found Set Env Var: IMG_C_SHARP_PROVIDER=$image"
147+ echo "IMG_C_SHARP_PROVIDER=$image" >> $GITHUB_ENV
148+ fi
149+ if [[ "$image" =~ $analyzer_regex ]]; then
150+ echo "Analyzer image Found Set Env Var: IMG_ANALYZER=$image"
151+ echo "IMG_ANALYZER=$image" >> $GITHUB_ENV
152+ fi
153+
154+ if [[ "$image" =~ $generic_provider_image_regex ]]; then
155+ echo "Generic Provider Image Found Set Env Var: GENERIC_PROVIDER_IMG=$image"
156+ echo "IMG_GENERIC_PROVIDER=$image" >> $GITHUB_ENV
157+ fi
158+ if [[ "$image" =~ $yq_provider_image_regex ]]; then
159+ echo "Generic Provider Image Found Set Env Var: IMG_YQ_PROVIDER=$image"
160+ echo "IMG_GENERIC_PROVIDER=$image" >> $GITHUB_ENV
161+ fi
124162 done
125163 echo "Loaded images:"
126164 podman images
@@ -132,7 +170,7 @@ jobs:
132170 podman volume create test-data
133171 podman run --rm -v test-data:/target:U,Z -v $(pwd)/${{ matrix.test-data }}:/src/:U,Z --entrypoint=cp alpine -a /src/. /target/
134172 podman pod create --name=analyzer-${{ matrix.provider }}
135- podman run --pod analyzer-${{ matrix.provider }} --name ${{ matrix.provider }}-provider -d -v test-data:/analyzer-lsp/examples:U,Z localhost/ ${{ matrix.image_name }}:${{ github.run_id }} --port 14651
173+ podman run --pod analyzer-${{ matrix.provider }} --name ${{ matrix.provider }}-provider -d -v test-data:/analyzer-lsp/examples:U,Z ${{ matrix.image_env }}:${{ github.run_id }} --port 14651
136174 podman run --entrypoint /usr/local/bin/konveyor-analyzer --pod=analyzer-${{ matrix.provider }} \
137175 -v test-data:/analyzer-lsp/examples:U,Z \
138176 -v $(pwd)/${{ matrix.demo-output-path }}:/analyzer-lsp/output.yaml:U,Z \
0 commit comments