28
28
filters : |
29
29
labelbox:
30
30
- '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
31
54
build :
32
- needs : ['path-filter']
55
+ needs : ['path-filter', 'get_sdk_versions' ]
33
56
if : ${{ needs.path-filter.outputs.labelbox == 'true' }}
34
57
strategy :
35
58
fail-fast : false
@@ -38,15 +61,19 @@ jobs:
38
61
- python-version : 3.8
39
62
api-key : STAGING_LABELBOX_API_KEY_2
40
63
da-test-key : DA_GCP_LABELBOX_API_KEY
64
+ sdk-version : ${{ fromJson(needs.get_sdk_versions.outputs.sdk_versions)[3] }}
41
65
- python-version : 3.9
42
66
api-key : STAGING_LABELBOX_API_KEY_3
43
67
da-test-key : DA_GCP_LABELBOX_API_KEY
68
+ sdk-version : ${{ fromJson(needs.get_sdk_versions.outputs.sdk_versions)[2] }}
44
69
- python-version : " 3.10"
45
70
api-key : STAGING_LABELBOX_API_KEY_4
46
71
da-test-key : DA_GCP_LABELBOX_API_KEY
72
+ sdk-version : ${{ fromJson(needs.get_sdk_versions.outputs.sdk_versions)[1] }}
47
73
- python-version : 3.11
48
74
api-key : STAGING_LABELBOX_API_KEY
49
75
da-test-key : DA_GCP_LABELBOX_API_KEY
76
+ sdk-version : ${{ fromJson(needs.get_sdk_versions.outputs.sdk_versions)[0] }}
50
77
- python-version : 3.12
51
78
api-key : STAGING_LABELBOX_API_KEY_5
52
79
da-test-key : DA_GCP_LABELBOX_API_KEY
55
82
python-version : ${{ matrix.python-version }}
56
83
api-key : ${{ matrix.api-key }}
57
84
da-test-key : ${{ matrix.da-test-key }}
85
+ sdk-version : ${{ matrix.sdk-version }}
58
86
fixture-profile : true
59
87
test-env : ' staging'
60
88
secrets : inherit
0 commit comments