Skip to content

IntuneAppPromoter

Tobias Almén edited this page Aug 23, 2023 · 1 revision

Description

This processor promotes apps to different Entra ID groups based on a schedule you configure. This allows you to roll out new and updated applications in waves to "rings" to allow for an Evergreen update flow.

Should be used as a post-processor.

Example:

autopkg run -v \
--post com.github.almenscorner.intune-upload.processors/IntuneAppPromoter \
AltTab.intune.recipe

To configure the groups and schedule to use, configure the promotion_info in the apps override input. The example below would promote the app from testing -> beta -> pre-prod -> production over the course of 8 days, all versions starting with 5 would be blacklisted and not promoted.

<key>blacklist_versions</key>
<array>
    <string>5.*</string>
</array>
<key>promotion_info</key>
<array>
    <dict>
        <key>ring</key>
        <string>testing</string>
        <key>group_id</key>
        <string>xxxxxx-xxxxxx-xxxxx-xxxxx</string>
        <key>intent</key>
        <string>required</string>
        <key>days</key>
        <integer>1</integer>
    </dict>
    <dict>
        <key>ring</key>
        <string>beta</string>
        <key>group_id</key>
        <string>xxxxxx-xxxxxx-xxxxx-xxxxx</string>
        <key>intent</key>
        <string>required</string>
        <key>days</key>
        <integer>3</integer>
    </dict>
    <dict>
        <key>ring</key>
        <string>pre-prod</string>
        <key>group_id</key>
        <string>xxxxxx-xxxxxx-xxxxx-xxxxx</string>
        <key>intent</key>
        <string>required</string>
        <key>days</key>
        <integer>4</integer>
    </dict>
    <dict>
        <key>ring</key>
        <string>production</string>
        <key>group_id</key>
        <string>xxxxxx-xxxxxx-xxxxx-xxxxx</string>
        <key>intent</key>
        <string>required</string>
    </dict>
</array>

Input variables

  • display_name

    • required: True,
    • description: The name of the app to assign.
  • blacklist_versions

    • required: False,
    • description: If the app version is in this list, it will not be assigned. Can be a wildcard, for example, 5.*
  • promotion_info

    • required: True,
    • description: An array of dicts containing information about the assignments and schedule.

Output variables

  • intuneapppromoter_summary_result
    • description: Description of interesting results.
Clone this wiki locally