1
- name : integration-tests
1
+ name : main
2
2
3
3
on :
4
4
workflow_dispatch : # Allows running from actions tab
@@ -21,13 +21,13 @@ jobs:
21
21
release_version : ${{ steps.versions.outputs.release_version }}
22
22
is_prerelease_version : ${{ steps.versions.outputs.is_prerelease_version }}
23
23
steps :
24
- - uses : actions/checkout@v3
25
- with :
26
- # We need to use a different github token because GITHUB_TOKEN cannot trigger a workflow from another
27
- token : ${{secrets.BASETENBOT_GITHUB_TOKEN}}
28
- fetch-depth : 2
29
- - uses : ./.github/actions/detect-versions/
30
- id : versions
24
+ - uses : actions/checkout@v3
25
+ with :
26
+ # We need to use a different github token because GITHUB_TOKEN cannot trigger a workflow from another
27
+ token : ${{secrets.BASETENBOT_GITHUB_TOKEN}}
28
+ fetch-depth : 2
29
+ - uses : ./.github/actions/detect-versions/
30
+ id : versions
31
31
build-and-push-truss-base-images-if-needed :
32
32
needs : [detect-version-changed]
33
33
if : needs.detect-version-changed.outputs.build_base_images == 'true'
72
72
- uses : ./.github/actions/setup-python/
73
73
- run : poetry install
74
74
- run : poetry run pytest truss/tests -m 'integration' --splits 5 --group ${{ matrix.split_group }}
75
+
76
+ publish-to-pypi :
77
+ needs : [detect-version-changed]
78
+ if : ${{ !failure() && !cancelled() && needs.detect-version-changed.outputs.release_version == 'true' && needs.detect-version-changed.outputs.is_prerelease_version == 'true' }}
79
+ runs-on : ubuntu-20.04
80
+ steps :
81
+ - name : " Git tag release"
82
+ uses : actions/checkout@v3
83
+ with :
84
+ token : ${{secrets.BASETENBOT_GITHUB_TOKEN}}
85
+ - run : |
86
+ NEW_VERSION=v${{ needs.detect-version-changed.outputs.new_version }}
87
+ git config --global user.name "Github action"
88
+ git config --global user.email "github.action@baseten.co"
89
+
90
+ git tag -a $NEW_VERSION -m "Release $NEW_VERSION"
91
+ git push origin $NEW_VERSION
92
+
93
+ - uses : ./.github/actions/setup-python/
94
+
95
+ - name : Install poetry packages
96
+ run : poetry install --no-dev
97
+
98
+ - name : Build
99
+ run : poetry build
100
+
101
+ - name : Create Release
102
+ uses : ncipollo/release-action@v1.12.0
103
+ with :
104
+ artifacts : " dist/*"
105
+ token : ${{ secrets.BASETENBOT_GITHUB_TOKEN }}
106
+ draft : false
107
+ prerelease : ${{ needs.detect-version-changed.outputs.is_prerelease_version }}
108
+ generateReleaseNotes : true
109
+ makeLatest : true
110
+ skipIfReleaseExists : true
111
+ tag : " v${{ needs.detect-version-changed.outputs.new_version }}"
112
+
113
+ - name : Publish to PyPI
114
+ if : ${{ github.event_name != 'pull_request' }}
115
+ run : poetry publish -u "${{ secrets.PYPI_USERNAME }}" -p "${{ secrets.PYPI_PASSWORD }}"
0 commit comments