-
Notifications
You must be signed in to change notification settings - Fork 181
Download installApps and installTestApps as part of "Download Project Dependencies" #2101
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Download installApps and installTestApps as part of "Download Project Dependencies" #2101
Conversation
There was a problem hiding this 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 pull request moves the downloading of apps specified in installApps and installTestApps settings from the RunPipeline action to the DownloadProjectDependencies action. This improves error detection and build reliability by downloading dependencies upfront before the build pipeline runs.
Changes:
- Added functionality to DownloadProjectDependencies action to download app files from URLs in installApps/installTestApps settings
- Removed URL validation and secret resolution logic from RunPipeline action
- Updated RELEASENOTES.md to document the new behavior
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| RELEASENOTES.md | Documents the new behavior where URL-based dependencies are downloaded during the DownloadProjectDependencies action |
| Actions/DownloadProjectDependencies/DownloadProjectDependencies.Action.ps1 | Adds two new functions: Get-AppFileFromUrl for downloading files with retry logic, and DownloadDependenciesFromInstallApps for processing installApps/installTestApps settings |
| Actions/RunPipeline/RunPipeline.ps1 | Removes secret resolution and URL validation logic for installApps/installTestApps, now relies on JSON files from DownloadProjectDependencies |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Actions/DownloadProjectDependencies/DownloadProjectDependencies.Action.ps1
Outdated
Show resolved
Hide resolved
Actions/DownloadProjectDependencies/DownloadProjectDependencies.Action.ps1
Show resolved
Hide resolved
Actions/DownloadProjectDependencies/DownloadProjectDependencies.Action.ps1
Show resolved
Hide resolved
Actions/DownloadProjectDependencies/DownloadProjectDependencies.Action.ps1
Show resolved
Hide resolved
Actions/DownloadProjectDependencies/DownloadProjectDependencies.Action.ps1
Outdated
Show resolved
Hide resolved
Actions/DownloadProjectDependencies/DownloadProjectDependencies.Action.ps1
Show resolved
Hide resolved
Actions/DownloadProjectDependencies/DownloadProjectDependencies.Action.ps1
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
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 3 out of 3 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
❔What, Why & How
Currently
Apps defined in the installApps and installTestApps settings can either refer to files in the file system or URLs to files. If a URL is defined, then the Runpipeline action will check that the URL is reachable and Run-ALPipeline (in BCContainerHelper) will download the apps.
Proposed Change
We move the download of these apps to the "Download Project Dependencies" action. That way most dependencies should be downloaded to the runner before calling Run-ALPipeline. This action would still not resolve dependencies from NuGet. That's something we should add in the future.
Related to AB#618073
✅ Checklist