From eb5d5ca87cd7b510dd2f079cb3765e8f5e6dd236 Mon Sep 17 00:00:00 2001 From: Kenjiro Nakayama Date: Thu, 8 Jun 2023 14:06:19 +0900 Subject: [PATCH] [SRVKS-1071] Add github action to sync upstream (#75) * Add github action to sync upstream release * Update README --- .github/workflows/sync-upstream.yaml | 57 ++++++++++++++++++++++++++++ README.md | 8 +++- 2 files changed, 63 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/sync-upstream.yaml diff --git a/.github/workflows/sync-upstream.yaml b/.github/workflows/sync-upstream.yaml new file mode 100644 index 000000000..47772e9d5 --- /dev/null +++ b/.github/workflows/sync-upstream.yaml @@ -0,0 +1,57 @@ +--- +name: Sync upstream + +on: + workflow_dispatch: # Manual workflow trigger + inputs: + release: + type: string + required: true + description: Release Version + +jobs: + sync-upstream: + if: github.event.created || github.event_name == 'workflow_dispatch' + name: + runs-on: ubuntu-latest + env: + GOPATH: ${{ github.workspace }} + UPSTREAM: https://github.com/knative-sandbox/net-kourier.git + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + path: ./src/github.com/${{ github.repository }} + fetch-depth: 0 + ref: ${{ inputs.release }} + + - name: Sync upstream + working-directory: ./src/github.com/${{ github.repository }} + run: | + if ! git config user.name > /dev/null; then + git config user.name "John Doe" + fi + if ! git config user.email > /dev/null; then + git config user.email "johndoe@localhost" + fi + git remote add upstream "${UPSTREAM}" + git fetch upstream + BRANCH=${{ inputs.release }} + git merge upstream/"release-${BRANCH#release-v}" + + shell: bash + + - name: Regenerate all generated files + working-directory: ./src/github.com/${{ github.repository }} + run: ./openshift/release/generate-release.sh ${{ inputs.release }} + + - name: Create Pull Request + uses: peter-evans/create-pull-request@v4 + with: + path: ./src/github.com/${{ github.repository }} + branch: auto/sync-upstream-${{ inputs.release }} + title: "[${{ inputs.release }}] Sync upstream release" + commit-message: "Sync upstream release" + delete-branch: true + body: | + Sync upstream release diff --git a/README.md b/README.md index 66ea8e1bb..8b358540f 100644 --- a/README.md +++ b/README.md @@ -7,10 +7,14 @@ fixes needed only for the OpenShift side of things. # OpenShift net-kourier Release procedure Currently the release cut is not automated but just one command. -Once upstream cuts the branch (e.g. upstream cut `release-1.9` branch), run: +Once upstream cuts the branch (e.g. upstream cut `release-v1.9` branch), run: ```sh -$ openshift/release/create-release-branch.sh release-1.9 +$ openshift/release/create-release-branch.sh release-v1.9 ``` Then, push the branch against to this repository. + +## Sync upstream + +The procedure is the same as [serving](https://github.com/openshift-knative/serving/blob/main/README.md).