2.6 KiB
2.6 KiB
SK Azure DevOps Toolkit
Developer README for the Azure DevOps extension codebase.
For administrator-facing installation and usage guidance, see overview.md.
Tasks in this extension
AzureFederatedAuth@1- Requests an OIDC token for a selected AzureRM service connection (workload identity federation).
- Exports:
ARM_OIDC_TOKEN(secret)ARM_TENANT_IDARM_CLIENT_IDGIT_ACCESS_TOKEN(secret, optional)
CopyBlob@1- Copies a blob between Azure Storage accounts/containers using the selected AzureRM service connection.
ListBlobs@1- Lists blobs in a container (optional prefix) using the selected AzureRM service connection.
GetBlob@1- Downloads a blob to a local file path using the selected AzureRM service connection.
PutBlob@1- Uploads a local file as a blob using the selected AzureRM service connection.
SetupGitHubRelease@1- Downloads and installs a binary from the latest GitHub release and prepends it to PATH.
Repository layout
task/AzureFederatedAuth- task implementation and manifesttask/CopyBlob- task implementation and manifesttask/ListBlobs- task implementation and manifesttask/GetBlob- task implementation and manifesttask/PutBlob- task implementation and manifesttask/SetupGitHubRelease- task implementation and manifestshared- local npm package with shared OIDC/devops/blob helpersscripts/build.sh- builds tasks and packages the extensionexamples/azure-pipelines-smoke.yml- smoke pipeline example
Local development
Prerequisites:
- Node.js (LTS)
- npm
Install dependencies:
npm install
Build and package extension:
./scripts/build.sh
Build flow details:
- builds
sharedpackage, - packs it to
build/ado-sk-toolkit-shared.tgz, - installs that tarball into each task,
- compiles all tasks and creates VSIX.
Build output:
- shared package tarball in
build/ado-sk-toolkit-shared.tgz - Task JavaScript output in each task's
dist/ - Extension package (
.vsix) inbuild/
Validation pipeline
Use examples/azure-pipelines-smoke.yml to validate task execution end-to-end in Azure Pipelines.
Publishing notes (maintainers)
Publishing requires a Visual Studio Marketplace publisher and sharing the published extension with target Azure DevOps organizations.
Author
Slawomir Koszewski
AI Generated Content
Parts of this repository were generated with the assistance of AI. The author has reviewed and edited the AI-generated content to ensure accuracy and clarity.
License
MIT. See LICENSE.