feat: add github-based ci config

This commit is contained in:
Jose Diaz-Gonzalez
2020-06-01 22:57:43 -04:00
parent 2b9e5bbaea
commit d7b0d2a4d9

69
.github/workflows/ci.yaml vendored Normal file
View File

@@ -0,0 +1,69 @@
name: CI
on:
pull_request:
branches:
- '*'
push:
branches:
- '*'
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
index: [0, 1, 2,3]
env:
GITHUB_NODE_INDEX: ${{ matrix.compiler }}
name: ci.${{ matrix.index }}
steps:
- uses: actions/checkout@v2
- name: install ci-dependencies
run: make ci-dependencies
- 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