Removing GitHub workflows from old release branch
diff --git a/.github/workflows/arm-cd.yml b/.github/workflows/arm-cd.yml
deleted file mode 100644
index 15433f8..0000000
--- a/.github/workflows/arm-cd.yml
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright 2022 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ==============================================================================
-
-name: ARM CD
-
-on:
- push:
- tags:
- - v2.**
- branches:
- - r2.**
- schedule:
- - cron: '0 8 * * *'
-
-permissions:
- contents: read
-
-jobs:
- build:
- if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
- runs-on: [self-hosted, linux, ARM64]
- continue-on-error: ${{ matrix.experimental }}
- strategy:
- fail-fast: false
- matrix:
- pyver: ['3.9', '3.10']
- experimental: [false]
- include:
- - pyver: '3.11'
- experimental: true
- steps:
- - name: Stop old running containers (if any)
- shell: bash
- run: |
- running_containers=$(docker ps -q) && \
- if [[ $running_containers == "" ]]; then
- echo "No running containers";
- else
- echo "Running container(s) found" && \
- docker stop $running_containers;
- fi
- docker container prune -f
- - name: Clean repository
- shell: bash
- run: find /home/ubuntu/actions-runner/_work/tensorflow/tensorflow/. -name . -o -prune -exec sudo rm -rf -- {} + || true
- - name: Checkout repository for nightly (skipped for releases)
- if: ${{ github.event_name == 'schedule' }}
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- with:
- ref: 'nightly'
- - name: Checkout repository for releases (skipped for nightly)
- if: ${{ github.event_name == 'push' }}
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- - name: Build and test pip wheel
- shell: bash
- run: |
- is_nightly=0 && tf_project_name='tensorflow_cpu_aws' && ${{ github.event_name == 'schedule' }} && is_nightly=1 && tf_project_name='tf_nightly_cpu_aws'
- echo "PyPI project name:" $tf_project_name
- CI_DOCKER_BUILD_EXTRA_PARAMS="--build-arg py_major_minor_version=${{ matrix.pyver }} --build-arg is_nightly=${is_nightly} --build-arg tf_project_name=${tf_project_name}" \
- ./tensorflow/tools/ci_build/ci_build.sh cpu.arm64 bash tensorflow/tools/ci_build/rel/ubuntu/cpu_arm64_test_build.sh
- - name: Upload pip wheel to PyPI
- if: github.event_name == 'schedule' || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v2')) # only if it is a scheduled nightly or tagged
- shell: bash
- run: python3 -m twine upload --verbose /home/ubuntu/actions-runner/_work/tensorflow/tensorflow/whl/* -u "__token__" -p ${{ secrets.AWS_PYPI_ACCOUNT_TOKEN }}
diff --git a/.github/workflows/arm-ci-extended-cpp.yml b/.github/workflows/arm-ci-extended-cpp.yml
deleted file mode 100644
index e648297..0000000
--- a/.github/workflows/arm-ci-extended-cpp.yml
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 2022 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ==============================================================================
-
-name: ARM CI Extended C++
-
-on:
- push:
- tags:
- - v2.**
- schedule:
- - cron: '0 2 * * *'
-
-permissions:
- contents: read
-
-jobs:
- build:
- if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
- runs-on: [self-hosted, linux, ARM64]
- strategy:
- matrix:
- pyver: ['3.10']
- steps:
- - name: Stop old running containers (if any)
- shell: bash
- run: |
- running_containers=$(docker ps -q) && \
- if [[ $running_containers == "" ]]; then
- echo "No running containers";
- else
- echo "Running container(s) found" && \
- docker stop $running_containers;
- fi
- docker container prune -f
- docker image prune -af
- - name: Clean repository
- shell: bash
- run: find /home/ubuntu/actions-runner/_work/tensorflow/tensorflow/. -name . -o -prune -exec sudo rm -rf -- {} + || true
- - name: Checkout repository for nightly (skipped for releases)
- if: ${{ github.event_name == 'schedule' }}
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- with:
- ref: 'nightly'
- - name: Checkout repository
- if: ${{ github.event_name == 'push' }}
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- - name: Build binary and run C++ tests
- shell: bash
- run: |
- is_nightly=0 && tf_project_name='tf_ci_ext_c' && ${{ github.event_name == 'schedule' }} && is_nightly=1 && tf_project_name='tf_nightly_ci_ext_c'
- CI_DOCKER_BUILD_EXTRA_PARAMS="--build-arg py_major_minor_version=${{ matrix.pyver }} --build-arg is_nightly=${is_nightly} --build-arg tf_project_name=${tf_project_name}" \
- ./tensorflow/tools/ci_build/ci_build.sh cpu.arm64 bash tensorflow/tools/ci_build/rel/ubuntu/cpu_arm64_test_cpp.sh
diff --git a/.github/workflows/arm-ci-extended.yml b/.github/workflows/arm-ci-extended.yml
deleted file mode 100644
index 01ce70b..0000000
--- a/.github/workflows/arm-ci-extended.yml
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 2022 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ==============================================================================
-
-name: ARM CI Extended
-
-on:
- push:
- tags:
- - v2.**
- schedule:
- - cron: '0 4 * * *'
-
-permissions:
- contents: read
-
-jobs:
- build:
- if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
- runs-on: [self-hosted, linux, ARM64]
- strategy:
- fail-fast: false
- matrix:
- pyver: ['3.9', '3.10', '3.11']
- steps:
- - name: Stop old running containers (if any)
- shell: bash
- run: |
- running_containers=$(docker ps -q) && \
- if [[ $running_containers == "" ]]; then
- echo "No running containers";
- else
- echo "Running container(s) found" && \
- docker stop $running_containers;
- fi
- docker container prune -f
- docker image prune -af
- - name: Clean repository
- shell: bash
- run: find /home/ubuntu/actions-runner/_work/tensorflow/tensorflow/. -name . -o -prune -exec sudo rm -rf -- {} + || true
- - name: Checkout repository for nightly (skipped for releases)
- if: ${{ github.event_name == 'schedule' }}
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- with:
- ref: 'nightly'
- - name: Checkout repository
- if: ${{ github.event_name == 'push' }}
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- - name: Build binary and run python tests on nightly for all python versions
- shell: bash
- run: |
- is_nightly=0 && tf_project_name='tf_ci_ext' && ${{ github.event_name == 'schedule' }} && is_nightly=1 && tf_project_name='tf_nightly_ci_ext'
- CI_DOCKER_BUILD_EXTRA_PARAMS="--build-arg py_major_minor_version=${{ matrix.pyver }} --build-arg is_nightly=${is_nightly} --build-arg tf_project_name=${tf_project_name}" \
- ./tensorflow/tools/ci_build/ci_build.sh cpu.arm64 bash tensorflow/tools/ci_build/rel/ubuntu/cpu_arm64_test.sh
diff --git a/.github/workflows/arm-ci.yml b/.github/workflows/arm-ci.yml
deleted file mode 100644
index 96467eb..0000000
--- a/.github/workflows/arm-ci.yml
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 2022 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ==============================================================================
-
-name: ARM CI
-
-on:
- push:
- branches:
- - master
- - r2.**
- pull_request:
- types: [labeled, opened, synchronize, reopened]
- branches:
- - master
- - r2.**
-
-permissions:
- contents: read
-
-jobs:
- build:
- # Don't do this in forks, and if labeled, only for 'kokoro:force-run'
- if: github.repository == 'tensorflow/tensorflow' && (github.event.action != 'labeled' || (github.event.action == 'labeled' && github.event.label.name == 'kokoro:force-run'))
- runs-on: [self-hosted, linux, ARM64]
- strategy:
- matrix:
- pyver: ['3.10']
- steps:
- - name: Stop old running containers (if any)
- shell: bash
- run: |
- running_containers=$(docker ps -q) && \
- if [[ $running_containers == "" ]]; then
- echo "No running containers";
- else
- echo "Running container(s) found" && \
- docker stop $running_containers;
- fi
- docker container prune -f
- - name: Clean repository
- shell: bash
- run: find /home/ubuntu/actions-runner/_work/tensorflow/tensorflow/. -name . -o -prune -exec sudo rm -rf -- {} + || true
- - name: Checkout repository
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- - name: Build binary and run python tests
- shell: bash
- run: |
- CI_DOCKER_BUILD_EXTRA_PARAMS="--pull --build-arg py_major_minor_version=${{ matrix.pyver }} --build-arg is_nightly=1 --build-arg tf_project_name=tf_nightly_ci" \
- ./tensorflow/tools/ci_build/ci_build.sh cpu.arm64 bash tensorflow/tools/ci_build/rel/ubuntu/cpu_arm64_test.sh
diff --git a/.github/workflows/cffconvert.yml b/.github/workflows/cffconvert.yml
deleted file mode 100644
index 49e2408..0000000
--- a/.github/workflows/cffconvert.yml
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 2022 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ==============================================================================
-
-name: cffconvert
-
-on:
- push:
- paths:
- - CITATION.cff
-
-permissions:
- contents: read
-
-jobs:
- validate:
- if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
- name: "validate"
- runs-on: ubuntu-latest
- steps:
- - name: Check out a copy of the repository
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
-
- - name: Check whether the citation metadata from CITATION.cff is valid
- uses: citation-file-format/cffconvert-github-action@4cf11baa70a673bfdf9dad0acc7ee33b3f4b6084 # v2.0.0
- with:
- args: "--validate"
diff --git a/.github/workflows/create_issue.js b/.github/workflows/create_issue.js
deleted file mode 100644
index eca2095..0000000
--- a/.github/workflows/create_issue.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * @license
- * Copyright 2021 Google LLC. All Rights Reserved.
- * Licensed 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.
- * =============================================================================
- */
-
-/** Extracts PR from commit message and creates a GitHub Issue on Rollback of PR
- Created issue is assigned to original PR owner and reviewer.
-
- @param {!object}
- github enables querying for PR and also create issue using rest endpoint
- context has the commit message details in the payload
- @return {string} Returns the issue number and title
-*/
-module.exports = async ({github, context}) => {
- const rollback_commit = context.payload.head_commit.id;
- const pr_match_groups = context.payload.head_commit.message.match(/\Rollback of PR #(\d+).*/) || [];
- if (pr_match_groups.length != 2) {
- console.log(`PR Number not found in ${context.payload.head_commit.message}`);
- throw "Error extracting PR Number from commit message";
- }
- const pr_number = parseInt(pr_match_groups[1]);
- const owner = context.payload.repository.owner.name;
- const repo = context.payload.repository.name;
- console.log(`Original PR: ${pr_number} and Rollback Commit: ${rollback_commit}`);
- // Get the Original PR Details
- const pr_resp = await github.rest.pulls.get({
- owner,
- repo,
- pull_number: pr_number
- });
- if (pr_resp.status != 200 || pr_resp.data.state != 'closed') {
- console.log(`PR:{pr_number} is not found or closed. Not a valid condition to create an issue.`);
- console.log(pr_resp);
- throw `PR:{pr_number} needs to be valid and closed (merged)`;
- }
- const pr_title = pr_resp.data.title;
- // Assign to PR owner and reviewers
- const assignees = pr_resp.data.assignees.concat(pr_resp.data.requested_reviewers);
- let assignee_logins = assignees.map(x => x.login);
- assignee_logins.push(pr_resp.data.user.login);
- console.log(assignee_logins);
- // Create an new GH Issue and reference the Original PR
- const resp = await github.rest.issues.create({
- owner,
- repo,
- assignees: assignee_logins,
- title: `Issue created for Rollback of PR #${pr_number}: ${pr_title}`,
- body: `Merged PR #${pr_number} is rolled back in ${rollback_commit}.
- Please follow up with the reviewer and close this issue once its resolved.`
- });
- return `Issue created: ${resp.data.number} with Title: ${resp.data.title}`;
-};
diff --git a/.github/workflows/issue-on-pr-rollback.yml b/.github/workflows/issue-on-pr-rollback.yml
deleted file mode 100644
index 459b99b..0000000
--- a/.github/workflows/issue-on-pr-rollback.yml
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 2021 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ==============================================================================
-
-name: Creates a GitHub Issue when a PR Rolled back via Commit to Master
-on:
- push:
- branches:
- - master
-
-permissions: {}
-
-jobs:
- create-issue-on-pr-rollback:
- runs-on: ubuntu-latest
- permissions:
- contents: read
- issues: write
- pull-requests: read
- if: |
- github.repository == 'tensorflow/tensorflow' &&
- startsWith(github.event.head_commit.message, 'Rollback of PR #')
- steps:
- - name: Checkout repo
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- - name: Create a new Github Issue
- uses: actions/github-script@d556feaca394842dc55e4734bf3bb9f685482fa0 # v6.3.3
- with:
- github-token: ${{secrets.GITHUB_TOKEN}}
- script: |
- const script = require('./.github/workflows/create_issue.js')
- console.log(await script({github, context}))
diff --git a/.github/workflows/pylint-presubmit.yml b/.github/workflows/pylint-presubmit.yml
deleted file mode 100644
index 53e2253..0000000
--- a/.github/workflows/pylint-presubmit.yml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2021 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ==============================================================================
-
-name: PyLint
-on:
- pull_request:
- paths:
- - '**.py'
-
-permissions:
- contents: read
-
-jobs:
- build:
- name: PyLint
- runs-on: ubuntu-latest
- steps:
- - name: Checkout code
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- - name: Get file changes
- id: get_file_changes
- uses: trilom/file-changes-action@a6ca26c14274c33b15e6499323aac178af06ad4b # v1.2.4
- with:
- output: ' '
- - name: Report list of changed files
- run: |
- echo Changed files: ${{ steps.get_file_changes.outputs.files }}
- - name: Set up Python 3.9
- uses: actions/setup-python@2c3dd9e7e29afd70cc0950079bde6c979d1f69f9 # v4.3.1
- with:
- python-version: "3.9"
- - name: Install Python dependencies
- run: |
- python -m pip install --upgrade pip
- pip install pylint==2.13.9 numpy wheel
- - name: Run PyLint on changed files
- run: |
- echo "${{ steps.get_file_changes.outputs.files}}" | tr " " "\n" | grep ".py$" | xargs pylint --rcfile=tensorflow/tools/ci_build/pylintrc
diff --git a/.github/workflows/release-branch-cherrypick.yml b/.github/workflows/release-branch-cherrypick.yml
deleted file mode 100644
index 87b33bb..0000000
--- a/.github/workflows/release-branch-cherrypick.yml
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 2022 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ==============================================================================
-
-# Usage: Go to
-# https://github.com/tensorflow/tensorflow/actions/workflows/release-branch-cherrypick.yml
-# and click "Run Workflow." Leave "Use Workflow From" set to "master", then
-# input the branch name and paste the cherry-pick commit and click Run. A PR
-# will be created.
-
-name: Release Branch Cherrypick
-on:
- workflow_dispatch:
- inputs:
- # We use this instead of the "run on branch" argument because GitHub looks
- # on that branch for a workflow.yml file, and we'd have to cherry-pick
- # this file into those branches.
- release_branch:
- description: 'Release branch name (e.g. r2.9)'
- required: true
- type: string
- git_commit:
- description: 'Git commit to cherry-pick'
- required: true
- type: string
-
-permissions:
- contents: read
-
-jobs:
- cherrypick:
- name: Cherrypick to ${{ github.event.inputs.release_branch}} - ${{ github.event.inputs.git_commit }}
- runs-on: ubuntu-latest
- if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
- steps:
- - name: Checkout code
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- with:
- ref: ${{ github.event.inputs.release_branch }}
- - name: Get some helpful info for formatting
- id: cherrypick
- run: |
- git config --global user.name "TensorFlow Release Automation"
- git config --global user.email "jenkins@tensorflow.org"
- git fetch origin master
- git cherry-pick ${{ github.event.inputs.git_commit }}
- echo "SHORTSHA=$(git log -1 ${{ github.event.inputs.git_commit }} --format="%h")" >> "$GITHUB_OUTPUT"
- echo "TITLE=$(git log -1 ${{ github.event.inputs.git_commit }} --format="%s")" >> "$GITHUB_OUTPUT"
- - name: Create Pull Request with changes
- uses: peter-evans/create-pull-request@2b011faafdcbc9ceb11414d64d0573f37c774b04 # v4.2.3
- with:
- title: '${{ github.event.inputs.release_branch }} cherry-pick: ${{ steps.cherrypick.outputs.SHORTSHA }} "${{ steps.cherrypick.outputs.TITLE }}"'
- committer: TensorFlow Release Automation <jenkins@tensorflow.org>
- token: ${{ secrets.JENKINS_TOKEN }}
- base: ${{ github.event.inputs.release_branch }}
- branch: ${{ github.event.inputs.release_branch }}-${{ steps.cherrypick.outputs.SHORTSHA }}
- reviewers: learning-to-play
- body: |
- Refer to the original commit: https://github.com/tensorflow/tensorflow/commit/${{ github.event.inputs.git_commit }}
-
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
deleted file mode 100644
index 1c520aa..0000000
--- a/.github/workflows/scorecards-analysis.yml
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 2022 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ============================================================================
-
-name: Scorecards supply-chain security
-on:
- # Only the default branch is supported.
- branch_protection_rule:
- schedule:
- - cron: '44 15 * * 5'
- push:
- branches: [ master ]
-
-# Declare default permissions as read only.
-permissions: read-all
-
-jobs:
- analysis:
- if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
- name: Scorecards analysis
- runs-on: ubuntu-latest
- permissions:
- # Needed to upload the results to code-scanning dashboard.
- security-events: write
- id-token: write
-
- steps:
- - name: "Checkout code"
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- with:
- persist-credentials: false
-
- - name: "Run analysis"
- uses: ossf/scorecard-action@15c10fcf1cf912bd22260bfec67569a359ab87da # v2.1.1
- with:
- results_file: results.sarif
- results_format: sarif
- # Publish the results to enable scorecard badges. For more details, see
- # https://github.com/ossf/scorecard-action#publishing-results.
- # For private repositories, `publish_results` will automatically be set to `false`,
- # regardless of the value entered here.
- publish_results: true
-
- # Upload the results as artifacts (optional).
- - name: "Upload artifact"
- uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1
- with:
- name: SARIF file
- path: results.sarif
- retention-days: 5
-
- # Upload the results to GitHub's code scanning dashboard.
- - name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@896079047b4bb059ba6f150a5d87d47dde99e6e5 # v2.11.6
- with:
- sarif_file: results.sarif
diff --git a/.github/workflows/sigbuild-docker-branch.yml b/.github/workflows/sigbuild-docker-branch.yml
deleted file mode 100644
index 108fe47..0000000
--- a/.github/workflows/sigbuild-docker-branch.yml
+++ /dev/null
@@ -1,86 +0,0 @@
-# Copyright 2022 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ==============================================================================
-
-name: Upload SIG Build docker containers modified for release branches
-
-on:
- workflow_dispatch:
- push:
- paths:
- - '.github/workflows/sigbuild-docker-branch.yml'
- - 'tensorflow/tools/tf_sig_build_dockerfiles/**'
- - '!tensorflow/tools/tf_sig_build_dockerfiles/README.md'
- branches:
- - "r[1-9].[0-9]+"
-
-permissions:
- contents: read
-
-jobs:
- docker:
- if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
- runs-on: ubuntu-latest
- strategy:
- matrix:
- python-version: [python3.9, python3.10, python3.11]
- steps:
- - name: Delete unnecessary tools folder
- run: rm -rf /opt/hostedtoolcache
- -
- name: Checkout
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- -
- name: Set up Docker Buildx
- uses: docker/setup-buildx-action@8c0edbc76e98fa90f69d9a2c020dcb50019dc325 # v2.2.1
- -
- name: Login to DockerHub
- uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a # v2.1.0
- with:
- username: ${{ secrets.DOCKERHUB_USERNAME }}
- password: ${{ secrets.DOCKERHUB_TOKEN }}
- -
- name: Login to GCR
- uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a # v2.1.0
- with:
- registry: gcr.io
- username: _json_key
- password: ${{ secrets.GCP_CREDS }}
- -
- name: Generate variables for cache busting and tag naming
- run: |
- echo "DATE=$(date +'%Y-%m-%d')" >> "$GITHUB_OUTPUT"
- # Converts r2.9 to just 2.9
- echo "REF=$(echo $GITHUB_REF_NAME | sed 's/r//g')" >> "$GITHUB_OUTPUT"
- id: vars
- -
- name: Build and push
- id: docker_build
- uses: docker/build-push-action@c56af957549030174b10d6867f20e78cfd7debc5 # v3.2.0
- with:
- push: true
- context: ./tensorflow/tools/tf_sig_build_dockerfiles
- target: devel
- build-args: |
- PYTHON_VERSION=${{ matrix.python-version }}
- CACHEBUSTER=${{ steps.vars.outputs.DATE }}
- tags: |
- tensorflow/build:${{ steps.vars.outputs.REF }}-${{ matrix.python-version }}
- gcr.io/tensorflow-sigs/build:${{ steps.vars.outputs.REF }}-${{ matrix.python-version }}
- cache-from: type=registry,ref=tensorflow/build:${{ steps.vars.outputs.REF }}-${{ matrix.python-version }}
- cache-to: type=inline
- -
- name: Image digest
- run: echo ${{ steps.docker_build.outputs.digest }}
-
diff --git a/.github/workflows/sigbuild-docker-presubmit.yml b/.github/workflows/sigbuild-docker-presubmit.yml
deleted file mode 100644
index c61e65e..0000000
--- a/.github/workflows/sigbuild-docker-presubmit.yml
+++ /dev/null
@@ -1,97 +0,0 @@
-# Copyright 2022 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ==============================================================================
-
-name: Build SIG Build containers as presubmits
-
-on:
- pull_request:
- types: [labeled, opened, synchronize, reopened]
- paths:
- - '.github/workflows/sigbuild-docker-presubmit.yml'
- - 'tensorflow/tools/tf_sig_build_dockerfiles/**'
- - '!tensorflow/tools/tf_sig_build_dockerfiles/README.md'
-
-permissions:
- contents: read
-
-jobs:
- docker:
- if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
- runs-on: ubuntu-latest
- strategy:
- matrix:
- python-version: [python3.9, python3.10, python3.11]
- permissions:
- contents: read
- pull-requests: write
- steps:
- - name: Delete unnecessary tools folder
- run: |
- df -h
- rm -rf /opt/hostedtoolcache
- df -h
- -
- name: Checkout
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- -
- name: Set up Docker Buildx
- uses: docker/setup-buildx-action@8c0edbc76e98fa90f69d9a2c020dcb50019dc325 # v2.2.1
- -
- name: Login to GCR
- if: contains(github.event.pull_request.labels.*.name, 'build and push to gcr.io for staging')
- uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a # v2.1.0
- with:
- registry: gcr.io
- username: _json_key
- password: ${{ secrets.GCP_CREDS }}
- -
- name: Grab the date to do cache busting (assumes same day OK to keep)
- run: |
- echo "DATE=$(date +'%Y-%m-%d')" >> "$GITHUB_OUTPUT"
- id: date
- -
- name: Build containers, and push to GCR only if the 'build and push to gcr.io for staging' label is applied
- id: docker_build
- uses: docker/build-push-action@c56af957549030174b10d6867f20e78cfd7debc5 # v3.2.0
- with:
- push: ${{ contains(github.event.pull_request.labels.*.name, 'build and push to gcr.io for staging') }}
- context: ./tensorflow/tools/tf_sig_build_dockerfiles
- target: devel
- build-args: |
- PYTHON_VERSION=${{ matrix.python-version }}
- CACHEBUSTER=${{ steps.date.outputs.DATE }}
- tags: |
- gcr.io/tensorflow-sigs/build:${{ github.event.number }}-${{ matrix.python-version }}
- cache-from: |
- type=registry,ref=tensorflow/build:latest-${{ matrix.python-version }}
- type=registry,ref=gcr.io/tensorflow-sigs/build:${{ github.event.number }}-${{ matrix.python-version }}
- cache-to: type=inline
- -
- name: Add a comment with the pushed containers
- uses: mshick/add-pr-comment@a65df5f64fc741e91c59b8359a4bc56e57aaf5b1 # v2
- if: contains(github.event.pull_request.labels.*.name, 'build and push to gcr.io for staging')
- with:
- repo-token: ${{ secrets.GITHUB_TOKEN }}
- message: |
- I pushed these containers:
-
- - `gcr.io/tensorflow-sigs/build:${{ github.event.number }}-python3.11`
- - `gcr.io/tensorflow-sigs/build:${{ github.event.number }}-python3.10`
- - `gcr.io/tensorflow-sigs/build:${{ github.event.number }}-python3.9`
-
- Re-apply the `build and push to gcr.io for staging` label to rebuild and push again. This comment will only be posted once.
- -
- name: Print image digest
- run: echo ${{ steps.docker_build.outputs.digest }}
diff --git a/.github/workflows/sigbuild-docker.yml b/.github/workflows/sigbuild-docker.yml
deleted file mode 100644
index ce9b99c..0000000
--- a/.github/workflows/sigbuild-docker.yml
+++ /dev/null
@@ -1,95 +0,0 @@
-# Copyright 2022 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ==============================================================================
-
-name: Upload SIG Build docker containers regularly
-
-on:
- workflow_dispatch:
- schedule:
- # Run once a week on Sunday at midnight. See http://crontab.guru
- - cron: '0 0 * * 0'
- push:
- paths:
- - '.github/workflows/sigbuild-docker.yml'
- - 'tensorflow/tools/tf_sig_build_dockerfiles/**'
- - '!tensorflow/tools/tf_sig_build_dockerfiles/README.md'
- branches:
- - master
-
-permissions:
- contents: read
-
-jobs:
- docker:
- if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
- runs-on: ubuntu-latest
- strategy:
- matrix:
- python-version: [python3.9, python3.10, python3.11]
- steps:
- - name: Delete unnecessary tools folder
- run: rm -rf /opt/hostedtoolcache
- -
- name: Checkout
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- -
- name: Set up Docker Buildx
- uses: docker/setup-buildx-action@8c0edbc76e98fa90f69d9a2c020dcb50019dc325 # v2.2.1
- -
- name: Login to DockerHub
- uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a # v2.1.0
- with:
- username: ${{ secrets.DOCKERHUB_USERNAME }}
- password: ${{ secrets.DOCKERHUB_TOKEN }}
- -
- name: Login to GCR
- uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a # v2.1.0
- with:
- registry: gcr.io
- username: _json_key
- password: ${{ secrets.GCP_CREDS }}
- -
- name: Grab the upcoming TF version to tag this container
- run: |
- # [[:digit:]] searches for numbers and \+ joins them together
- major_version=$(grep "^#define TF_MAJOR_VERSION" ./tensorflow/core/public/version.h | grep -o "[[:digit:]]\+")
- minor_version=$(grep "^#define TF_MINOR_VERSION" ./tensorflow/core/public/version.h | grep -o "[[:digit:]]\+")
- echo "TF_VERSION=${major_version}.${minor_version}" >> "$GITHUB_OUTPUT"
- # Also get the current date to do cache busting. Assumes one day
- # is an ok range for rebuilds
- echo "DATE=$(date +'%Y-%m-%d')" >> "$GITHUB_OUTPUT"
- id: tf-version
- -
- name: Build and push
- id: docker_build
- uses: docker/build-push-action@c56af957549030174b10d6867f20e78cfd7debc5 # v3.2.0
- with:
- push: true
- context: ./tensorflow/tools/tf_sig_build_dockerfiles
- target: devel
- build-args: |
- PYTHON_VERSION=${{ matrix.python-version }}
- CACHEBUSTER=${{ steps.tf-version.outputs.DATE }}
- tags: |
- tensorflow/build:latest-${{ matrix.python-version }}
- tensorflow/build:${{ steps.tf-version.outputs.TF_VERSION }}-${{ matrix.python-version }}
- gcr.io/tensorflow-sigs/build:latest-${{ matrix.python-version }}
- gcr.io/tensorflow-sigs/build:${{ steps.tf-version.outputs.TF_VERSION }}-${{ matrix.python-version }}
- cache-from: type=registry,ref=tensorflow/build:latest-${{ matrix.python-version }}
- cache-to: type=inline
- -
- name: Image digest
- run: echo ${{ steps.docker_build.outputs.digest }}
-
diff --git a/.github/workflows/stale-issues.yml b/.github/workflows/stale-issues.yml
deleted file mode 100644
index 84118ac..0000000
--- a/.github/workflows/stale-issues.yml
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 2023 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ============================================================================
-
-name: Close inactive issues
-on:
- schedule:
- - cron: "30 1 * * *"
-
-permissions:
- contents: read
-
-jobs:
- close-issues:
- # Don't do this in forks
- if: github.repository == 'tensorflow/tensorflow'
- runs-on: ubuntu-latest
- permissions:
- issues: write
- pull-requests: write
- steps:
- - name: Awaiting response issues
- uses: actions/stale@v7
- with:
- #Comma separated list of labels that can be assigned to issues to exclude them from being marked as stale
- exempt-issue-labels: 'override-stale'
- #Comma separated list of labels that can be assigned to PRs to exclude them from being marked as stale
- exempt-pr-labels: "override-stale"
- #Limit the No. of API calls in one run default value is 30.
- operations-per-run: 1000
- days-before-issue-stale: 7
- days-before-issue-close: 7
- stale-issue-label: "stale"
- # reason for closed the issue default value is not_planned
- close-issue-reason: completed
- # List of labels to remove when issues/PRs unstale.
- labels-to-remove-when-unstale: 'stat:awaiting response'
- only-labels: "stat:awaiting response"
- stale-issue-message: >
- This issue is stale because it has been open for 7 days with no activity.
- It will be closed if no further activity occurs. Thank you.
- close-issue-message: >
- This issue was closed because it has been inactive for 7 days since being marked as stale.
- Please reopen if you'd like to work on this further.
- days-before-pr-stale: 14
- days-before-pr-close: 14
- stale-pr-message: "This PR is stale because it has been open for 14 days with no activity. It will be closed if no further activity occurs. Thank you."
- close-pr-message: "This PR was closed because it has been inactive for 14 days since being marked as stale. Please reopen if you'd like to work on this further."
- repo-token: ${{ secrets.GITHUB_TOKEN }}
- - name: Contribution issues
- uses: actions/stale@v7
- with:
- #Comma separated list of labels that can be assigned to issues to exclude them from being marked as stale
- exempt-issue-labels: 'override-stale'
- #Comma separated list of labels that can be assigned to PRs to exclude them from being marked as stale
- exempt-pr-labels: "override-stale"
- #Limit the No. of API calls in one run default value is 30.
- operations-per-run: 1000
- days-before-issue-stale: 180
- days-before-issue-close: 365
- stale-issue-label: "stale"
- # reason for closed the issue default value is not_planned
- close-issue-reason: completed
- # List of labels to remove when issues/PRs unstale.
- labels-to-remove-when-unstale: "stat:contribution welcome,stat:good first issue"
- any-of-labels: "stat:contribution welcome,stat:good first issue"
- stale-issue-message: >
- This issue is stale because it has been open for 180 days with no activity.
- It will be closed if no further activity occurs. Thank you.
- close-issue-message: >
- This issue was closed because it has been inactive for 1 year.
- repo-token: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.github/workflows/trusted-partners.yml b/.github/workflows/trusted-partners.yml
deleted file mode 100644
index f6f4051..0000000
--- a/.github/workflows/trusted-partners.yml
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 2021 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ==============================================================================
-
-name: Trusted Partner PR
-on:
- pull_request_target:
-
-permissions:
- contents: read
-
-jobs:
- assign-partner-tags:
- runs-on: ubuntu-latest
- permissions:
- # Needed to attach tags into the PR
- issues: write
- contents: write
- pull-requests: write
- if: |
- github.event.pull_request.draft == false &&
- github.event.sender.type == 'User'
- steps:
- - name: Checkout repo
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- - name: Trusted-Partners-PR
- uses: actions/github-script@d556feaca394842dc55e4734bf3bb9f685482fa0 # v6.3.3
- with:
- github-token: ${{ secrets.GITHUB_TOKEN }}
- script: |
- const script = require('./.github/workflows/trusted_partners.js');
- const username = context.payload.pull_request.user.login;
- const domain = await script.get_email_domain({github, username});
- switch(domain) {
- case "intel.com":
- console.log(await script.filter({github, context, domain}));
- break;
- case "apple.com":
- console.log(await script.filter({github, context, domain}));
- break;
- case "nvidia.com":
- console.log(await script.filter({github, context, domain}));
- break;
- case "linaro.org":
- console.log(await script.filter({github, context, domain}));
- break;
- case "arm.com":
- console.log(await script.filter({github, context, domain}));
- break;
- case "google.com":
- console.log("Googler. No action necessary");
- break;
- default:
- console.log("Skip Trusted Partner Action");
- }
diff --git a/.github/workflows/trusted_partners.js b/.github/workflows/trusted_partners.js
deleted file mode 100644
index 76746ee..0000000
--- a/.github/workflows/trusted_partners.js
+++ /dev/null
@@ -1,121 +0,0 @@
-/**
- * @license
- * Copyright 2021 Google LLC. All Rights Reserved.
- * Licensed 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.
- * =============================================================================
- */
-
-/** Get the domain of the user's email
-
- @param {!object}
- github enables querying for PR and also create issue using rest endpoint
- username has the login username of the Pull Request Event
- @return {string} Return the domain name of the user's email. Empty string if not found
-*/
-
-const get_email_domain = async ({github, username}) => {
- const user = await github.rest.users.getByUsername({
- username
- });
- if (user.status >= 400) {
- console.log(user);
- throw `Error Getting user data for ${username}`;
- }
- const email = user.data.email;
- let domain = "";
- if (email && email.lastIndexOf("@") != -1)
- domain = email.substring(email.lastIndexOf("@") +1);
- console.log(domain);
- return domain;
-};
-
-/** For trusted parters like Intel, we want to auto-run tests
- This allows us to reduce the delay to external partners
- Add Labels - kokoro:force-run
- The PR is also assigned to specific teams to fast track review
- Additional reviewers can be added manually based on PR contents
- @param {!object}
- github enables querying for PR and also create issue using rest endpoint
- context has the commit message details in the payload
- @return {string} Returns the message with labels attached and assignees added
-*/
-const filter_action = async ({github, context, domain}) => {
- const labels = ['kokoro:force-run'];
-
- let assignees = [];
- const title = context.payload.pull_request && context.payload.pull_request.title;
- const lowercased_title = (title || '').toLowerCase();
- const onednn_assignees = ['penpornk'];
- if (lowercased_title.includes('onednn')) assignees = onednn_assignees;
- const intel_windows_assignees = ['nitins17', 'learning-to-play'];
- if (lowercased_title.includes('intel') &&
- lowercased_title.includes('windows') && domain.includes('intel.com'))
- assignees = intel_windows_assignees;
- const apple_silicon_assignees = ['penpornk', 'nitins17'];
- if (lowercased_title.includes('apple') &&
- lowercased_title.includes('silicon') && domain.includes('apple.com'))
- assignees = apple_silicon_assignees;
- if (lowercased_title.includes('tf-trt') && domain.includes('nvidia.com')) {
- assignees.push(
- 'DEKHTIARJonathan', 'meena-at-work', 'nluehr', 'pjannaty', 'poulsbo');
- } else if (
- lowercased_title.includes('nvidia') && domain.includes('nvidia.com')) {
- if (lowercased_title.includes('jax')) {
- assignees.push('hawkinsp', 'yashk2810', 'skye');
- }
- if (lowercased_title.includes('xla') || lowercased_title.includes('gpu')) {
- assignees.push('cheshire', 'gcforster', 'reedwm', 'chsigg', 'xla-rotation');
- }
- if (lowercased_title.includes('tf')) {
- assignees.push('rohan100jain', 'bfontain');
- }
- }
- if (lowercased_title.includes('linaro') && domain.includes('linaro.org')) {
- if (lowercased_title.includes('arm_ci')) {
- assignees.push('nitins17', 'penpornk');
- }
- }
- if (lowercased_title.includes('tf-mot') && lowercased_title.includes('arm') &&
- domain.includes('arm.com')) {
- assignees.push('rino20', 'yyoon', 'lenscloth');
- }
-
- const resp_label = await github.rest.issues.addLabels({
- issue_number: context.issue.number,
- owner: context.repo.owner,
- repo: context.repo.repo,
- labels: labels
- });
- if (resp_label.status >= 400) {
- console.log(resp_label);
- throw "Error adding labels to PR";
- }
- if (assignees.length > 0) {
- const resp_assign = await github.rest.issues.addAssignees({
- issue_number: context.issue.number,
- owner: context.repo.owner,
- repo: context.repo.repo,
- assignees: assignees
- });
- if (resp_assign.status >= 400) {
- console.log(resp_assign);
- throw "Error adding assignee to PR";
- }
- }
- return `PR Updated successfully with Labels: ${labels} with Assignees: ${assignees}`;
-};
-
-module.exports = {
- filter: filter_action,
- get_email_domain
-};
diff --git a/.github/workflows/update-nightly.yml b/.github/workflows/update-nightly.yml
deleted file mode 100644
index 282f030..0000000
--- a/.github/workflows/update-nightly.yml
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2019 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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.
-# ============================================================================
-
-on:
- workflow_dispatch: # Allow manual triggers
- schedule:
- - cron: 0 4 * * * # 4am UTC is 9pm PDT and 8pm PST
-name: Set nightly branch to master HEAD
-
-permissions: {}
-
-jobs:
- master-to-nightly:
- if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
- runs-on: ubuntu-latest
- permissions:
- contents: write
- steps:
- - uses: zofrex/mirror-branch@a8809f0b42f9dfe9b2c5c2162a46327c23d15266 # v1.0.3
- name: Set nightly branch to master HEAD
- with:
- target-branch: 'nightly'
diff --git a/.github/workflows/update-rbe.yml b/.github/workflows/update-rbe.yml
deleted file mode 100644
index ca22041..0000000
--- a/.github/workflows/update-rbe.yml
+++ /dev/null
@@ -1,119 +0,0 @@
-# Copyright 2022 The TensorFlow Authors. All Rights Reserved.
-#
-# Licensed 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 updates tensorflow/tools/toolchains/remote_config/configs.bzl
-# to reference the most recent versions of the SIG Build Docker images.
-name: Update RBE Configs
-on:
- workflow_dispatch:
-
-permissions:
- contents: read
-
-jobs:
- rbe:
- name: Update RBE Configs
- runs-on: ubuntu-latest
- if: github.repository == 'tensorflow/tensorflow' # Don't do this in forks
- steps:
- - name: Checkout code
- uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b # v3.2.0
- - name: Update the RBE Configs
- run: |
- function map() {
- # The "digest" that allows us to pull an image is not the digest as
- # returned by the API, but a sha256sum of the entire chunk of image
- # metadata. gcr.io helpfully includes it in the header of the response
- # as docker-content-digest: sha256:[digest]. Note we use egrep to
- # match exactly sha256:<hash> because curl may include a ^M symbol at
- # the end of the line.
- # See https://cloud.google.com/architecture/using-container-images#exploring_image_manifests_digests_and_tags
- echo -n "Trying to map name $1 to tag $2... "
- digest=$(curl -s --head "https://gcr.io/v2/tensorflow-sigs/build/manifests/$2" | egrep -o "sha256:[[:alnum:]]*")
- # Find the line matching the regex "sigbuild-r2.9" (with quotes) and
- # replace just the digest portion in it
- sed -i"" "/\"$1\"/ s/sha256:[[:alnum:]]*/$digest/g" tensorflow/tools/toolchains/remote_config/configs.bzl
- echo "success."
- }
- # See https://github.com/tensorflow/tensorflow/blob/master/tensorflow/tools/toolchains/remote_config/configs.bzl
- # This is a mapping of name_container_map keys under sigbuild_tf_configs
- # to tag names on gcr.io/tensorflow-sigs/build.
- # TF 2.9
- map sigbuild-r2.9 2.9-python3.9
- map sigbuild-r2.9-python3.8 2.9-python3.8
- map sigbuild-r2.9-python3.9 2.9-python3.9
- map sigbuild-r2.9-python3.10 2.9-python3.10
- # TF 2.10
- map sigbuild-r2.10 2.10-python3.9
- map sigbuild-r2.10-python3.8 2.10-python3.8
- map sigbuild-r2.10-python3.9 2.10-python3.9
- map sigbuild-r2.10-python3.10 2.10-python3.10
- # TF 2.11
- map sigbuild-r2.11 2.11-python3.9
- map sigbuild-r2.11-python3.8 2.11-python3.8
- map sigbuild-r2.11-python3.9 2.11-python3.9
- map sigbuild-r2.11-python3.10 2.11-python3.10
- # WIP Clang Containers, used by TVCs
- map sigbuild-57469 57469-python3.9
- map sigbuild-57469-python3.8 57469-python3.8
- map sigbuild-57469-python3.9 57469-python3.9
- map sigbuild-57469-python3.10 57469-python3.10
- # TF 2.12
- map sigbuild-r2.12 2.12-python3.9
- map sigbuild-r2.12-python3.8 2.12-python3.8
- map sigbuild-r2.12-python3.9 2.12-python3.9
- map sigbuild-r2.12-python3.10 2.12-python3.10
- map sigbuild-r2.12-python3.11 2.12-python3.11
- # TF 2.12 + Clang (containers are the same, but env vars in configs.bzl are different)
- map sigbuild-r2.12-clang 2.12-python3.9
- map sigbuild-r2.12-clang-python3.8 2.12-python3.8
- map sigbuild-r2.12-clang-python3.9 2.12-python3.9
- map sigbuild-r2.12-clang-python3.10 2.12-python3.10
- map sigbuild-r2.12-clang-python3.11 2.12-python3.11
- # TF 2.13
- map sigbuild-r2.13 2.13-python3.9
- map sigbuild-r2.13-python3.8 2.13-python3.8
- map sigbuild-r2.13-python3.9 2.13-python3.9
- map sigbuild-r2.13-python3.10 2.13-python3.10
- map sigbuild-r2.13-python3.11 2.13-python3.11
- # TF 2.13 + Clang (containers are the same, but env vars in configs.bzl are different)
- map sigbuild-r2.13-clang 2.13-python3.9
- map sigbuild-r2.13-clang-python3.8 2.13-python3.8
- map sigbuild-r2.13-clang-python3.9 2.13-python3.9
- map sigbuild-r2.13-clang-python3.10 2.13-python3.10
- map sigbuild-r2.13-clang-python3.11 2.13-python3.11
- # TF 2.14
- map sigbuild-r2.14 2.14-python3.9
- map sigbuild-r2.14-python3.9 2.14-python3.9
- map sigbuild-r2.14-python3.10 2.14-python3.10
- map sigbuild-r2.14-python3.11 2.14-python3.11
- # TF 2.14 + Clang (containers are the same, but env vars in configs.bzl are different)
- map sigbuild-r2.14-clang 2.14-python3.9
- map sigbuild-r2.14-clang-python3.9 2.14-python3.9
- map sigbuild-r2.14-clang-python3.10 2.14-python3.10
- map sigbuild-r2.14-clang-python3.11 2.14-python3.11
- - name: Create Pull Request with changes
- uses: peter-evans/create-pull-request@2b011faafdcbc9ceb11414d64d0573f37c774b04 # v4.2.3
- with:
- title: Update the RBE images to the latest container versions
- committer: TensorFlow Release Automation <jenkins@tensorflow.org>
- token: ${{ secrets.JENKINS_TOKEN }}
- reviewers: angerson,mihaimaruseac,learning-to-play,nitins17
- body: |
- This PR was created by a GitHub Actions workflow to update all the SIG Build-based RBE containers to the most recent containers. See:
-
- - https://github.com/tensorflow/tensorflow/blob/master/tensorflow/tools/toolchains/remote_config/configs.bzl
- - https://github.com/tensorflow/tensorflow/blob/master/.github/workflows/update-rbe.yml