Files
dokku/.github/workflows/ci.yaml
Jose Diaz-Gonzalez 5c17bcc710 chore: minor test fixes
2020-06-19 22:01:12 -04:00

94 lines
2.1 KiB
YAML

name: CI
on:
pull_request:
branches:
- '*'
push:
branches:
- '*'
jobs:
build:
name: build
runs-on: ubuntu-latest
strategy:
fail-fast: true
steps:
- uses: actions/checkout@v2
- name: install ci-dependencies
run: make ci-dependencies
- name: build package
run: ./tests/ci/setup.sh build
- name: upload packages
uses: actions/upload-artifact@v2
with:
name: build
path: build
ci:
env:
GITHUB_NODE_INDEX: ${{ matrix.compiler }}
name: ci.${{ matrix.index }}
needs: build
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
index: [0, 1, 2,3]
steps:
- uses: actions/checkout@v2
- name: download packages
uses: actions/download-artifact@v1
with:
name: build
- name: setup tests
run: ./tests/ci/setup.sh
- name: dokku cleanup:skip
run: echo 'export DOKKU_SKIP_CLEANUP=true' | sudo tee /home/dokku/.dokkurc/dokku_skip_cleanup
- name: resolve dokku.me
run: |
# dokku.me now resolves to 10.0.0.2. add 10.0.0.2/24 to ens4
sudo ip a a 10.0.0.2/24 broadcast 10.0.0.255 dev ens4
- name: run pre-tests
run: |
export CIRCLE_SHA1=$GITHUB_SHA
case $GITHUB_NODE_INDEX in
0) sudo -E make -e lint-ci go-tests ci-go-coverage ;;
1) sudo -E make -e deploy-test-checks-root deploy-test-config ;;
2) sudo -E make -e deploy-test-multi ;;
3) sudo -E make -e deploy-test-go-fail-predeploy deploy-test-go-fail-postdeploy ;;
esac
- name: run ci
shell: bash
timeout-minutes: 60
run: |
sudo -E make -e test-ci
- name: test docker deploys
run: |
if [ "${GITHUB_NODE_INDEX}" == "0" ]; then
./tests/ci/setup.sh docker
DOKKU_SSH_PORT=3022 sudo -E make -e test-ci-docker
fi
- uses: actions/upload-artifact@v2
with:
name: coverage.${{ matrix.index }}.out
path: coverage.out
- uses: actions/upload-artifact@v2
with:
name: test-results-${{ matrix.index }}
path: test-results