Zack Watson
Zack Watson

Reputation: 39

.NET MAUI Azure iOS Pipeline: I dont want to sign the app yet

so I have an azure pipeline meant to build the .ipa for a .net maui ios app. I have a provisioning profile, but no signing certificate because we have a team that internally signs and distributes the app. It worked for years on Xamarin, but I cannot get Azure to build without the following error:

No iOS signing identities match the specified provisioning profile

This is my dotnet task:

- task: DotNetCoreCLI@2
    displayName: 'dotnet publish iOS'
    inputs:
      command: publish
      publishWebProjects: false
      projects: '$(Build.SourcesDirectory)/[Redacted]/[Redacted].SharedMaui.csproj'
      arguments: '-f: net8.0-ios -c: Release
      /p:ArchiveOnBuild=true
      /p:EnableAssemblyILStripping=false
      /p:CodesignProvision=$(INSTALLAPPLEPROVISIONINGPROFILE.PROVISIONINGPROFILEUUID)'
      zipAfterPublish: false
      modifyOutputPath: false
      feedsToUse: config

is there another argument i can pass to skip signing and build?

Upvotes: 0

Views: 587

Answers (1)

Kevin Lu-MSFT
Kevin Lu-MSFT

Reputation: 35504

Based on your description, you need to skip the code sign during the dotnet publish process.

To meet the requirement, you can add the argument: /p:EnableCodeSigning=false to the dotnet publish task.

If you need to skip the build in dotnet publish task, you can add the argument: --no-build. In this case, you need to add dotnet build task before dotnet publish step to compile the project

For example:

- task: DotNetCoreCLI@2
  inputs:
    command:build
    xxx 
- task: DotNetCoreCLI@2
  displayName: 'dotnet publish iOS'
  inputs:
    command: publish
    publishWebProjects: false
    projects: '$(Build.SourcesDirectory)/[Redacted]/[Redacted].SharedMaui.csproj'
    arguments: '-f: net8.0-ios -c: Release
    --no-build
    /p:ArchiveOnBuild=true
    /p:EnableAssemblyILStripping=false
    /p:EnableCodeSigning=false'
    zipAfterPublish: false
    modifyOutputPath: false
    feedsToUse: config

On the other hand, if you want to skip the package sign, you can add the argument: /p:EnablePackageSigning=false

Upvotes: 1

Related Questions