-
Notifications
You must be signed in to change notification settings - Fork 32
50 lines (46 loc) · 2.82 KB
/
test-crab-docker.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
# workflow to build and test crab
name: CI
# Controls when the action will run.
on:
# Triggers the workflow on push or pull request events but only for the master branch
push:
branches: master
pull_request:
branches: master
schedule:
- cron: 0 0 * * * # run every day at UTC 00:00
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "test"
test:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Check out Repo
uses: actions/checkout@v2
with:
ref: master # only checkout master
- name: Build crab without external libraries + run tests
run: docker build --build-arg BRANCH=master --build-arg UBUNTU=bionic --build-arg BUILD_TYPE=Release -t seahorn/crab:bionic -f docker/crab.Dockerfile .
#- name: Build crab without external libraries + run tests
# run: docker build --build-arg BRANCH=master --build-arg UBUNTU=bionic --build-arg BUILD_TYPE=Coverage -t seahorn/crab:bionic -f docker/crab.Dockerfile .
#- name: Generate coverage report and upload to codecov
# run: docker run -v $(pwd):/host -it seahorn/crab:bionic /bin/sh -c "bash /crab/tests/run_coverage.sh /crab/build /crab && mv /crab/build/all.info /host" && bash <(curl -s https://codecov.io/bash) -Z -f all.info -t ${{ secrets.CODECOV_TOKEN }}
- name: Build crab+apron+ldd-boxes and run tests
run: docker build --build-arg BRANCH=master --build-arg UBUNTU=bionic --build-arg BUILD_TYPE=Release -t seahorn/crab_apron_boxes:bionic -f docker/crab.apron.Dockerfile .
- name: Build crab+elina and run tests
run: docker build --build-arg BRANCH=master --build-arg UBUNTU=bionic --build-arg BUILD_TYPE=Release -t seahorn/crab_elina:bionic -f docker/crab.elina.Dockerfile .
#- name: Build crab+pplite and run tests
# run: docker build --build-arg BRANCH=master --build-arg UBUNTU=bionic --build-arg BUILD_TYPE=Release -t seahorn/crab_pplite:bionic -f docker/crab.pplite.Dockerfile .
- name: Login to DockerHub Registry
if: ${{ github.event_name == 'schedule' }} # only push if nightly run
run: echo ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | docker login -u ${{ secrets.DOCKER_HUB_USERNAME }} --password-stdin
- name: Tag and push crab (nightly) to DockerHub
if: ${{ github.event_name == 'schedule' }} # only push if nightly run
run: |
docker push seahorn/crab:bionic
docker push seahorn/crab_apron_boxes:bionic
docker push seahorn/crab_elina:bionic
#docker push seahorn/crab_pplite:bionic