1616 type : boolean
1717 required : true
1818 default : false
19+ description : Go integration tests
1920
2021env :
2122 BUILD_INCREMENT : 150
22- PIP_DISABLE_PIP_VERSION_CHECK : on
23- PIP_DEFAULT_TIMEOUT : 10
24- PIP_PROGRESS_BAR : off
2523
2624jobs :
2725 compute-version :
@@ -39,62 +37,28 @@ jobs:
3937 with :
4038 version : ${{ needs.compute-version.outputs.version }}
4139 staging : true
42- go-integration-tests : ${{ github.event_name == 'workflow_dispatch' && inputs.go-integration-tests || true }}
43-
44- upload-artifacts :
40+ go-integration-tests : ${{ github.event_name == 'workflow_dispatch' && inputs.go-integration-tests || github.event_name == 'push' }}
41+
42+ upload-pre-pypi- artifacts :
4543 needs : [compute-version, build-artifacts]
46- # Skip for PRs from forks, where AWS credentials are not available
44+ # Skip for PRs from forks, where AWS S3 credentials are not available
4745 if : github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository
48- runs-on : ubuntu-latest
49- env :
50- AWS_ACCESS_KEY_ID : ${{ secrets.AWS_ACCESS_KEY_ID }}
51- AWS_SECRET_ACCESS_KEY : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
52- steps :
53- - uses : astral-sh/setup-uv@v5
54- with :
55- python-version : 3.11
56- - name : Install AWS
57- run : uv tool install awscli
58- - name : Download dstack-gateway
59- uses : actions/download-artifact@v4
60- with :
61- name : dstack-gateway
62- path : gateway
63- - name : Upload dstack-gateway to S3
64- working-directory : gateway
65- run : |
66- pwd
67- ls -a
68- ls -a ..
69- WHEEL=dstack_gateway-${{ needs.compute-version.outputs.version }}-py3-none-any.whl
70- aws s3 cp $WHEEL "s3://dstack-gateway-downloads/stgn/$WHEEL"
71- echo "${{ needs.compute-version.outputs.version }}" | aws s3 cp - "s3://dstack-gateway-downloads/stgn/latest-version"
72- - name : Download dstack-runner
73- uses : actions/download-artifact@v4
74- with :
75- pattern : dstack-runner-*
76- merge-multiple : true
77- path : runner
78- - name : Upload dstack-runner to S3
79- working-directory : runner
80- run : |
81- aws s3 cp . "s3://dstack-runner-downloads-stgn/${{ needs.compute-version.outputs.version }}/binaries/" --recursive --exclude "*" --include "dstack-*" --acl public-read
82- aws s3 cp . "s3://dstack-runner-downloads-stgn/latest/binaries/" --recursive --exclude "*" --include "dstack-*" --acl public-read
83- - name : Download JSON schemas
84- uses : actions/download-artifact@v4
85- with :
86- name : json-schemas
87- path : json-schemas
88- - name : Upload JSON schemas to S3
89- working-directory : json-schemas
90- run : |
91- aws s3 cp configuration.json "s3://dstack-runner-downloads-stgn/${{ needs.compute-version.outputs.version }}/schemas/configuration.json" --acl public-read
92- aws s3 cp configuration.json "s3://dstack-runner-downloads-stgn/latest/schemas/configuration.json" --acl public-read
93- aws s3 cp profiles.json "s3://dstack-runner-downloads-stgn/${{ needs.compute-version.outputs.version }}/schemas/profiles.json" --acl public-read
94- aws s3 cp profiles.json "s3://dstack-runner-downloads-stgn/latest/schemas/profiles.json" --acl public-read
95- - name : Set latest version in S3
96- run : |
97- echo ${{ needs.compute-version.outputs.version }} | aws s3 cp - s3://get-dstack/stgn-cli/latest-version --acl public-read
46+ uses : ./.github/workflows/upload-pre-pypi-artifacts.yml
47+ with :
48+ version : ${{ needs.compute-version.outputs.version }}
49+ staging : true
50+ secrets : inherit
51+
52+ upload-post-pypi-artifacts :
53+ needs : [compute-version, build-artifacts]
54+ # Skip for PRs from forks, where AWS S3 credentials are not available
55+ if : github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository
56+ uses : ./.github/workflows/upload-post-pypi-artifacts.yml
57+ with :
58+ version : ${{ needs.compute-version.outputs.version }}
59+ is-latest-version : true
60+ staging : true
61+ secrets : inherit
9862
9963 docs-build :
10064 # Skip for PRs from forks since mkdocs-material-insiders is not available in forks
0 commit comments