Skip to content

ci: update CT python tools to support new endpoints#18027

Merged
reubeno merged 2 commits into
microsoft:4.0from
dmcilvaney:damcilva/4.0/pipelines/move_to_official_builds
Jul 15, 2026
Merged

ci: update CT python tools to support new endpoints#18027
reubeno merged 2 commits into
microsoft:4.0from
dmcilvaney:damcilva/4.0/pipelines/move_to_official_builds

Conversation

@dmcilvaney

Copy link
Copy Markdown
Contributor

CT endpoints are changing.
/api/Scenario/package is being deprecated in favor of:
/api/Scenario/official/packages and /api/Scenario/packages (which takes different inputs).

Clean up the linter issues in the CT package while refactoring to split the official and non-official build paths to avoid future footguns.

Copilot AI review requested due to automatic review settings July 15, 2026 18:52

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Migrates Control Tower package builds to the new official and scratch endpoints while separating their execution paths.

Changes:

  • Splits official and scratch package-build helpers and updates ADO pipelines.
  • Adds shared submission logic, stronger typing, and endpoint contract tests.
  • Adds Control Tower tests to dependency smoke CI and documents Python test conventions.

Reviewed changes

Copilot reviewed 15 out of 15 changed files in this pull request and generated no comments.

Show a summary per file
File Description
scripts/ci/control-tower/tests/test_package_build.py Tests endpoint payload contracts.
scripts/ci/control-tower/tests/requirements.txt Adds pinned test dependencies.
scripts/ci/control-tower/tests/conftest.py Configures helper imports.
scripts/ci/control-tower/run_scratch_package_build.py Adds scratch-build entry point.
scripts/ci/control-tower/run_prcheck.py Refactors payload construction and typing.
scripts/ci/control-tower/run_package_build.py Removes deprecated combined entry point.
scripts/ci/control-tower/run_official_package_build.py Adds official-build entry point.
scripts/ci/control-tower/package_build.py Centralizes package-build mechanics.
scripts/ci/control-tower/client.py Strengthens JSON typing and diagnostics.
.github/workflows/dependency-smoke.yml Runs Control Tower tests.
.github/workflows/ado/templates/pr-check-ct-stages.yml Uses the scratch endpoint helper.
.github/workflows/ado/templates/package-build-stages.yml Uses the official endpoint helper.
.github/workflows/ado/pr-check-ct.yml Configures scratch build environment.
.github/workflows/ado/package-build.yml Configures official build environment.
.github/instructions/python.instructions.md Documents Python testing practices.

Copilot AI review requested due to automatic review settings July 15, 2026 21:17
@dmcilvaney
dmcilvaney marked this pull request as ready for review July 15, 2026 21:19
@dmcilvaney
dmcilvaney requested a review from a team as a code owner July 15, 2026 21:19

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 15 out of 15 changed files in this pull request and generated 1 comment.

set -euo pipefail

python3 scripts/ci/control-tower/run_package_build.py \
python3 scripts/ci/control-tower/run_scratch_package_build.py \
@@ -0,0 +1,166 @@
"""Shared mechanics for Control Tower package-build entry points."""

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[Non-blocking] How far are we away from autogen'ing a proper python client library from CT OpenAPI?

@dmcilvaney
dmcilvaney force-pushed the damcilva/4.0/pipelines/move_to_official_builds branch from 6f56d94 to d61d01d Compare July 15, 2026 23:40
@reubeno
reubeno merged commit 9f7efd4 into microsoft:4.0 Jul 15, 2026
13 checks passed
@dmcilvaney
dmcilvaney deleted the damcilva/4.0/pipelines/move_to_official_builds branch July 16, 2026 00:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants