Forum Discussion
Create MSIX Package in Release Pipeline!
- Mar 02, 2021
Hi s_salaria
The AppxManifest.xml should be in the root of the directory you are packaging. So you need to either move it to the BRMS_Packaging_MSIX\Shell\ directory or point the task to the BRMS_Packaging_MSIX\ directory. (Which probably means that the task doesn't actually need to ask for the path to the manifest, or that if it does it should be using it even if it's not at the root.)
In your manifest file I noticed that there is a reference to a Shell\*.exe file and several Images\*.png files. These files must exist relative to the input directory, so you will want the directory you pass to the task to look something like this:
\ AppxManifest.xml Shell\ BRMSv2.exe ... Images\ StoreLogo.png ...
Hi s_salaria,
I believe the app.config file is only copied by the build process to a path similar to <output>.dll.config. In that case, you can have your build pipeline publish the multiple app.config files for each environment, then in the release pipeline copy the appropriate file to the right location before creating the MSIX.
This wouldn't apply if the build process modifies or uses the app.config file in any way (which is not the case AFAIK), because then you would have to set which one to use at build time.
Hi Chacon,
Thank you for your response. How I can create MSIX package in release pipeline because task "MSIX build and package" look for .sln which is not present in Artifacts(build output). Artifact contains build output(dlls and config file) or msix package(if I include packaging information in vsbuild arguments).
Is there a way to create MSIX in release pipeline?
- ChaconMar 01, 2021
Microsoft
In the "MSIX build and package" task, un-select the option "Build solution with MSBuild". Then instead of pointing it to the .sln you will have to point it to the directory containing the contents of the package (like dlls, config and assets) which you already built.
This directory also needs to have an AppxManifest.xml. You could create this by hand, but I believe the VSBuild task should already be creating it for you from the Package.appxmanifest file.- s_salariaMar 01, 2021Copper Contributor
Thank you,
I'm trying the things in same direction as you suggested. Below are the Artifacts copied by build pipeline.
Below are the settings in release pipeline(Packaging).
but I'm getting below error during packing task
- ChaconMar 01, 2021
Microsoft
Are you trying to create an MSIX package or an MSIX bundle? Sorry, I just assumed you wanted a single package before. You can see a bit more about bundles here: Bundling MSIX packages - MSIX | Microsoft Docs
If you are trying to create a single package, you need to un-select the option "Generate MSIX Bundle". If you select that option, the task will expect a directory containing the multiple .msix packages from which it will create an .msixbundle. If you don't select it, it will expect a directory with binaries, assets and an AppxManifest.xml to create an .msix. The error comes from selecting to produce an MSIX bundle, but using a directory with loose files.