From 00128d3b92059c5e9fde9bc66b6aa67756a1371c Mon Sep 17 00:00:00 2001 From: stevenhorsman Date: Thu, 10 Oct 2024 11:49:28 +0100 Subject: [PATCH 1/2] workflows: Remove project issues workflows These workflow are still using the hub cli which is outdated and we aren't actively managing the backlog especially in the community repo, so I don't think they work, or are required. Signed-off-by: stevenhorsman --- .github/workflows/add-issues-to-project.yaml | 55 ------------- .../workflows/move-issues-to-in-progress.yaml | 78 ------------------- 2 files changed, 133 deletions(-) delete mode 100644 .github/workflows/add-issues-to-project.yaml delete mode 100644 .github/workflows/move-issues-to-in-progress.yaml diff --git a/.github/workflows/add-issues-to-project.yaml b/.github/workflows/add-issues-to-project.yaml deleted file mode 100644 index 93c31e7a1f..0000000000 --- a/.github/workflows/add-issues-to-project.yaml +++ /dev/null @@ -1,55 +0,0 @@ -# Copyright (c) 2020 Intel Corporation -# -# SPDX-License-Identifier: Apache-2.0 -# - -name: Add newly created issues to the backlog project - -on: - issues: - types: - - opened - - reopened - -jobs: - add-new-issues-to-backlog: - runs-on: ubuntu-latest - steps: - - name: Install hub - run: | - HUB_ARCH="amd64" - HUB_VER=$(curl -sL "https://api.github.com/repos/github/hub/releases/latest" |\ - jq -r .tag_name | sed 's/^v//') - curl -sL \ - "https://github.com/github/hub/releases/download/v${HUB_VER}/hub-linux-${HUB_ARCH}-${HUB_VER}.tgz" |\ - tar xz --strip-components=2 --wildcards '*/bin/hub' && \ - sudo install hub /usr/local/bin - - - name: Install hub extension script - run: | - # Clone into a temporary directory to avoid overwriting - # any existing github directory. - pushd $(mktemp -d) &>/dev/null - git clone --single-branch --depth 1 "https://github.com/kata-containers/.github" && cd .github/scripts - sudo install hub-util.sh /usr/local/bin - popd &>/dev/null - - - name: Checkout code to allow hub to communicate with the project - uses: actions/checkout@v2 - - - name: Add issue to issue backlog - env: - GITHUB_TOKEN: ${{ secrets.KATA_GITHUB_ACTIONS_TOKEN }} - run: | - issue=${{ github.event.issue.number }} - - project_name="Issue backlog" - project_type="org" - project_column="To do" - - hub-util.sh \ - add-issue \ - "$issue" \ - "$project_name" \ - "$project_type" \ - "$project_column" diff --git a/.github/workflows/move-issues-to-in-progress.yaml b/.github/workflows/move-issues-to-in-progress.yaml deleted file mode 100644 index 6a55340af3..0000000000 --- a/.github/workflows/move-issues-to-in-progress.yaml +++ /dev/null @@ -1,78 +0,0 @@ -# Copyright (c) 2020 Intel Corporation -# -# SPDX-License-Identifier: Apache-2.0 -# - -name: Move issues to "In progress" in backlog project when referenced by a PR - -on: - pull_request_target: - types: - - opened - - reopened - -jobs: - move-linked-issues-to-in-progress: - runs-on: ubuntu-latest - steps: - - name: Install hub - run: | - HUB_ARCH="amd64" - HUB_VER=$(curl -sL "https://api.github.com/repos/github/hub/releases/latest" |\ - jq -r .tag_name | sed 's/^v//') - curl -sL \ - "https://github.com/github/hub/releases/download/v${HUB_VER}/hub-linux-${HUB_ARCH}-${HUB_VER}.tgz" |\ - tar xz --strip-components=2 --wildcards '*/bin/hub' && \ - sudo install hub /usr/local/bin - - - name: Install hub extension script - run: | - # Clone into a temporary directory to avoid overwriting - # any existing github directory. - pushd $(mktemp -d) &>/dev/null - git clone --single-branch --depth 1 "https://github.com/kata-containers/.github" && cd .github/scripts - sudo install hub-util.sh /usr/local/bin - popd &>/dev/null - - - name: Checkout code to allow hub to communicate with the project - uses: actions/checkout@v2 - - - name: Move issue to "In progress" - env: - GITHUB_TOKEN: ${{ secrets.KATA_GITHUB_ACTIONS_TOKEN }} - run: | - pr=${{ github.event.pull_request.number }} - - linked_issue_urls=$(hub-util.sh \ - list-issues-for-pr "$pr" |\ - grep -v "^\#" |\ - cut -d';' -f3 || true) - - # PR doesn't have any linked issues - # (it should, but maybe a new user forgot to add a "Fixes: #XXX" commit). - [ -z "$linked_issue_urls" ] && { - echo "::error::No linked issues for PR $pr" - exit 1 - } - - project_name="Issue backlog" - project_type="org" - project_column="In progress" - - for issue_url in $(echo "$linked_issue_urls") - do - issue=$(echo "$issue_url"| awk -F\/ '{print $NF}' || true) - - [ -z "$issue" ] && { - echo "::error::Cannot determine issue number from $issue_url for PR $pr" - exit 1 - } - - # Move the issue to the correct column on the project board - hub-util.sh \ - move-issue \ - "$issue" \ - "$project_name" \ - "$project_type" \ - "$project_column" - done From 587c0d1b990ce1ab4e2d546b7db01a6d303a67d3 Mon Sep 17 00:00:00 2001 From: stevenhorsman Date: Thu, 10 Oct 2024 12:05:48 +0100 Subject: [PATCH 2/2] ci: Rework static checks The static checks were using the version from kata-containers, an old version of go and had a bunch of travis references that don't seem to be required any longer, so try updating this and removing the redundant code. Whether all these checks are useful is debatable, but at least now they should be up-to-date. Signed-off-by: stevenhorsman --- .ci/lib.sh | 25 ------------------ .ci/run.sh | 11 -------- .ci/setup.sh | 17 ------------ .ci/static-checks.sh | 27 ++++++++++++++++--- .github/workflows/main.yml | 54 ++++++++++++-------------------------- 5 files changed, 41 insertions(+), 93 deletions(-) delete mode 100644 .ci/lib.sh delete mode 100755 .ci/run.sh delete mode 100755 .ci/setup.sh diff --git a/.ci/lib.sh b/.ci/lib.sh deleted file mode 100644 index 47eacc2d06..0000000000 --- a/.ci/lib.sh +++ /dev/null @@ -1,25 +0,0 @@ -# -# Copyright (c) 2019 Intel Corporation -# -# SPDX-License-Identifier: Apache-2.0 - -export tests_repo="${tests_repo:-github.com/kata-containers/tests}" -export tests_repo_dir="$GOPATH/src/$tests_repo" - -clone_tests_repo() -{ - # KATA_CI_NO_NETWORK is (has to be) ignored if there is - # no existing clone. - if [ -d "$tests_repo_dir" -a -n "$KATA_CI_NO_NETWORK" ] - then - return - fi - - go get -d -u "$tests_repo" || true -} - -run_static_checks() -{ - clone_tests_repo - bash "$tests_repo_dir/.ci/static-checks.sh" "github.com/kata-containers/community" -} diff --git a/.ci/run.sh b/.ci/run.sh deleted file mode 100755 index 951be64148..0000000000 --- a/.ci/run.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash -# -# Copyright (c) 2019 Intel Corporation -# -# SPDX-License-Identifier: Apache-2.0 -# - -set -e - -# No explicit tests currently -true diff --git a/.ci/setup.sh b/.ci/setup.sh deleted file mode 100755 index 26c895bab1..0000000000 --- a/.ci/setup.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# -# Copyright (c) 2019 Intel Corporation -# -# SPDX-License-Identifier: Apache-2.0 -# - -set -e - -cidir=$(dirname "$0") -source "${cidir}/lib.sh" - -clone_tests_repo - -pushd "${tests_repo_dir}" -.ci/setup.sh -popd diff --git a/.ci/static-checks.sh b/.ci/static-checks.sh index b3f69aa95d..087575460f 100755 --- a/.ci/static-checks.sh +++ b/.ci/static-checks.sh @@ -1,12 +1,33 @@ #!/bin/bash # -# Copyright (c) 2019 Intel Corporation +# Copyright (c) 2024 IBM Corporation # # SPDX-License-Identifier: Apache-2.0 set -e -cidir=$(dirname "$0") -source "${cidir}/lib.sh" +export kata_repo="${kata_repo:-github.com/kata-containers/kata-containers}" +export kata_repo_dir="$GOPATH/src/$kata_repo" +export kata_default_branch="${kata_default_branch:-main}" + + +clone_kata_repo() { + if [ ! -d "${kata_repo_dir}" ]; then + mkdir -p "${kata_repo_dir}" + git clone "https://${kata_repo}.git" "${kata_repo_dir}" + pushd "${kata_repo_dir}" || exit + # Checkout to default branch + git checkout "${kata_default_branch}" + popd || exit + fi +} + +run_static_checks() +{ + clone_kata_repo + INSTALL_IN_GOPATH=false bash "${kata_repo_dir}/ci/install_yq.sh" + bash "${kata_repo_dir}/tests/install_go.sh" -f -p + bash "${kata_repo_dir}/tests/static-checks.sh" "github.com/kata-containers/community" +} run_static_checks diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 8743bc3215..6ee376790f 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,42 +1,22 @@ on: ["pull_request"] name: Static checks jobs: - test: - runs-on: ubuntu-latest + static-checks: + runs-on: ubuntu-22.04 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 }} + GOPATH: ${{ github.workspace }} steps: - - name: Install Go - uses: actions/setup-go@v2 - with: - go-version: 1.19.3 - - 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: | - community_repo=$(go env GOPATH)/src/github.com/kata-containers/community - pushd ${community_repo} - GOPATH=$(go env GOPATH) .ci/setup.sh - - name: Running static checks - run: | - community_repo=$(go env GOPATH)/src/github.com/kata-containers/community - pushd ${community_repo} - GOPATH=$(go env GOPATH) .ci/static-checks.sh + - name: Checkout code + uses: actions/checkout@v4 + with: + fetch-depth: 0 + path: ./src/github.com/${{ github.repository }} + + - name: Install system dependencies + run: | + sudo apt-get -y install moreutils hunspell hunspell-en-gb hunspell-en-us pandoc + + - name: Running static checks + run: | + export PATH=${GOPATH}/bin:${PATH} + ./src/github.com/${{ github.repository }}/.ci/static-checks.sh