mirror of
https://github.com/aljazceru/kata-containers.git
synced 2026-01-06 16:04:26 +01:00
This is not the most beautiful solution, but when do the check on every single step we ensure the test at least started, and consequently will succeed. Without this the tests wouldn't even start, making any PR using the `force-skip-ci` label not mergeable. Fixes: #2362 Signed-off-by: Fabiano Fidêncio <fidencio@redhat.com>
87 lines
3.4 KiB
YAML
87 lines
3.4 KiB
YAML
on:
|
|
pull_request:
|
|
types:
|
|
- opened
|
|
- edited
|
|
- reopened
|
|
- synchronize
|
|
- labeled
|
|
- unlabeled
|
|
|
|
name: Static checks
|
|
jobs:
|
|
test:
|
|
strategy:
|
|
matrix:
|
|
go-version: [1.15.x, 1.16.x]
|
|
os: [ubuntu-20.04]
|
|
runs-on: ${{ matrix.os }}
|
|
env:
|
|
TRAVIS: "true"
|
|
TRAVIS_BRANCH: ${{ github.base_ref }}
|
|
TRAVIS_PULL_REQUEST_BRANCH: ${{ github.head_ref }}
|
|
TRAVIS_PULL_REQUEST_SHA : ${{ github.event.pull_request.head.sha }}
|
|
RUST_BACKTRACE: "1"
|
|
target_branch: ${{ github.base_ref }}
|
|
steps:
|
|
- name: Install Go
|
|
if: ${{ !contains(github.event.pull_request.labels.*.name, 'force-skip-ci') }}
|
|
uses: actions/setup-go@v2
|
|
with:
|
|
go-version: ${{ matrix.go-version }}
|
|
env:
|
|
GOPATH: ${{ runner.workspace }}/kata-containers
|
|
- name: Setup GOPATH
|
|
if: ${{ !contains(github.event.pull_request.labels.*.name, 'force-skip-ci') }}
|
|
run: |
|
|
echo "TRAVIS_BRANCH: ${TRAVIS_BRANCH}"
|
|
echo "TRAVIS_PULL_REQUEST_BRANCH: ${TRAVIS_PULL_REQUEST_BRANCH}"
|
|
echo "TRAVIS_PULL_REQUEST_SHA: ${TRAVIS_PULL_REQUEST_SHA}"
|
|
echo "TRAVIS: ${TRAVIS}"
|
|
- name: Set env
|
|
if: ${{ !contains(github.event.pull_request.labels.*.name, 'force-skip-ci') }}
|
|
run: |
|
|
echo "GOPATH=${{ github.workspace }}" >> $GITHUB_ENV
|
|
echo "${{ github.workspace }}/bin" >> $GITHUB_PATH
|
|
- name: Checkout code
|
|
if: ${{ !contains(github.event.pull_request.labels.*.name, 'force-skip-ci') }}
|
|
uses: actions/checkout@v2
|
|
with:
|
|
fetch-depth: 0
|
|
path: ./src/github.com/${{ github.repository }}
|
|
- name: Setup travis references
|
|
if: ${{ !contains(github.event.pull_request.labels.*.name, 'force-skip-ci') }}
|
|
run: |
|
|
echo "TRAVIS_BRANCH=${TRAVIS_BRANCH:-$(echo $GITHUB_REF | awk 'BEGIN { FS = \"/\" } ; { print $3 }')}"
|
|
target_branch=${TRAVIS_BRANCH}
|
|
- name: Setup
|
|
if: ${{ !contains(github.event.pull_request.labels.*.name, 'force-skip-ci') }}
|
|
run: |
|
|
cd ${GOPATH}/src/github.com/${{ github.repository }} && ./ci/setup.sh
|
|
env:
|
|
GOPATH: ${{ runner.workspace }}/kata-containers
|
|
- name: Building rust
|
|
if: ${{ !contains(github.event.pull_request.labels.*.name, 'force-skip-ci') }}
|
|
run: |
|
|
cd ${GOPATH}/src/github.com/${{ github.repository }} && ./ci/install_rust.sh
|
|
PATH=$PATH:"$HOME/.cargo/bin"
|
|
rustup target add x86_64-unknown-linux-musl
|
|
rustup component add rustfmt clippy
|
|
# Check whether the vendored code is up-to-date & working as the first thing
|
|
- name: Check vendored code
|
|
if: ${{ !contains(github.event.pull_request.labels.*.name, 'force-skip-ci') }}
|
|
run: |
|
|
cd ${GOPATH}/src/github.com/${{ github.repository }} && make vendor
|
|
- name: Static Checks
|
|
if: ${{ !contains(github.event.pull_request.labels.*.name, 'force-skip-ci') }}
|
|
run: |
|
|
cd ${GOPATH}/src/github.com/${{ github.repository }} && make static-checks
|
|
- name: Run Compiler Checks
|
|
if: ${{ !contains(github.event.pull_request.labels.*.name, 'force-skip-ci') }}
|
|
run: |
|
|
cd ${GOPATH}/src/github.com/${{ github.repository }} && make check
|
|
- name: Run Unit Tests
|
|
if: ${{ !contains(github.event.pull_request.labels.*.name, 'force-skip-ci') }}
|
|
run: |
|
|
cd ${GOPATH}/src/github.com/${{ github.repository }} && make test
|