Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
86 changes: 82 additions & 4 deletions .github/workflows/beam_Publish_Beam_SDK_Snapshots.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,12 +62,10 @@ jobs:
- "python:container:py311:docker"
- "python:container:py312:docker"
- "python:container:py313:docker"
- "python:container:py314:docker"
- "python:container:distroless:py310:docker"
- "python:container:distroless:py311:docker"
- "python:container:distroless:py312:docker"
- "python:container:distroless:py313:docker"
- "python:container:distroless:py314:docker"
- "python:container:ml:py310:docker"
- "python:container:ml:py311:docker"
- "python:container:ml:py312:docker"
Expand All @@ -90,8 +88,16 @@ jobs:
# This is needed to run pipelines that use the default environment at HEAD, for example, when a
# pipeline uses an expansion service built from HEAD.
run: |
BEAM_VERSION_LINE=$(cat gradle.properties | grep "sdk_version")
echo "BEAM_VERSION=${BEAM_VERSION_LINE#*sdk_version=}" >> $GITHUB_ENV
BEAM_VERSION=$(grep -E '^sdk_version=' gradle.properties | cut -d= -f2-)
if [[ ! "${BEAM_VERSION}" =~ ^[0-9A-Za-z._-]+$ ]]; then
echo "Invalid sdk_version in gradle.properties: ${BEAM_VERSION}"
exit 1
fi
{
echo "BEAM_VERSION<<EOF"
echo "${BEAM_VERSION}"
echo "EOF"
} >> "$GITHUB_ENV"
- name: Set latest tag only on master branch
if: github.ref == 'refs/heads/master'
run: echo "LATEST_TAG=,latest" >> $GITHUB_ENV
Expand Down Expand Up @@ -127,3 +133,75 @@ jobs:
-Pcontainer-architecture-list=arm64,amd64 \
-Ppush-containers \
-Pdocker-pull-licenses

beam_Publish_Beam_SDK_Snapshots_py314:
needs: beam_Publish_Beam_SDK_Snapshots
if: |
always() &&
!cancelled() &&
(github.event_name == 'workflow_dispatch' ||
(github.event_name == 'schedule' && github.repository == 'apache/beam'))
runs-on: [self-hosted, ubuntu-24.04, main]
timeout-minutes: 300
name: ${{ matrix.job_name }} (${{ matrix.container_task }})
strategy:
fail-fast: false
matrix:
job_name: ["beam_Publish_Beam_SDK_Snapshots"]
job_phrase: ["N/A"]
container_task:
- "python:container:py314:docker"
- "python:container:distroless:py314:docker"
steps:
- uses: actions/checkout@v7
with:
persist-credentials: false
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@v1.3.1
- name: Setup repository
uses: ./.github/actions/setup-action
with:
comment_phrase: ${{ matrix.job_phrase }}
github_token: ${{ secrets.GITHUB_TOKEN }}
github_job: ${{ matrix.job_name }} (${{ matrix.container_task }})
- name: Find Beam Version
run: |
BEAM_VERSION=$(grep -E '^sdk_version=' gradle.properties | cut -d= -f2-)
if [[ ! "${BEAM_VERSION}" =~ ^[0-9A-Za-z._-]+$ ]]; then
echo "Invalid sdk_version in gradle.properties: ${BEAM_VERSION}"
exit 1
fi
{
echo "BEAM_VERSION<<EOF"
echo "${BEAM_VERSION}"
echo "EOF"
} >> "$GITHUB_ENV"
- name: Set latest tag only on master branch
if: github.ref == 'refs/heads/master'
run: echo "LATEST_TAG=,latest" >> $GITHUB_ENV
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@bb05f3f5519dd87d3ba754cc423b652a5edd6d2c
- name: Authenticate on GCP
uses: google-github-actions/auth@7c6bc770dae815cd3e89ee6cdf493a5fab2cc093
with:
service_account: ${{ secrets.GCP_SA_EMAIL }}
credentials_json: ${{ secrets.GCP_SA_KEY }}
- name: Set up Cloud SDK
uses: google-github-actions/setup-gcloud@aa5489c8933f4cc7a4f7d45035b3b1440c9c10db
- name: GCloud Docker credential helper
run: |
gcloud auth configure-docker ${{ env.docker_registry }}
- name: Setup Python environment
uses: ./.github/actions/setup-environment-action
with:
python-version: default
- name: run Publish Beam SDK Snapshots script
uses: ./.github/actions/gradle-command-self-hosted-action
with:
gradle-command: :sdks:${{ matrix.container_task }}
arguments: |
-Pdocker-repository-root=gcr.io/apache-beam-testing/beam-sdk \
-Pdocker-tag-list=${{ github.sha }},${BEAM_VERSION}${LATEST_TAG} \
-Pcontainer-architecture-list=arm64,amd64 \
-Ppush-containers \
-Pdocker-pull-licenses
Loading