Skip to content

Commit 2e6a4a4

Browse files
committed
ci: fast CI
1 parent ced34be commit 2e6a4a4

1 file changed

Lines changed: 61 additions & 10 deletions

File tree

.github/workflows/test-on-push-and-pr.yml

Lines changed: 61 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -17,32 +17,83 @@ jobs:
1717

1818
alpine:
1919
runs-on: ubuntu-latest
20+
strategy:
21+
fail-fast: false
22+
matrix:
23+
distro_version: ["3.19", "3.20"]
24+
runtime_version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
2025

2126
steps:
2227
- uses: actions/checkout@v4
23-
- name: Run alpine integration tests
24-
run: DISTRO=alpine make test-integ
28+
- name: Run integration test (alpine ${{ matrix.distro_version }} / python ${{ matrix.runtime_version }})
29+
run: |
30+
docker build -t codebuild-agent - < tests/integration/codebuild-local/Dockerfile.agent
31+
CODEBUILD_IMAGE_TAG=codebuild-agent tests/integration/codebuild-local/test_one.sh \
32+
tests/integration/codebuild/buildspec.os.alpine.yml \
33+
alpine "${{ matrix.distro_version }}" "${{ matrix.runtime_version }}"
2534
26-
amazonlinux:
35+
debian:
2736
runs-on: ubuntu-latest
37+
strategy:
38+
fail-fast: false
39+
matrix:
40+
distro_version: ["bookworm", "bullseye"]
41+
runtime_version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
2842

2943
steps:
3044
- uses: actions/checkout@v4
31-
- name: Run amazonlinux integration tests
32-
run: DISTRO=amazonlinux make test-integ
45+
- name: Run integration test (debian ${{ matrix.distro_version }} / python ${{ matrix.runtime_version }})
46+
run: |
47+
docker build -t codebuild-agent - < tests/integration/codebuild-local/Dockerfile.agent
48+
CODEBUILD_IMAGE_TAG=codebuild-agent tests/integration/codebuild-local/test_one.sh \
49+
tests/integration/codebuild/buildspec.os.debian.yml \
50+
debian "${{ matrix.distro_version }}" "${{ matrix.runtime_version }}"
3351
34-
debian:
52+
amazonlinux2:
53+
runs-on: ubuntu-latest
54+
strategy:
55+
fail-fast: false
56+
matrix:
57+
runtime_version: ["3.9", "3.10", "3.11"]
58+
59+
steps:
60+
- uses: actions/checkout@v4
61+
- name: Run integration test (amazonlinux 2 / python ${{ matrix.runtime_version }})
62+
run: |
63+
docker build -t codebuild-agent - < tests/integration/codebuild-local/Dockerfile.agent
64+
CODEBUILD_IMAGE_TAG=codebuild-agent tests/integration/codebuild-local/test_one.sh \
65+
tests/integration/codebuild/buildspec.os.amazonlinux.2.yml \
66+
amazonlinux2 "2" "${{ matrix.runtime_version }}"
67+
68+
amazonlinux2023:
3569
runs-on: ubuntu-latest
70+
strategy:
71+
fail-fast: false
72+
matrix:
73+
runtime_version: ["3.12", "3.13"]
3674

3775
steps:
3876
- uses: actions/checkout@v4
39-
- name: Run debian integration tests
40-
run: DISTRO=debian make test-integ
77+
- name: Run integration test (amazonlinux 2023 / python ${{ matrix.runtime_version }})
78+
run: |
79+
docker build -t codebuild-agent - < tests/integration/codebuild-local/Dockerfile.agent
80+
CODEBUILD_IMAGE_TAG=codebuild-agent tests/integration/codebuild-local/test_one.sh \
81+
tests/integration/codebuild/buildspec.os.amazonlinux.2023.yml \
82+
amazonlinux2023 "2023" "${{ matrix.runtime_version }}"
4183
4284
ubuntu:
4385
runs-on: ubuntu-latest
86+
strategy:
87+
fail-fast: false
88+
matrix:
89+
distro_version: ["22.04", "24.04"]
90+
runtime_version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
4491

4592
steps:
4693
- uses: actions/checkout@v4
47-
- name: Run ubuntu integration tests
48-
run: DISTRO=ubuntu make test-integ
94+
- name: Run integration test (ubuntu ${{ matrix.distro_version }} / python ${{ matrix.runtime_version }})
95+
run: |
96+
docker build -t codebuild-agent - < tests/integration/codebuild-local/Dockerfile.agent
97+
CODEBUILD_IMAGE_TAG=codebuild-agent tests/integration/codebuild-local/test_one.sh \
98+
tests/integration/codebuild/buildspec.os.ubuntu.yml \
99+
ubuntu "${{ matrix.distro_version }}" "${{ matrix.runtime_version }}"

0 commit comments

Comments
 (0)