Skip to content

Skip Deliver and Deploy when no app artifacts exist#2129

Open
Copilot wants to merge 15 commits intomainfrom
copilot/fix-deliver-to-blob-storage
Open

Skip Deliver and Deploy when no app artifacts exist#2129
Copilot wants to merge 15 commits intomainfrom
copilot/fix-deliver-to-blob-storage

Conversation

Copy link
Contributor

Copilot AI commented Feb 16, 2026

❔What, Why & How

This pull request improves the CI/CD workflow for both AppSource App and Per Tenant Extension templates by ensuring that the Deploy and Deliver actions are only executed when app artifacts are present. This prevents errors that could occur on initial commits or when no artifacts are generated.

Workflow improvements for artifact handling:

  • Added a conditional check (if: hashFiles('.artifacts/**/*.app') != '') to the Deploy step in Templates/AppSource App/.github/workflows/CICD.yaml and Templates/Per Tenant Extension/.github/workflows/CICD.yaml to skip deployment when no .app artifacts are found.

  • Added the same conditional check to the Deliver step in both workflow files to skip delivery when no artifacts are present.

  • Added notice steps that display informative messages when Deploy or Deliver steps are skipped due to no app artifacts:

    • "Deployment to environment [name] was skipped because no app artifacts were found"
    • "Delivery to [target] was skipped because no app artifacts were found"

    E.g.

Documentation updates:

  • Updated RELEASENOTES.md to document that Deliver and Deploy actions now skip execution when no app artifacts are found, preventing errors on initial commits.
  • Updated Scenarios/DeliveryTargets.md to clarify that custom delivery scripts will not execute when delivery is skipped due to missing app artifacts, specifically noting this prevents errors on initial commits when no apps have been built yet.

✅ Checklist

  • Add tests (E2E, unit tests)
  • Update RELEASENOTES.md
  • Update documentation (e.g. for new settings or scenarios)
  • Add telemetry

💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Co-authored-by: mazhelez <43066499+mazhelez@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix deliver to blob storage failure on initial commit Fix: Skip delivery when no app artifacts exist Feb 16, 2026
Copilot AI requested a review from mazhelez February 16, 2026 09:34
Copilot AI and others added 2 commits February 16, 2026 13:32
Co-authored-by: mazhelez <43066499+mazhelez@users.noreply.github.com>
Co-authored-by: mazhelez <43066499+mazhelez@users.noreply.github.com>
Copilot AI changed the title Fix: Skip delivery when no app artifacts exist Skip Deliver and Deploy when no app artifacts exist Feb 16, 2026
@mazhelez
Copy link
Collaborator

mazhelez commented Mar 3, 2026

@copilot it seems the solution works. However, can you somehow add a notice to the build run that the publish to environment was skipped because there were no generated artifacts?

Co-authored-by: mazhelez <43066499+mazhelez@users.noreply.github.com>
…rtifacts

Co-authored-by: mazhelez <43066499+mazhelez@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Mar 3, 2026

@copilot it seems the solution works. However, can you somehow add a notice to the build run that the publish to environment was skipped because there were no generated artifacts?

Added notice steps in commit 5542516. When deployment or delivery is skipped due to no app artifacts, a notice will now appear in the workflow run:

  • "Deployment to environment [name] was skipped because no app artifacts were found"
  • "Delivery to [target] was skipped because no app artifacts were found"

@mazhelez mazhelez marked this pull request as ready for review March 4, 2026 07:07
@mazhelez mazhelez requested a review from a team as a code owner March 4, 2026 07:07
Copilot AI review requested due to automatic review settings March 4, 2026 07:07
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

Updates AL-Go documentation and release notes to describe that Deploy/Deliver are skipped when no .app artifacts exist, to avoid failures on empty/initial runs.

Changes:

  • Add “Automatic Skip Behavior” notes to the Continuous Deployment and Continuous Delivery workshop docs.
  • Document skip behavior implications for custom delivery scripts in Scenarios/DeliveryTargets.md.
  • Add a release note entry for Issue 2126 about skipping Deliver/Deploy when no app artifacts are present.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.

File Description
Workshop/ContinuousDeployment.md Adds a note about deployment being skipped when no .app artifacts exist.
Workshop/ContinuousDelivery.md Adds a note about delivery being skipped when no .app artifacts exist.
Scenarios/DeliveryTargets.md Clarifies that custom delivery scripts won’t run if delivery is skipped due to missing app artifacts.
RELEASENOTES.md Adds a release note entry referencing Issue 2126 and the new skip behavior.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

…behavior

Co-authored-by: mazhelez <43066499+mazhelez@users.noreply.github.com>
Copilot AI requested a review from mazhelez March 4, 2026 07:16
mazhelez and others added 2 commits March 4, 2026 11:26
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
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

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


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


> **Note:** The folder parameters (`*Folder`) may be `$null` if no artifacts of that type were found. The plural versions (`*Folders`) contain arrays of all matching folders across different build modes.

> **Important:** The delivery step is automatically skipped at the workflow level when no app artifacts are available. This means your custom delivery script will not be executed if no app artifacts were built. This behavior prevents errors on initial commits when no apps have been built yet.
Copy link

Copilot AI Mar 4, 2026

Choose a reason for hiding this comment

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

“Skipped at the workflow level” can be interpreted as the entire Deliver job/workflow being skipped, but the skip is implemented via a conditional on the Deliver step/action when no .app artifacts are present. Consider rewording to avoid implying that the whole workflow/job is skipped.

Suggested change
> **Important:** The delivery step is automatically skipped at the workflow level when no app artifacts are available. This means your custom delivery script will not be executed if no app artifacts were built. This behavior prevents errors on initial commits when no apps have been built yet.
> **Important:** The delivery step is configured with a condition so that it is not run when no app artifacts are available. This means your custom delivery script will not be executed if no app artifacts were built. This behavior prevents errors on initial commits when no apps have been built yet.

Copilot uses AI. Check for mistakes.
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.

4 participants