-
-
Notifications
You must be signed in to change notification settings - Fork 2k
113 lines (102 loc) · 4.29 KB
/
Copy pathtest.yml
File metadata and controls
113 lines (102 loc) · 4.29 KB
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
name: Test
on:
# Run CI on all pushes to the master and release/** branches, and on all new
# pull requests, and on all pushes to pull requests (even if a pull request
# is not against master).
push:
branches:
- "master"
- "release/**"
pull_request:
schedule:
# Timezone is UTC by default
- cron: "0 0,6,12,18 * * 1-5" # weekdays
- cron: "0 0,12 * * 6,0" # weekends
concurrency:
group: ${{ github.ref_name || github.sha }}
cancel-in-progress: true
permissions:
contents: read
defaults:
run:
shell: bash
jobs:
unit-test:
if: github.repository_owner == 'getsentry'
runs-on: ${{ matrix.os }}
timeout-minutes: 30
strategy:
matrix:
os: [ubuntu-24.04, ubuntu-24.04-arm]
name: ${{ matrix.os == 'ubuntu-24.04-arm' && 'unit tests (arm64)' || 'unit tests' }}
steps:
- name: Checkout
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- name: Unit Tests
run: ./unit-test.sh
integration-test:
if: github.repository_owner == 'getsentry'
runs-on: ${{ matrix.os }}
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
os: [ubuntu-24.04]
container_engine: ['docker'] # TODO: add 'podman' into the list
compose_profiles: ['feature-complete']
name: ${{ format('integration test{0}{1}{2}', matrix.os == 'ubuntu-24.04-arm' && ' (arm64)' || '', matrix.container_engine == 'podman' && ' (podman)' || '', matrix.compose_profiles == 'errors-only' && ' (errors-only)' || '') }}
env:
REPORT_SELF_HOSTED_ISSUES: 0
SELF_HOSTED_TESTING_DSN: ${{ vars.SELF_HOSTED_TESTING_DSN }}
CONTAINER_ENGINE_PODMAN: ${{ matrix.container_engine == 'podman' && '1' || '0' }}
steps:
- name: Checkout
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- name: Install Podman
if: matrix.container_engine == 'podman'
run: |
sudo apt-get update
sudo apt-get install -y --no-install-recommends podman
# TODO: Replace below with podman-compose
# We need this commit to be able to work: https://github.com/containers/podman-compose/commit/8206cc3ea277eee6c2e87d4cd66eba8eae3d44eb
pip3 install --user https://github.com/containers/podman-compose/archive/main.tar.gz
echo "PODMAN_COMPOSE_PROVIDER=podman-compose" >> $GITHUB_ENV
echo "PODMAN_COMPOSE_WARNING_LOGS=false" >> $GITHUB_ENV
- name: Use action from local checkout
uses: './'
with:
compose_profiles: ${{ matrix.compose_profiles }}
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
integration-test-errors-only:
if: github.repository_owner == 'getsentry'
runs-on: ${{ matrix.os }}
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
os: [ubuntu-24.04, ubuntu-24.04-arm]
container_engine: ['docker'] # TODO: add 'podman' into the list
compose_profiles: ['errors-only']
name: ${{ format('integration test{0}{1}{2}', matrix.os == 'ubuntu-24.04-arm' && ' (arm64)' || '', matrix.container_engine == 'podman' && ' (podman)' || '', matrix.compose_profiles == 'errors-only' && ' (errors-only)' || '') }}
env:
REPORT_SELF_HOSTED_ISSUES: 0
SELF_HOSTED_TESTING_DSN: ${{ vars.SELF_HOSTED_TESTING_DSN }}
CONTAINER_ENGINE_PODMAN: ${{ matrix.container_engine == 'podman' && '1' || '0' }}
steps:
- name: Checkout
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- name: Install Podman
if: matrix.container_engine == 'podman'
run: |
sudo apt-get update
sudo apt-get install -y --no-install-recommends podman
# TODO: Replace below with podman-compose
# We need this commit to be able to work: https://github.com/containers/podman-compose/commit/8206cc3ea277eee6c2e87d4cd66eba8eae3d44eb
pip3 install --user https://github.com/containers/podman-compose/archive/main.tar.gz
echo "PODMAN_COMPOSE_PROVIDER=podman-compose" >> $GITHUB_ENV
echo "PODMAN_COMPOSE_WARNING_LOGS=false" >> $GITHUB_ENV
- name: Use action from local checkout
uses: './'
with:
compose_profiles: ${{ matrix.compose_profiles }}
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}