Skip to content

[Bug]: deliverToAppSource.ProductId needs to be specified (Library app) #2095

@fvet

Description

@fvet

AL-Go version

8.1

Describe the issue

In a multi-project repo with multiple AppSource apps and one library app, using the 'Publish to AppSource' action for all projects does not exclude the library app, but fails with

deliverToAppSource.ProductId needs to be specified in Foundation/.AL-Go/settings.json in order to deliver to AppSource

Expected behavior

If 'Publish to AppSource' action is ran with '*' to include all projects - in a multi-project setup - only the AppSource configured apps should be included. Any library apps should be excluded.

Workaround:
The user might manually indicate the projects to be uploaded (instead of *), which is cumbersome if you'd have a multi-project with dozens of AppSource apps and few library apps.

Steps to reproduce

One repo, 3 projects (apps)

  • Foundation: library app
  • Companyweb : AppSource app with dependency on Foundation
  • Liza : AppSource app with dependency on Foundation
Image

Config for Foundation

{
  "$schema": "https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v8.1/.Modules/settings.schema.json",
  "country": "us",
  "appSourceCopMandatoryAffixes": [
    "CWEBF"
  ],
  "projectName": "Foundation",
  "rulesetFile": "App/.vscode/app.ruleset.json"
}

Config for Companyweb

{
  "$schema": "https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v8.1/.Modules/settings.schema.json",
  "country": "be",
  "appSourceCopMandatoryAffixes": [
    "CWEB"
  ],
  "projectName": "Companyweb",
  "rulesetFile": "App/.vscode/app.ruleset.json",
  "deliverToAppSource": {
    "productId": "***",
    "mainAppFolder": "App",
    "continuousDelivery": false,
    "includeDependencies": [
      "Dynavision*Foundation*.app"
    ]
  },
  "generateDependencyArtifact": true
}

Config for Liza

{
  "$schema": "https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v8.1/.Modules/settings.schema.json",
  "country": "nl",
  "appSourceCopMandatoryAffixes": [
    "CWEBL"
  ],
  "projectName": "Liza",
  "rulesetFile": "App/.vscode/app.ruleset.json",
  "deliverToAppSource": {
    "productId": "***",
    "mainAppFolder": "App",
    "continuousDelivery": false,
    "includeDependencies": [
      "Dynavision*Foundation*.app"
    ]
  },
  "generateDependencyArtifact": true
}

Run 'Publish to AppSource' action

Image

Failure on

[Deliver to AppSource](https://github.com/DynavisionISV/Companyweb/actions/runs/21254191419/job/61163944199#step:5:244)
Unexpected error when running action. Error Message: deliverToAppSource.ProductId needs to be specified in Foundation/.AL-Go/settings.json in order to deliver to AppSource, StackTrace: at <ScriptBlock>, /home/runner/work/_actions/microsoft/AL-Go-Actions/v8.1/Deliver/Deliver.ps1: line 372 <- at <ScriptBlock>, /home/runner/work/_temp/3dfbf039-a1b6-4795-a0f6-467befb4470d.ps1: line 3 <- at <ScriptBlock>, /home/runner/work/_actions/microsoft/AL-Go-Actions/v8.1/Invoke-AlGoAction.ps1: line 21 <- at <ScriptBlock>, /home/runner/work/_temp/3dfbf039-a1b6-4795-a0f6-467befb4470d.ps1: line 2 <- at <ScriptBlock>, <No file>: line 1

Possible cause:

Foundation is included (as part of *)

Image

Expected behavior

When using *, all projects can be evaluated, but only those with deliverToAppSource settings should be included, others (library apps) should be skipped

Additional context (logs, screenshots, etc.)

logs_55110685095.zip

Metadata

Metadata

Assignees

No one assigned

    Labels

    Fix ReadyFix ReadyShippedFeature is included in the latest versionbugSomething isn't working

    Type

    No type

    Projects

    Status

    ✅ Shipped

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions