Skip to content

Conversation

@kjohn-msft
Copy link
Collaborator

Packager updates pulled out to code base debt erasure (and revised a little further):
#224

Changes in this PR:

  1. Addition of build.bat / .sh in the src folder to package all components.
  2. Addition of publish.bat / .sh in the src folder to increment the manifest version and package all components. (reduces friction in PR for publish, i.e. new branch -> publish (at prompt) -> push branch -> PR)
  3. Removal of version information from multiple places and centralizing to the manifest source of truth that gets used in packaging.
  4. Moved packager scripts to a packager sub-folder. Updated references.
  5. Updated component naming to reduce confusion in multi-extension support scenarios.
  6. Cleanup output and removed misc. debt.

Example of Publish output now (a super-set of build / package) --
image

@kjohn-msft kjohn-msft added engg. hygiene Engineering hygiene related OE PR is considered near complete due to OE sign-off. labels Apr 18, 2025
@kjohn-msft kjohn-msft requested a review from feng-j678 April 18, 2025 23:06
@kjohn-msft kjohn-msft self-assigned this Apr 18, 2025
Copilot AI review requested due to automatic review settings April 18, 2025 23:06
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR enhances the packaging tooling by introducing separate publish scripts that increment the extension version and standardizing version handling across build components.

  • Adds new publish scripts for building and publishing components.
  • Centralizes version information by reading from a single manifest file and updates component naming.
  • Refactors core and extension packaging scripts to support the new auto-versioning workflow.

Reviewed Changes

Copilot reviewed 5 out of 12 changed files in this pull request and generated 2 comments.

File Description
src/tools/packager/Publish.py Introduces a new publish script with manifest-based version update.
src/tools/packager/Package-Core.py Refactors core packaging to accept the new version parameter and uses updated logging and timestamp generation.
src/tools/packager/Package-All.py Updates extension packaging with new file names and version handling adjustments.
src/core/src/bootstrap/Bootstrapper.py Updates log output to reflect the new build timestamp for version display.
Files not reviewed (7)
  • Makefile: Language not supported
  • src/build.bat: Language not supported
  • src/build.sh: Language not supported
  • src/extension/src/AzGPSLinuxPatchExtShim.sh: Language not supported
  • src/extension/src/HandlerManifest.json: Language not supported
  • src/publish.bat: Language not supported
  • src/publish.sh: Language not supported

@kjohn-msft kjohn-msft removed the OE PR is considered near complete due to OE sign-off. label Apr 18, 2025
@codecov
Copy link

codecov bot commented Apr 18, 2025

Codecov Report

Attention: Patch coverage is 80.68182% with 34 lines in your changes missing coverage. Please review.

Project coverage is 93.57%. Comparing base (651c97b) to head (bee9b66).

Files with missing lines Patch % Lines
src/core/tests/library/ExtStatusAsserter.py 73.56% 23 Missing ⚠️
src/core/tests/Test_ConfigurePatchingProcessor.py 76.31% 9 Missing ⚠️
.../core/src/core_logic/ConfigurePatchingProcessor.py 93.54% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #313      +/-   ##
==========================================
- Coverage   93.77%   93.57%   -0.21%     
==========================================
  Files         103      104       +1     
  Lines       17924    17992      +68     
==========================================
+ Hits        16809    16836      +27     
- Misses       1115     1156      +41     
Flag Coverage Δ
python27 ?
python312 93.57% <80.68%> (-0.21%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

engg. hygiene Engineering hygiene related

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants