-
Notifications
You must be signed in to change notification settings - Fork 23
134 lines (113 loc) · 3.35 KB
/
e2e-bert.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: Bert End-to-End Tests
on:
schedule:
- cron: "0 9 * * 1"
workflow_dispatch:
push:
branches: [main]
paths:
- "benchmarks/bert/**"
- "utils/**"
- "tools/**"
- "runner/**"
pull_request:
branches: [main]
paths:
- "benchmarks/bert/**"
- "utils/**"
- "tools/**"
- "runner/**"
env:
GOOS: linux
GO111MODULE: on
PORT: 50051
PLATFORMS: linux/amd64,linux/arm64
jobs:
build-and-push:
name: Build and push all images
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
service:
[
bert-python
]
steps:
- name: Check out code into the Go module directory
uses: actions/checkout@v4
with:
lfs: "true"
- uses: actions/setup-go@v5
with:
go-version: '1.21'
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v3
- name: Install AWS CLI
uses: unfor19/install-aws-cli-action@master
with:
version: '2'
- name: Set up Python version
uses: actions/setup-python@v5
with:
python-version: "3.9"
- name: Set up python dependencies
run: |
python3 -m pip install --upgrade pip
python3 -m pip install wheel ez_setup setuptools
GRPC_PYTHON_BUILD_SYSTEM_ZLIB=true
- name: Setup go dependencies
working-directory: benchmarks/auth
env:
GOPRIVATE_KEY: ${{ secrets.XDT_REPO_ACCESS_KEY }}
run: |
go install google.golang.org/protobuf/cmd/[email protected]
go install google.golang.org/grpc/cmd/[email protected]
# - name: Data Setup
# working-directory: benchmarks/bert
# run: make setup
# - name: Build and push
# working-directory: benchmarks/bert
# run: make push-${{ matrix.service }}
# Downloading the model takes too much time, simply pull the image from docker container
# - name: Pull the Image
# working-directory: benchmarks/bert
# run: make pull-${{ matrix.service }}
test-compose:
name: Test Docker Compose
needs: build-and-push
env:
YAML_DIR: benchmarks/bert/yamls/docker-compose/
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
service:
[
bert-python
]
steps:
- name: Check out code into the Go module directory
uses: actions/checkout@v4
with:
lfs: "true"
# - name: start docker compose benchmark
# run: |
# docker compose -f ${{ env.YAML_DIR }}/dc-${{ matrix.service }}.yaml pull
# docker compose -f ${{ env.YAML_DIR }}/dc-${{ matrix.service }}.yaml up &> log_file &
# sleep 60s
# cat log_file
# - name: invoke the chain
# run: |
# ./tools/bin/grpcurl -plaintext localhost:50000 helloworld.Greeter.SayHello
# Currently cannot run on CI due to no enough space on device
# - name: show docker compose log
# run: cat log_file