-
Notifications
You must be signed in to change notification settings - Fork 4
94 lines (79 loc) · 2.81 KB
/
develop.yml
File metadata and controls
94 lines (79 loc) · 2.81 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
name: develop
on:
push:
branches:
- develop
# Newer pushes to develop supersede older in-flight runs. The post-test
# publish job (build_and_deploy_docs) only matters for the latest commit, so
# cancelling stale runs avoids wasting an hour of CI for code that is already
# obsolete.
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build-test:
runs-on:
- benchmark
steps:
- uses: actions/checkout@v3
- name: Login to DockerHub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USER }}
password: ${{ secrets.DOCKER_PASS }}
- name: Authenticate to Google Cloud
uses: google-github-actions/auth@v2
with:
credentials_json: ${{ secrets.GCP_SERVICE_ACCOUNT_KEY }}
project_id: ${{ secrets.GCP_SERVICE_ACCOUNT_PROJECT_ID }}
- name: Set up Cloud SDK
uses: google-github-actions/setup-gcloud@v2
- name: Build and Run Tests
env:
# Run both protocols inside a single job. run_test_container.sh starts
# the http and non_http stacks in parallel, so wall-clock time is
# roughly max(http, non_http) instead of the previous matrix approach
# which duplicated every docker image build (notebook deps / notebook
# / tests / coverage) on a second runner.
TEST_PROTOCOL: both
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_DEFAULT_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
GCP_SERVICE_ACCOUNT_KEY: ${{ secrets.GCP_SERVICE_ACCOUNT_KEY }}
RUNNER_NAME: ${{ runner.name }}_develop
# BuildKit + inline cache so subsequent runs actually reuse layers
# pulled via --cache-from in ci.sh.
DOCKER_BUILDKIT: 1
COMPOSE_DOCKER_CLI_BUILD: 1
ADB_REPO: aperturedata/aperturedb
ADB_TAG: dev
LENZ_REPO: aperturedata/lenz
LENZ_TAG: dev
run: RUN_TESTS=true ./ci.sh
shell: bash
build_and_deploy_docs:
needs:
- build-test
runs-on:
- benchmark
steps:
- uses: actions/checkout@v3
- name: Login to DockerHub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USER }}
password: ${{ secrets.DOCKER_PASS }}
- name: Build Notebook,docs Docker
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_DEFAULT_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
RUNNER_NAME: ${{ runner.name }}
DOCKER_BUILDKIT: 1
COMPOSE_DOCKER_CLI_BUILD: 1
ADB_REPO: aperturedata/aperturedb
ADB_TAG: dev
LENZ_REPO: aperturedata/lenz
LENZ_TAG: dev
run: BUILD_COMPLETE=true ./ci.sh
shell: bash