diff --git a/.github/workflows/claude-pr-review.yml b/.github/workflows/claude-pr-review.yml index 45c47087..b9efe76a 100644 --- a/.github/workflows/claude-pr-review.yml +++ b/.github/workflows/claude-pr-review.yml @@ -22,7 +22,7 @@ permissions: {} jobs: claude-review: name: Claude Code Review - runs-on: ubuntu-latest + runs-on: uipath-ubuntu-latest timeout-minutes: 15 # Trusted triggers only — this repo is public. diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 02ead00b..0d3ac884 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -16,7 +16,7 @@ permissions: jobs: analyze: name: Analyze Python code - runs-on: ubuntu-latest + runs-on: uipath-ubuntu-latest timeout-minutes: 15 permissions: security-events: write diff --git a/.github/workflows/conventional-commits.yml b/.github/workflows/conventional-commits.yml index 79c8c839..607920a6 100644 --- a/.github/workflows/conventional-commits.yml +++ b/.github/workflows/conventional-commits.yml @@ -16,7 +16,7 @@ permissions: jobs: check-conventional-commits: name: Check PR Title & Commit Messages - runs-on: ubuntu-latest + runs-on: uipath-ubuntu-latest timeout-minutes: 5 steps: diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 226b70c5..8bcbe319 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -41,7 +41,7 @@ env: jobs: publish: name: Build and push to GHCR - runs-on: ubuntu-latest + runs-on: uipath-ubuntu-latest # Skip semantic-release's own commit so we don't double-build on the # version-bump push. if: "!contains(github.event.head_commit.message, 'chore(release):')" @@ -65,17 +65,17 @@ jobs: echo "owner_lc=${OWNER_LC}" >> "$GITHUB_OUTPUT" - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 + uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0 - name: Log in to GHCR - uses: docker/login-action@v3 + uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push image - uses: docker/build-push-action@v6 + uses: docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # v6.19.2 with: context: . file: docker/Dockerfile diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 071cee59..ce1af59c 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -35,9 +35,9 @@ concurrency: jobs: publish: - runs-on: ubuntu-latest + runs-on: uipath-ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4.4.0 - name: Assemble the published tree run: | diff --git a/.github/workflows/pr-checks.yml b/.github/workflows/pr-checks.yml index 9f55e5b1..a94e7151 100644 --- a/.github/workflows/pr-checks.yml +++ b/.github/workflows/pr-checks.yml @@ -30,7 +30,7 @@ env: jobs: quality-gate: name: Quality Gate (Format, Lint, Type, Test, Security) - runs-on: ubuntu-latest + runs-on: uipath-ubuntu-latest timeout-minutes: 10 # Shared env for all steps: safe-chain min-age exclusions and a dummy @@ -163,14 +163,14 @@ jobs: # registry validates, and the uipath-specific code paths fail with a # clear hint instead of an import error. name: No-Extra Install (uipath optional) - runs-on: ubuntu-latest + runs-on: uipath-ubuntu-latest timeout-minutes: 5 steps: - name: Checkout code - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Set up Python 3.13 - uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: "3.13" @@ -208,7 +208,7 @@ jobs: windows-smoke: name: Windows Smoke Test - runs-on: windows-latest + runs-on: uipath-windows-latest # 15min headroom: the smoke task itself completes in ~7min, but the # actions/cache post-step on Windows is slow when ``.venv`` is large. # We also exclude ``.venv`` from the cached paths (uv re-creates it @@ -326,7 +326,7 @@ jobs: e2e-smoke: name: E2E Smoke Tests (Real API) - runs-on: ubuntu-latest + runs-on: uipath-ubuntu-latest timeout-minutes: 10 # Skip on fork PRs where secrets aren't available if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository @@ -509,7 +509,7 @@ jobs: live-tests: name: Live Integration Tests (Settings Enforcement + Cost Budget) - runs-on: ubuntu-24.04 + runs-on: uipath-ubuntu-24.04 timeout-minutes: 15 # Skip on fork PRs where secrets aren't available if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository @@ -680,7 +680,7 @@ jobs: codex-live-tests: name: Live Integration Tests (Codex) - runs-on: ubuntu-24.04 + runs-on: uipath-ubuntu-24.04 timeout-minutes: 15 # Skip on fork PRs where secrets aren't available. if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository @@ -756,7 +756,7 @@ jobs: byoa-live-tests: name: Live Integration Tests (BYOA Plugin) - runs-on: ubuntu-24.04 + runs-on: uipath-ubuntu-24.04 timeout-minutes: 15 # Skip on fork PRs where secrets aren't available. if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository @@ -834,7 +834,7 @@ jobs: action-dogfood: name: Action Dogfood (composite action, real API) - runs-on: ubuntu-latest + runs-on: uipath-ubuntu-latest timeout-minutes: 15 # Skip on fork PRs where secrets aren't available (matches e2e-smoke). if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository diff --git a/.github/workflows/publish-testpypi.yml b/.github/workflows/publish-testpypi.yml index 3bf1dbf6..c3dc6d7e 100644 --- a/.github/workflows/publish-testpypi.yml +++ b/.github/workflows/publish-testpypi.yml @@ -34,7 +34,7 @@ permissions: jobs: publish-testpypi: name: Build and publish to TestPyPI - runs-on: ubuntu-latest + runs-on: uipath-ubuntu-latest timeout-minutes: 10 environment: name: testpypi diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3d92f1e2..e642dab8 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -52,7 +52,7 @@ jobs: # GitHub-hosted so cutting a release does not depend on the self-hosted # `uipath-ubuntu-latest` pool. semantic-release, uv, twine, and the docker # buildx -> GHCR push all run fine here. - runs-on: ubuntu-latest + runs-on: uipath-ubuntu-latest timeout-minutes: 15 outputs: # Exposed so the downstream publish-pypi job gates on a version having been @@ -416,7 +416,7 @@ jobs: name: Publish to PyPI needs: release if: needs.release.outputs.version != '' - runs-on: ubuntu-latest + runs-on: uipath-ubuntu-latest timeout-minutes: 10 environment: name: pypi