Files
containerd/.github/workflows/ci.yml
Mike Brown 67de3e4ccf adds git hub actions for linux CI
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2020-04-15 17:25:10 -05:00

132 lines
3.6 KiB
YAML

name: CI
on: [push, pull_request]
jobs:
#
# validate, unit, integration, and CRI tests
#
test-linux:
name: linux validate build and unit integration and CRI
runs-on: ubuntu-18.04
steps:
- name: Install Go
uses: actions/setup-go@v1
with:
go-version: '1.13.10'
- name: Set env
shell: bash
run: |
echo "::set-env name=GOPATH::${{ github.workspace }}"
echo "::add-path::${{ github.workspace }}/bin"
- name: Checkout cri repo
uses: actions/checkout@v2
with:
path: ${{github.workspace}}/src/github.com/containerd/cri
fetch-depth: 150
- name: Before install
run: |
sudo sysctl net.ipv6.conf.all.disable_ipv6=0
- name: Install dependencies
run: |
sudo apt-get install -y \
btrfs-tools \
libseccomp2 \
libseccomp-dev \
socat
- name: Checkout project repo
uses: actions/checkout@v2
with:
repository: containerd/project
path: src/github.com/containerd/project
#
# Go get dependencies
#
- name: Install go get dependencies
env:
GO111MODULE: off
run: |
go get -u github.com/vbatts/git-validation
go get -u github.com/LK4D4/vndr
#
# DCO / Vendor directory validation
#
- name: DCO
env:
GITHUB_COMMIT_URL: ${{ github.event.pull_request.commits_url }}
DCO_VERBOSITY: "-q"
DCO_RANGE: ""
working-directory: src/github.com/containerd/cri
run: |
set -x
if [ -z "${GITHUB_COMMIT_URL}" ]; then
DCO_RANGE=$(jq -r '.after + "..HEAD"' ${GITHUB_EVENT_PATH})
else
DCO_RANGE=$(curl ${GITHUB_COMMIT_URL} | jq -r '.[0].parents[0].sha +".."+ .[-1].sha')
fi
../project/script/validate/dco
- name: Vendor
run: ../project/script/validate/vendor
working-directory: src/github.com/containerd/cri
- name: Build and Test
run: |
make install.deps
make containerd
sudo PATH=$PATH GOPATH=$GOPATH make install-containerd
make test
make test-integration
make test-cri
working-directory: ${{github.workspace}}/src/github.com/containerd/cri
- name: Upload containerd log file
uses: actions/upload-artifact@v1
with:
name: integration.log
path: /tmp/test-integration/containerd.log
- name: Upload cri log file
uses: actions/upload-artifact@v1
with:
name: cri.log
path: /tmp/test-cri/containerd.log
test-windows:
name: Build and CRI Test Windows amd64
runs-on: windows-latest
steps:
- name: Set up Go 1.13.10
uses: actions/setup-go@v1
with:
go-version: 1.13.10
- name: Checkout cri repo
uses: actions/checkout@v2
with:
path: ${{github.workspace}}\\src\\github.com\\containerd\\cri
- name: Clone containerd repo
run: |
bash.exe -c "GO111MODULE=off go get github.com/containerd/containerd"
- name: Configure Windows environment variables
run: |
echo "::set-env name=GOPATH::$env:GITHUB_WORKSPACE"
- name: Build
run: |
bash.exe -c "pwd && ./test/windows/test.sh"
working-directory: ${{github.workspace}}\\src\\github.com\\containerd\\cri
- name: Upload containerd log file
uses: actions/upload-artifact@v1
with:
name: cadvisor.log
path: c:\\_artifacts\\containerd.log