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