Skip to content

Commit

Permalink
Improve Stable image compatibility testing (#894)
Browse files Browse the repository at this point in the history
* Update CI 1.28 (#853)

* Feautre/1323 reorganize branches plat1 (#850)

* update readme title

* Update CI plat1

* Fix piwind branch select

* Updated Package Requirements: pyYaml==5.3.1

* Revert "Updated Package Requirements: pyYaml==5.3.1"

This reverts commit 094bcda.

* fix

* bump minor version for testing

---------

Co-authored-by: awsbuild <[email protected]>

* retest

---------

Co-authored-by: awsbuild <[email protected]>

* Fix to tag piwind repo on publish (#865)

* Fix to tag piwind repo on publish

Extract prev versions for latest released worker

Disable guards to test release script

Set version 2.2.1rc2

Add option to set min CVE errors

Fix

fix

Fix ktools tag and latest publish

Fix boolean

Update changelog

Update changelog

test push git tag

Update changelog

test piwind tag from remote workflow

test

Revert "test"

This reverts commit 82f8ae7.

f

finish pub script

* Revert files edited in release testing

* switch piwind tag to main branch

* Fix cryptography CVE-2023-38325 - platform 1   (#874)

* Updated Package Requirements: cryptography==41.0.2 autobahn pyopenssl

* Updated Package Requirements: certifi==2023.7.22

* retest

---------

Co-authored-by: awsbuild <[email protected]>

* revert settings compatibility to older version (#878)

* revert settings compatibility to older version

* keep both checks

* Update unittest

* Catch and report all execptions from ods-tools val (#884)

* draft actions stable image testing

* Select correct piwind branches

* Fix log storage

* fix

* Use latest piwind meta-data on older workers but skip output compare

* test stable images update

* fix

* update and retest

---------

Co-authored-by: awsbuild <[email protected]>
  • Loading branch information
sambles and awsbuild authored Sep 13, 2023
1 parent d9a1bcc commit 8c6ee84
Showing 1 changed file with 71 additions and 10 deletions.
81 changes: 71 additions & 10 deletions .github/workflows/test-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,15 +45,20 @@ jobs:
ignore_unfixed: true
cve_severity: ${{ github.event_name != 'workflow_dispatch' && 'CRITICAL,HIGH' || inputs.cve_severity }}
oasislmf_branch: ${{ github.event_name != 'workflow_dispatch' && 'main' || inputs.oasislmf_branch }}
ods_branch: ${{ github.event_name != 'workflow_dispatch' && 'main' || inputs.ods_branch }}
ods_branch: ${{ github.event_name != 'workflow_dispatch' && 'fix/compat-model-settings-post' || inputs.ods_branch }}

setup:
runs-on: ubuntu-latest
needs: [build_images]
outputs:
pytest_opts: ${{ steps.pytest.outputs.opts }}
piwind_branch: ${{ steps.piwind.outputs.branch }}

release_tag: ${{ steps.released_images.outputs.prev_release_tag }}
release_stable_15: ${{ steps.released_images.outputs.stable_15 }}
release_stable_23: ${{ steps.released_images.outputs.stable_23 }}
release_stable_27: ${{ steps.released_images.outputs.stable_27 }}

build_server_img: ${{ steps.built_images.outputs.server_img }}
build_server_tag: ${{ steps.built_images.outputs.server_tag }}
build_worker_img: ${{ steps.built_images.outputs.worker_img }}
Expand Down Expand Up @@ -83,6 +88,16 @@ jobs:
echo "prev_release_tag=${{ inputs.last_release }}" >> $GITHUB_OUTPUT
fi
# Find latest LTS from each stable branch
stable_1_15=$( ./scripts/find_latest.sh -j 1 -i 15 )
echo "stable_15=$stable_1_15" >> $GITHUB_OUTPUT
stable_1_23=$( ./scripts/find_latest.sh -j 1 -i 23 )
echo "stable_23=$stable_1_23" >> $GITHUB_OUTPUT
stable_1_27=$( ./scripts/find_latest.sh -j 1 -i 27 )
echo "stable_27=$stable_1_27" >> $GITHUB_OUTPUT
- name: Select PiWind branch
id: piwind
run: |
Expand All @@ -106,7 +121,7 @@ jobs:
id: pytest
run: |
if [[ -z "${{ inputs.pytest_options }}" ]]; then
echo "opts='-k case_1'" >> $GITHUB_OUTPUT
echo "opts='-k all_output'" >> $GITHUB_OUTPUT
else
echo "opts=${{ inputs.pytest_options }}" >> $GITHUB_OUTPUT
fi
Expand All @@ -130,8 +145,8 @@ jobs:
echo "deb_worker_img=$deb_worker_img" >> $GITHUB_OUTPUT
echo "deb_worker_tag=$deb_worker_tag" >> $GITHUB_OUTPUT
server_compatibility:
name: Server Compatibility (${{ needs.setup.outputs.release_tag }})
worker_compatibility:
name: Test last worker (${{ needs.setup.outputs.release_tag }})
secrets: inherit
needs: [setup]
uses: OasisLMF/OasisPiWind/.github/workflows/integration.yml@main
Expand All @@ -143,7 +158,53 @@ jobs:
worker_tag: ${{ needs.setup.outputs.release_tag }}
debug_mode: 1
pytest_opts: ${{ needs.setup.outputs.pytest_opts }}
storage_suffix: '-server-compatibility'
storage_suffix: "_worker-${{ needs.setup.outputs.release_tag }}"


stable_compatibility_15:
name: Test stable worker (${{ needs.setup.outputs.release_stable_15 }})
secrets: inherit
needs: [setup]
uses: OasisLMF/OasisPiWind/.github/workflows/integration.yml@main
with:
piwind_branch: 'stable/1.15.x'
server_image: ${{ needs.setup.outputs.build_server_img }}
server_tag: ${{ needs.setup.outputs.build_server_tag }}
worker_image: 'coreoasis/model_worker'
worker_tag: ${{ needs.setup.outputs.release_stable_15 }}
debug_mode: 1
pytest_opts: ${{ needs.setup.outputs.pytest_opts }}
storage_suffix: "_worker-${{ needs.setup.outputs.release_stable_15 }}"

stable_compatibility_23:
name: Test stable worker (${{ needs.setup.outputs.release_stable_23 }})
secrets: inherit
needs: [setup]
uses: OasisLMF/OasisPiWind/.github/workflows/integration.yml@main
with:
piwind_branch: 'stable/1.23.x'
server_image: ${{ needs.setup.outputs.build_server_img }}
server_tag: ${{ needs.setup.outputs.build_server_tag }}
worker_image: 'coreoasis/model_worker'
worker_tag: ${{ needs.setup.outputs.release_stable_23 }}
debug_mode: 1
pytest_opts: ${{ needs.setup.outputs.pytest_opts }}
storage_suffix: "_worker-${{ needs.setup.outputs.release_stable_23 }}"

stable_compatibility_27:
name: Test stable worker (${{ needs.setup.outputs.release_stable_27 }})
secrets: inherit
needs: [setup]
uses: OasisLMF/OasisPiWind/.github/workflows/integration.yml@main
with:
piwind_branch: 'stable/1.27.x'
server_image: ${{ needs.setup.outputs.build_server_img }}
server_tag: ${{ needs.setup.outputs.build_server_tag }}
worker_image: 'coreoasis/model_worker'
worker_tag: ${{ needs.setup.outputs.release_stable_27 }}
debug_mode: 1
pytest_opts: ${{ needs.setup.outputs.pytest_opts }}
storage_suffix: "_worker-${{ needs.setup.outputs.release_stable_27 }}"

worker_debian:
name: Worker Debian
Expand All @@ -158,10 +219,10 @@ jobs:
worker_tag: ${{ needs.setup.outputs.build_deb_worker_tag }}
debug_mode: 1
pytest_opts: ${{ needs.setup.outputs.pytest_opts }}
storage_suffix: '-worker-debian'
storage_suffix: '_worker-debian'

worker_compatibility:
name: Worker Compatibility (${{ needs.setup.outputs.release_tag }})
server_compatibility:
name: Test last Server (${{ needs.setup.outputs.release_tag }})
secrets: inherit
needs: [setup]
uses: OasisLMF/OasisPiWind/.github/workflows/integration.yml@main
Expand All @@ -173,7 +234,7 @@ jobs:
worker_tag: ${{ needs.setup.outputs.build_worker_tag }}
debug_mode: 1
pytest_opts: ${{ needs.setup.outputs.pytest_opts }}
storage_suffix: '-worker-compatibility'
storage_suffix: "_server-${{ needs.setup.outputs.release_tag }}"

storage_s3:
name: Storage Compatibility (S3)
Expand All @@ -188,4 +249,4 @@ jobs:
worker_tag: ${{ needs.setup.outputs.build_worker_tag }}
debug_mode: 1
pytest_opts: "--docker-compose=./docker/s3.docker-compose.yml ${{ needs.setup.outputs.pytest_opts }}"
storage_suffix: '-s3'
storage_suffix: '_s3'

0 comments on commit 8c6ee84

Please sign in to comment.