From fd6788ff781505c8521637241ad6910cf0fcac08 Mon Sep 17 00:00:00 2001 From: John DiSanti Date: Wed, 19 Jan 2022 09:42:23 -0800 Subject: [PATCH] Simplify Canary Lambda CI (#1084) * Simplify Canary Lambda CI * Remove `Cargo.toml` check and make the script recursive --- .github/workflows/ci-sdk.yaml | 4 +-- tools/additional-per-crate-checks.sh | 30 ++++++++++++------- .../{ci-check.sh => additional-ci} | 1 - 3 files changed, 21 insertions(+), 14 deletions(-) rename tools/ci-cdk/canary-lambda/{ci-check.sh => additional-ci} (97%) diff --git a/.github/workflows/ci-sdk.yaml b/.github/workflows/ci-sdk.yaml index e64793b24..b5468e87a 100644 --- a/.github/workflows/ci-sdk.yaml +++ b/.github/workflows/ci-sdk.yaml @@ -70,9 +70,7 @@ jobs: - name: Unused Dependencies run: cargo +nightly udeps - name: Additional per-crate checks - run: ../tools/additional-per-crate-checks.sh ./sdk/ - - name: Canary check - run: ../tools/ci-cdk/canary-lambda/ci-check.sh + run: ../tools/additional-per-crate-checks.sh ./sdk/ ../tools/ci-cdk/ env: # Disable incremental compilation to reduce disk space use CARGO_INCREMENTAL: 0 diff --git a/tools/additional-per-crate-checks.sh b/tools/additional-per-crate-checks.sh index 9f83a7731..26e0aa4b5 100755 --- a/tools/additional-per-crate-checks.sh +++ b/tools/additional-per-crate-checks.sh @@ -4,22 +4,32 @@ # SPDX-License-Identifier: Apache-2.0. # -if [[ $# -ne 1 ]]; then - echo "Usage: $0 " +set -e + +# TTY colors +C_CYAN='\033[1;36m' +C_YELLOW='\033[1;33m' +C_RESET='\033[0m' + +if [[ $# -lt 1 ]]; then + echo "Usage: $0 [crate workspace path(s)...]" + echo "Recursively visits 'additional-ci' scripts in the given directories and executes them." exit 1 fi -cd $1 +for area in "$@"; do + pushd "${area}" &>/dev/null + echo -e "${C_CYAN}Scanning '${area}'...${C_RESET}" -set -e - -for path in *; do - if [[ -d "${path}" && -f "${path}/Cargo.toml" && -f "${path}/additional-ci" ]]; then + find . -name 'additional-ci' -print0 | while read -d $'\0' file; do echo - echo "# Running additional checks for ${path}..." + echo -e "${C_YELLOW}Running additional checks script '${file}'...${C_RESET}" echo - pushd "${path}" &>/dev/null + pushd "$(dirname ${file})" &>/dev/null ./additional-ci popd &>/dev/null - fi + done + + echo + popd &>/dev/null done diff --git a/tools/ci-cdk/canary-lambda/ci-check.sh b/tools/ci-cdk/canary-lambda/additional-ci similarity index 97% rename from tools/ci-cdk/canary-lambda/ci-check.sh rename to tools/ci-cdk/canary-lambda/additional-ci index 1cd4ab26a..51454ec0e 100755 --- a/tools/ci-cdk/canary-lambda/ci-check.sh +++ b/tools/ci-cdk/canary-lambda/additional-ci @@ -13,5 +13,4 @@ if [[ "${GITHUB_ACTIONS}" == "true" ]]; then fi ./write-cargo-toml.py --path "${SDK_PATH}" -cargo check cargo clippy -- GitLab