diff --git a/.github/workflows/static-checks.yaml b/.github/workflows/static-checks.yaml new file mode 100644 index 0000000000..b583bc5bec --- /dev/null +++ b/.github/workflows/static-checks.yaml @@ -0,0 +1,71 @@ +on: ["pull_request"] +name: Static checks +jobs: + test: + strategy: + matrix: + go-version: [1.13.x, 1.14.x, 1.15.x] + os: [ubuntu-18.04] + runs-on: ${{ matrix.os }} + env: + GO111MODULE: off + 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" + RUST_AGENT: "yes" + steps: + - name: Install Go + uses: actions/setup-go@v2 + with: + go-version: ${{ matrix.go-version }} + - name: Setup GOPATH + run: | + gopath_org=$(go env GOPATH)/src/github.com/kata-containers/ + mkdir -p ${gopath_org} + ln -s ${PWD} ${gopath_org} + 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: Checkout code + uses: actions/checkout@v2 + with: + fetch-depth: 0 + - name: Setup travis references + run: | + echo "TRAVIS_BRANCH=${TRAVIS_BRANCH:-$(echo $GITHUB_REF | awk 'BEGIN { FS = \"/\" } ; { print $3 }')}" + - name: Setup + run: | + kata_repo=$(go env GOPATH)/src/github.com/kata-containers/kata-containers + pushd ${kata_repo}/ci/ + GOPATH=$(go env GOPATH) ./setup.sh + - name: Install rust + run: | + kata_repo=$(go env GOPATH)/src/github.com/kata-containers/kata-containers + pushd ${kata_repo}/ci/ + GOPATH=$(go env GOPATH) ./install_rust.sh + - name: Agent + run: | + kata_repo=$(go env GOPATH)/src/github.com/kata-containers/kata-containers + pushd ${kata_repo}/src/agent + GOPATH=$(go env GOPATH) make + - name: Install agent + run: | + kata_repo=$(go env GOPATH)/src/github.com/kata-containers/kata-containers + pushd ${kata_repo}/src/agent + GOPATH=$(go env GOPATH) make check + - name: Make clippy + run: | + kata_repo=$(go env GOPATH)/src/github.com/kata-containers/kata-containers + pushd ${kata_repo}/src/agent + rustup target add x86_64-unknown-linux-musl + rustup component add rustfmt + rustup component add clippy + GOPATH=$(go env GOPATH) make clippy + - name: Static checks + run: | + kata_repo=$(go env GOPATH)/src/github.com/kata-containers/kata-containers + pushd ${kata_repo}/ci/ + GOPATH=$(go env GOPATH) ./static-checks.sh diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 36bfe742d5..0000000000 --- a/.travis.yml +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright (c) 2019 Ant Financial -# -# SPDX-License-Identifier: Apache-2.0 -# - -dist: bionic -os: linux - -# set cache directories manually, because -# we are using a non-standard directory struct -# cargo root is in srs/agent -# -# If needed, caches can be cleared -# by ways documented in -# https://docs.travis-ci.com/user/caching#clearing-caches -language: rust -rust: - - 1.47.0 -cache: - cargo: true - directories: - - src/agent/target - -before_install: - - git remote set-branches --add origin "${TRAVIS_BRANCH}" - - git fetch - - export RUST_BACKTRACE=1 - - export target_branch=$TRAVIS_BRANCH - - "ci/setup.sh" - -# we use install to run check agent -# so that it is easy to skip for non-amd64 platform -install: - - export PATH=$PATH:"$HOME/.cargo/bin" - - export RUST_AGENT=yes - - rustup target add x86_64-unknown-linux-musl - - sudo ln -sf /usr/bin/g++ /bin/musl-g++ - - rustup component add rustfmt - - rustup component add clippy - - make -C ${TRAVIS_BUILD_DIR}/src/agent clippy - - "ci/static-checks.sh" - -before_script: - - "ci/install_go.sh" - - make -C ${TRAVIS_BUILD_DIR}/src/runtime - - make -C ${TRAVIS_BUILD_DIR}/src/runtime test - - sudo -E PATH=$PATH GOPATH=$GOPATH make -C ${TRAVIS_BUILD_DIR}/src/runtime test - -script: - - make -C ${TRAVIS_BUILD_DIR}/src/agent - - make -C ${TRAVIS_BUILD_DIR}/src/agent check - - sudo -E PATH=$PATH make -C ${TRAVIS_BUILD_DIR}/src/agent check - -jobs: - include: - - name: x86_64 test - os: linux - - name: ppc64le test - os: linux-ppc64le - install: skip - script: skip - allow_failures: - - name: ppc64le test - fast_finish: true