-
Notifications
You must be signed in to change notification settings - Fork 136
90 lines (84 loc) · 2.63 KB
/
python-client.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
name: Python Client
on:
push:
branches-ignore:
- master
paths:
- 'client/python/**'
- 'build/python-client/**'
- 'pkg/api/*.proto'
- '.github/workflows/python-client.yml'
- 'docs/python_armada_client.md'
- 'scripts/build-python-client.sh'
- 'makefile'
- '.github/workflows/python-tests/*'
- './magefiles/tests.go'
- './magefiles/python.go'
pull_request:
branches-ignore:
- gh-pages
paths:
- 'client/python/**'
- 'build/python-client/**'
- 'pkg/api/*.proto'
- '.github/workflows/python-client.yml'
- 'docs/python_armada_client.md'
- 'scripts/build-python-client.sh'
- 'makefile'
- '.github/workflows/python-tests/*'
jobs:
python-client-tox:
runs-on: ubuntu-22.04
strategy:
matrix:
python: [ '3.9', '3.10', '3.11', '3.12' ]
include:
- tox-env: 'py39'
python: '3.9'
- tox-env: 'py310'
python: '3.10'
- tox-env: 'py311'
python: '3.11'
- tox-env: 'py312'
python: '3.12'
steps:
- uses: actions/checkout@v4
- name: Setup Go
uses: ./.github/actions/setup-go-cache
with:
cache-prefix: python-client-tox
- uses: ./.github/workflows/python-tests
with:
python-version: ${{ matrix.python }}
tox-env: ${{ matrix.tox-env }}
path: 'client/python'
github-token: ${{secrets.GITHUB_TOKEN}}
python-client-integration-tests:
if: github.repository_owner == 'armadaproject'
# As of December 2022, using 8vcpu runners is slower overall,
# due to longer queue times.
runs-on: ubuntu-22.04
env:
# This variable is picked up by the goreleaser config.
DOCKER_BUILDX_BUILDER: "builder"
steps:
- uses: actions/checkout@v4
- run: docker buildx create --name ${DOCKER_BUILDX_BUILDER} --driver docker-container --use
- run: docker buildx install
- name: Setup Go
uses: ./.github/actions/setup-go-cache
with:
cache-prefix: python-client-integration-tests
cache-tools: true
- name: Setup and run integration tests
run: |
# Manually create folders to ensure perms are correct.
mkdir -p .kube/internal
mkdir -p .kube/external
go run github.com/magefile/mage@v1.14.0 -v localdev minimal
- name: Install Protoc
uses: arduino/setup-protoc@v3
with:
version: '23.3'
repo-token: ${{ secrets.GITHUB_TOKEN }}
- run: go run github.com/magefile/mage@v1.14.0 -v teste2epython