MSEndpointMgr / IntuneAppFactory

Intune App Factory automates Win32 application packaging in Intune.
https://msendpointmgr.com/intune-app-factory
MIT License
32 stars 11 forks source link

Feat!: Add additional files to packages. Also App Factory Questions and Feedback #3

Open kevinmccurdybrd opened 1 year ago

kevinmccurdybrd commented 1 year ago

Hi Nickolaj!

Absolutely fantastic work on this solution, I've got it implemented and seems to work largely without issues (at least that aren't my own fault!). I was hoping to touch base with you and either further my understanding or make a feature request.

I don't know if it's commonplace in the industry elsewhere, but for my env it's common to sidecar additional files with the package for PSADT to use to perform additional functions. As an example, our ERP requires a configuration file to be deposited in a certain location post install so the client knows how to connect. Historically I would have just thrown this in the application package and used PSADT to copy the file to it's correct location post install for a one-touch solution. I have other apps that require specific pre-requisites/dependencies.

If I'm understanding how this solution functions, in the Case of the StorageAccount type, it's only grabbing the MSI for the application, and not necessarily any other files that might be ideal to package with it (and to that end some of the additional functionality that PSADT provides with it's full folder structure). Would this be possible to implement? Even if I had to feed it a list of additional files to collect on a per-item basis that would be fine.

Also, I wondered if you had any thoughts on dependencies and if that was something you planned to support with this solution in the long run. Once again an an example, our ERP requires Crystal Reports and the C++ Framework to be installed. Historically I would have also included these with the primary installer and done the complete workflow with PSADT. I would be very open to shifting this to a dependency model if this solution could (or maybe already does?) support it, especially between onboarded applications.

If my knowledge is the issue here, I'm absolutely open to furthering my understanding of your solution.

Apologies for the wall of text, and once again, thank you for your efforts here! Looking forward to hearing from you!

KM

DennisBergemann commented 11 months ago

If i understood correctly i have the same question how we can use the extra files needed for installation. I this files should be in the same location as the downloaded msi/exe setup?

@kevinmccurdybrd did you found a solution?

kevinmccurdybrd commented 11 months ago

@DennisBergemann: No I haven't. @NickolajA will need to expand the solution or we'll need to band together and PR the functionality in. Nickolaj is a busy dude. :)

https://github.com/MSEndpointMgr/IntuneAppFactory/blob/7a5072f63c46f477641db4b48bff565fcf5c9716/Scripts/Save-Installer.ps1#L75

If I'm reading it right, this function would need to be updated to either have inputs of the required files brought in from the app config, or the entire container scraped somehow. Ideally we could observe the default PSADT format with the subfolders containing files/support files. https://allnewandimproved.psappdeploytoolkit.com/guide/Toolkit-Components.html#directories We would also need to update the other scripts/pipelines to handle these extra files. Again, this is assuming I'm not completely misunderstanding.

I'm not a powershell wizard, but will take a look at this as I have time. If someone beats me to it, so much the better. This is such a wonderful solution, it just needs a couple more features™ (famous last words right?). Ideally we could also do Assignments and Dependencies and then this really sort of reaches as close to full automation as possible.

DennisBergemann commented 11 months ago

@kevinmccurdybrd thanks for your guess, i will deal with it.

We have understood now most of the solution. Additionally we added signing to the solution. It was easy going. Same is we have to update AppDeploymentToolkit, because 3.7 is not working in china (BOM)

I am not from china, but we deploy software with intune there.

This solution is an absolutely great one, is engineered by the greatest

If you need details for signing, contact me

jon-mathias-tandberg commented 11 months ago

Check out my fork of intune appfactory. Added additionalfiles functionality for storageblobs.

DennisBergemann commented 11 months ago

@mattisjao thank you for the information i will check. I will have to implement it for all types of sources, because i need sometimes a software with different configuration :-)

DennisBergemann commented 10 months ago

Hello @kevinmccurdybrd ,

Easiest way to provide extra files is:

  1. Zip all
  2. Upload it to storage
  3. In latest.json add the zip as name and the version of your app
  4. In DeployApplication.ps unpack and install
  5. Do not forget in applist.json AppSetupName must be the zip :-)