-
Notifications
You must be signed in to change notification settings - Fork 0
80 lines (72 loc) · 3.05 KB
/
Copy pathdocker-test.yml
File metadata and controls
80 lines (72 loc) · 3.05 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
name: Docker Image CI and Test
on:
push:
branches: [ docker-test ]
pull_request:
branches: [ master ]
env:
CINC2023_REVENGER_TEST: 1
# revenger_data_dir: ${{ github.workspace }}/training_data
# revenger_model_dir: ${{ github.workspace }}/models
# revenger_test_dir: ${{ github.workspace }}/test
# revenger_output_dir: ${{ github.workspace }}/output
download_data_dir: ${{ github.workspace }}/download_data
revenger_data_dir: /challenge/training_data
revenger_model_dir: /challenge/models
revenger_test_dir: /challenge/test
revenger_output_dir: /challenge/output
docker_main_filename: Dockerfile.torch2
# docker_test_filename: Dockerfile
jobs:
build:
if: contains(fromJson('["wenh06", "kjs11", "DeepPSP"]'), github.repository_owner)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
with:
submodules: recursive
- name: Clear unnecessary system components
run: |
echo "Free space before cleanup:"
df -h
sudo rm -rf /usr/local/lib/android # will release about 10 GB if you don't need Android
sudo rm -rf /usr/share/dotnet # will release about 20GB if you don't need .NET
sudo rm -rf /opt/ghc
sudo rm -rf /usr/local/share/boost
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
echo "Free space after cleanup:"
df -h
- name: Build the Docker image
run: docker build . --file ${{ env.docker_main_filename }} --tag deeppsp-cinc2023-docker-image:latest
- name: Download the training_subset data
# this step is done before running the test of challenge entry
# in the Docker image in the next step since the data directory
# is mounted as read-only in the challenge settings
run: |
mkdir -p ${{ env.download_data_dir }}
docker run \
-e PYTHONUNBUFFERED=1 \
-e CINC2023_REVENGER_TEST=${{ env.CINC2023_REVENGER_TEST }} \
-e revenger_data_dir=${{ env.revenger_data_dir }} \
-v ${{ env.download_data_dir }}:${{ env.revenger_data_dir }} \
deeppsp-cinc2023-docker-image:latest \
bash -c "python data_reader.py download --db-dir ${{ env.revenger_data_dir }}"
docker ps -a
docker stop $(docker ps -a -q)
- name: Run the Docker image
# NOTE: mount env.download_data_dir to env.revenger_data_dir
# and set it read-only as in the CinC2023 challenge settings
if: ${{ env.docker_main_filename == 'Dockerfile.torch2' }}
run: |
docker run \
-e PYTHONUNBUFFERED=1 \
-e CINC2023_REVENGER_TEST=${{ env.CINC2023_REVENGER_TEST }} \
-e revenger_data_dir=${{ env.revenger_data_dir }} \
-e revenger_model_dir=${{ env.revenger_model_dir }} \
-e revenger_test_dir=${{ env.revenger_test_dir }} \
-e revenger_output_dir=${{ env.revenger_output_dir }} \
-v ${{ env.download_data_dir }}:${{ env.revenger_data_dir }}:ro \
deeppsp-cinc2023-docker-image:latest \
bash -c "bash test_run_challenge.sh"
docker ps -a
docker stop $(docker ps -a -q)