diff --git a/.github/workflows/git_tag_released_version.yml b/.github/workflows/git_tag_released_version.yml new file mode 100644 index 0000000000000000000000000000000000000000..37f2c390b7fe005fd3f7ccd87e7afd5c0b6f78cf --- /dev/null +++ b/.github/workflows/git_tag_released_version.yml @@ -0,0 +1,54 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +# This workflow will generate the released version tag and push it to the repository + +# To learn more about GitHub Actions in Apache Beam check the CI.md + +name: Git Tag Released Version +on: + workflow_dispatch: + inputs: + VERSION_TAG: + description: Beam Final Version Tag + required: true + RC_TAG: + description: Beam RC Tag + required: true + +jobs: + generate_tags: + runs-on: [self-hosted, ubuntu-20.04] + env: + VERSION_PATH: ${{ github.event.inputs.VERSION_TAG }} + steps: + - name: Check out code + uses: actions/checkout@v3 + - name: Set git config + run: | + git config user.name $GITHUB_ACTOR + git config user.email actions@"$RUNNER_NAME".local + - name: Tag for Go SDK + run: | + git tag -a sdks/${{ github.event.inputs.VERSION_TAG }} -m ${{ github.event.inputs.RC_TAG }} + git push https://github.com/apache/beam sdks/${{ github.event.inputs.VERSION_TAG }} + - name: Tag for repo root + run: | + git tag -a ${{ github.event.inputs.VERSION_TAG }} -m ${{ github.event.inputs.RC_TAG }} + git push https://github.com/apache/beam ${{ github.event.inputs.VERSION_TAG }} + + diff --git a/CI.md b/CI.md index 51f4c4aa59c2485b1068d1425ad8a27f3066c344..0b6075c24d5bb703464e5e92adfdeeaf005e06da 100644 --- a/CI.md +++ b/CI.md @@ -150,6 +150,12 @@ Service Account shall have following permissions ([IAM roles](https://cloud.goog |------------------------------|-----------------------------------------------------------------------------------------------|------------------|-----------------------|---------------|--------------------------| | Verify Release Build | Verifies full life cycle of Gradle Build and all PostCommit/PreCommit tests against Release Branch on CI. | No | No | No | No | +#### Git tag Release Version - [git_tag_released_version.yml](.github/workflows/git_tag_released_version.yml) + +| Job | Description | Pull Request Run | Direct Push/Merge Run | Scheduled Run | Requires GCP Credentials | +|---------------------------------|----------------------------------------------------------------------------------------------------------------|------------------|-----------------------|---------------|--------------------------| +| Git Tag Release Version | Create and push a new tag for the released version by copying the tag for the final release candidate. | No | No | No | No | + #### Run RC Validation - [run_rc_validation.yml](.github/workflows/run_rc_validation.yml) | Job | Description | Pull Request Run | Direct Push/Merge Run | Scheduled Run | Requires GCP Credentials |