Skip to content
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

Trouble formatting content with Markdown in Description field in Intune deployment #33

Open
AScott-WWF opened this issue Dec 12, 2024 · 1 comment

Comments

@AScott-WWF
Copy link

AScott-WWF commented Dec 12, 2024

I'm looking for some advice how we can format the content placed in the Description field in an Intune deployment using Intune App Factory, In the App.json for my app(s) can easily place plain text content in there, but initially I had not been able to include line breaks etc. I have subsequently found that line breaks need to be included by using n\

When done manually, you can use Markdown to format the text nicely (bold, underlined, headings, italic, quoted, bulleted etc)
I'd like to make the content a little more pretty for users when they opt to install apps from the Company Portal where the app has been auto packaged by the Intune App Factory Pipeline.

What I normally do is include a few standard pieces of information, I'll post a simple example of how we'd currently format the Description field for a Google Chrome deployment in the hope it becomes clearer what I'm asking:

## Google Chrome web browser
**Version:** 131.0.6778.140

**Release Date:** 10th December 2024

So in the Intune Portal, this would show as follows :
image

As well as formatting the text with Markdown during a run of the Intune App Factory pipeline I'd like to programatically place the version number and release date in there, I'd also like to use the date the app was packaged in the Notes field. (I have assumed the Pipeline could replace this somehow?).
Using the Evergreen module (depending on the app) the results will return a release date, using Chrome again as an example:

get-evergreenApp -Name GoogleChrome | ft

Version        Channel  StartDate  Architecture Type URI
-------        -------  ---------  ------------ ---- ---
133.0.6891.0   Canary   12/12/2024 x86          exe  https://dl.google.com/update2/installers/ChromeSetup.exe
133.0.6876.4   Dev      05/12/2024 x64          msi  https://dl.google.com/dl/chrome/install/dev/googlechromedevstandaloneenterprise64.msi
133.0.6876.4   Dev      05/12/2024 x86          msi  https://dl.google.com/dl/chrome/install/dev/googlechromedevstandaloneenterprise.msi
132.0.6834.46  Beta     11/12/2024 x64          msi  https://dl.google.com/dl/chrome/install/beta/googlechromebetastandaloneenterprise64.msi
132.0.6834.46  Beta     11/12/2024 x86          msi  https://dl.google.com/dl/chrome/install/beta/googlechromebetastandaloneenterprise.msi
131.0.6778.140 Stable   10/12/2024 x64          msi  https://dl.google.com/dl/chrome/install/googlechromestandaloneenterprise64.msi
131.0.6778.140 Stable   10/12/2024 x64          zip  https://dl.google.com/dl/chrome/install/GoogleChromeEnterpriseBundle64.zip
131.0.6778.140 Stable   10/12/2024 x86          msi  https://dl.google.com/dl/chrome/install/googlechromestandaloneenterprise.msi
130.0.6723.160 Extended 10/12/2024 x64          msi  https://dl.google.com/dl/chrome/install/googlechromestandaloneenterprise64.msi
130.0.6723.160 Extended 10/12/2024 x86          msi  https://dl.google.com/dl/chrome/install/googlechromestandaloneenterprise.msi

The StartDate column above is the date this version was first detected as new by Evergreen, so this date could be used to populate the Release Date text - Although it would be nice to do a date conversion to a human readable date '10th December 2024' for example

I have discovered (via building a detection script), that I can populate the version information using the ###VERSION### text, but I have tried populating 3 Variants of this into the fields in the App.json file:
`###VERSION###`, \\###VERSION### and ###VERSION###
All without success, I suspect the Pipeline is not replacing these and maybe the Intune Portal is probably confusing this as Markdown
N.B. ### is usually used to define Heading 1 text
Here is an example of my attempts in the Notes field in my App.json file:

"Notes": "Deployed on `###DATETIME###` or \\###DATETIME### or ###DATETIME### by Intune App Factory",

Also not working:
image

Any advice gratefully recieved

@AScott-WWF
Copy link
Author

AScott-WWF commented Dec 12, 2024

I was also looking into how I could populate the 'Information URL', 'Privacy URL' and 'Developer' fields, I couldn't see any examples in the Template App.json (Found in: Templates\Application\App.json) how to do this.
But, having dug a little deeper, I suspect this may need a modification of the .\IntuneAppFactory\Scripts\New-Win32Apps.ps1 file? The following code needs to be added between lines 596 & 597 (I have tested and it works):

if (-not([string]::IsNullOrEmpty($AppData.Information.InformationURL))) {
    $Win32AppArgs.Add("InformationURL", $AppData.Information.InformationURL)
}
if (-not([string]::IsNullOrEmpty($AppData.Information.PrivacyURL))) {
    $Win32AppArgs.Add("PrivacyURL", $AppData.Information.PrivacyURL)
}
if (-not([string]::IsNullOrEmpty($AppData.Information.Developer))) {
    $Win32AppArgs.Add("Developer", $AppData.Information.Developer)
}

I subsequently found you have a code change for this in a Pull request that has not been included in the v1.1.0 release (#27)

@AScott-WWF AScott-WWF changed the title Formatting content in Description field in Intune deployment Trouble formatting content with Markdown in Description field in Intune deployment Dec 20, 2024
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

No branches or pull requests

1 participant