-
Notifications
You must be signed in to change notification settings - Fork 1
134 lines (117 loc) · 3.62 KB
/
zdx-test.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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
name: ZDX Test
on:
pull_request:
types: [opened, synchronize]
merge_group:
types: [checks_requested]
push:
branches:
- master
# For systems with an upstream API that could drift unexpectedly (like most SaaS systems, etc.),
# we recommend testing at a regular interval not necessarily tied to code changes. This will
# ensure you are alerted to something breaking due to an API change, even if the code did not
# change.
schedule:
- cron: '0 11 * * 1-5' # UTC
workflow_dispatch:
jobs:
# zdx-zsbeta-tests:
# environment: ZDX_BETA
# runs-on: ubuntu-latest
# strategy:
# fail-fast: false
# matrix:
# goVersion: ["1.22"]
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
# with:
# token: ${{ secrets.GITHUB_TOKEN }}
# - name: Setup Go
# uses: actions/setup-go@v5
# with:
# go-version: ${{ matrix.goVersion }}
# - name: Clean existing Go modules
# run: go clean -modcache
# - name: Cache Go modules
# uses: actions/cache@v4
# with:
# path: |
# ~/go/pkg/mod
# ~/.cache/go-build
# key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
# restore-keys: |
# ${{ runner.os }}-go-
# - name: Set Go env
# run: |
# echo "GOPATH=$(go env GOPATH)" >> $GITHUB_ENV
# echo "$(go env GOPATH)/bin" >> $GITHUB_PATH
# - name: Install dependencies
# run: go mod download
# - name: Run tests with retry on Ubuntu
# uses: nick-fields/retry@v2
# with:
# max_attempts: 3
# timeout_minutes: 20 # Adjust as needed
# command: |
# make test:integration:zdx
# env:
# ZDX_API_KEY_ID: ${{ secrets.ZDX_API_KEY_ID }}
# ZDX_API_SECRET: ${{ secrets.ZDX_API_SECRET }}
# - name: Publish test coverage
# uses: codecov/codecov-action@v4
# with:
# token: ${{ secrets.CODECOV_TOKEN }}
# file: ./coverage.out
# fail_ci_if_error: true
zdx-test-tenants:
runs-on: ubuntu-latest
# needs: [zdx-zsbeta-tests]
strategy:
fail-fast: false
matrix:
goVersion: ["1.22"]
environment:
# - ZDX_ZS1
# - ZDX_ZSCLOUD
# - ZDX_ZS2
- ZDX_ZS3
environment: ${{ matrix.environment }}
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
- name: Clean existing Go modules
run: go clean -modcache
- name: Cache Go modules
uses: actions/cache@v4
with:
path: |
~/go/pkg/mod
~/.cache/go-build
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: Set Go env
run: |
echo "GOPATH=$(go env GOPATH)" >> $GITHUB_ENV
echo "$(go env GOPATH)/bin" >> $GITHUB_PATH
- name: Install dependencies
run: go mod download
- name: Run tests with retry on Ubuntu
uses: nick-fields/retry@v2
with:
max_attempts: 3
timeout_minutes: 45 # Adjust as needed
command: |
make test:integration:zdx
env:
ZDX_API_KEY_ID: ${{ secrets.ZDX_API_KEY_ID }}
ZDX_API_SECRET: ${{ secrets.ZDX_API_SECRET }}
- name: Publish test coverage
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
file: ./coverage.out
fail_ci_if_error: true