From 6fd68f184968eb6bb8f0f7a3b46b1ddaaac3f92a Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 16 Sep 2024 14:04:27 +0100 Subject: [PATCH] repo: Sync fixes/cleanups Signed-off-by: Ryan Northey --- .github/workflows/envoy-sync.yaml | 6 +++--- sync_envoy.sh | 36 +++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 3 deletions(-) create mode 100755 sync_envoy.sh diff --git a/.github/workflows/envoy-sync.yaml b/.github/workflows/envoy-sync.yaml index 380dad7..2a57a3e 100644 --- a/.github/workflows/envoy-sync.yaml +++ b/.github/workflows/envoy-sync.yaml @@ -34,10 +34,10 @@ jobs: with: ref: main token: ${{ steps.appauth.outputs.token }} - path: envoy-website + path: archive - run: | - envoy_version="$(awk '/"envoy"/ { in_block=1 } in_block && /"version"/ { gsub(/[",]/, "", $2); print $2; in_block=0 }' envoy-website/versions.bzl)" + envoy_version="$(awk '/"envoy"/ { in_block=1 } in_block && /"version"/ { gsub(/[",]/, "", $2); print $2; in_block=0 }' archive/versions.bzl)" echo "envoy_version=${envoy_version}" >> "$GITHUB_OUTPUT" id: current name: Get current Envoy version @@ -73,7 +73,7 @@ jobs: - run: ./sync_envoy.sh if: ${{ steps.state.outputs.should_update == 'true' }} - working-directory: envoy-website + working-directory: archive env: ENVOY_SRC_DIR: ../envoy COMMITTER_NAME: "update-envoy[bot]" diff --git a/sync_envoy.sh b/sync_envoy.sh new file mode 100755 index 0000000..4f9c1fd --- /dev/null +++ b/sync_envoy.sh @@ -0,0 +1,36 @@ +#!/bin/bash -e + +set -o pipefail + + +ENVOY_SRC_DIR="${ENVOY_SRC_DIR:-../envoy}" +ENVOY_VERSION=$(git -C "$ENVOY_SRC_DIR" rev-parse HEAD) +UPDATED= + +if [[ -n "$COMMITTER_NAME" ]]; then + git config --global user.name "$COMMITTER_NAME" +fi + +if [[ -n "$COMMITTER_EMAIL" ]]; then + git config --global user.email "$COMMITTER_EMAIL" +fi + +sync_envoy () { + echo "Syncing Envoy -> ${ENVOY_VERSION}" + bazel run //bazel:update envoy "${ENVOY_VERSION}" + if git diff --quiet --exit-code; then + echo "No Envoy changes" + else + git commit versions.bzl -m "Sync Envoy @${ENVOY_VERSION}" + git show + UPDATED=1 + fi +} + +sync_envoy + +if [[ -n "$UPDATED" ]]; then + git push origin HEAD:main +else + echo "Nothing to push" +fi