2828 filters : |
2929 labelbox:
3030 - 'libs/labelbox/**'
31+ get_sdk_versions :
32+ runs-on : ubuntu-latest
33+ outputs :
34+ sdk_versions : ${{ steps.get_sdk_versions.outputs.sdk_versions }}
35+ steps :
36+ - name : Checkout repository
37+ uses : actions/checkout@v2
38+ with :
39+ ref : ${{ github.event.repository.default_branch }}
40+
41+ - name : Fetch tags
42+ run : git fetch --tags
43+
44+ - name : Get Latest SDK versions
45+ id : get_sdk_versions
46+ run : |
47+ sdk_versions=$(git tag --list --sort=-version:refname "v.*" | head -n 4 | jq -R -s -c 'split("\n")[:-1]')
48+ if [ -z "$sdk_versions" ]; then
49+ echo "No tags found"
50+ exit 1
51+ fi
52+ echo "sdk_versions=$sdk_versions"
53+ echo "sdk_versions=$sdk_versions" >> $GITHUB_OUTPUT
3154 build :
32- needs : ['path-filter']
55+ needs : ['path-filter', 'get_sdk_versions' ]
3356 if : ${{ needs.path-filter.outputs.labelbox == 'true' }}
3457 strategy :
3558 fail-fast : false
@@ -38,15 +61,19 @@ jobs:
3861 - python-version : 3.8
3962 api-key : STAGING_LABELBOX_API_KEY_2
4063 da-test-key : DA_GCP_LABELBOX_API_KEY
64+ sdk-version : ${{ fromJson(needs.get_sdk_versions.outputs.sdk_versions)[3] }}
4165 - python-version : 3.9
4266 api-key : STAGING_LABELBOX_API_KEY_3
4367 da-test-key : DA_GCP_LABELBOX_API_KEY
68+ sdk-version : ${{ fromJson(needs.get_sdk_versions.outputs.sdk_versions)[2] }}
4469 - python-version : " 3.10"
4570 api-key : STAGING_LABELBOX_API_KEY_4
4671 da-test-key : DA_GCP_LABELBOX_API_KEY
72+ sdk-version : ${{ fromJson(needs.get_sdk_versions.outputs.sdk_versions)[1] }}
4773 - python-version : 3.11
4874 api-key : STAGING_LABELBOX_API_KEY
4975 da-test-key : DA_GCP_LABELBOX_API_KEY
76+ sdk-version : ${{ fromJson(needs.get_sdk_versions.outputs.sdk_versions)[0] }}
5077 - python-version : 3.12
5178 api-key : STAGING_LABELBOX_API_KEY_5
5279 da-test-key : DA_GCP_LABELBOX_API_KEY
5582 python-version : ${{ matrix.python-version }}
5683 api-key : ${{ matrix.api-key }}
5784 da-test-key : ${{ matrix.da-test-key }}
85+ sdk-version : ${{ matrix.sdk-version }}
5886 fixture-profile : true
5987 test-env : ' staging'
6088 secrets : inherit
0 commit comments