Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Observação
No momento, há suporte para operações de atualização de aplicativo por meio de ações de GitHub somente para produtos gratuitos. Os produtos pagos terão suporte em uma versão futura.
GitHub Actions permite implementar um pipeline de CI/CD robusto para seus aplicativos da Microsoft Store. Ao automatizar as etapas de compilação, teste e implantação diretamente do repositório de código, você garante que cada alteração, seja uma correção de bug, atualização de recursos ou alteração de metadados, seja validada e publicada com segurança na Microsoft Store.
Para entender como configurar pré-requisitos para o processo de atualização do aplicativo, confira o seguinte vídeo:
Pré-requisito
Registre-se como um desenvolvedor de aplicativos Windows no Partner Center.
Ter um locatário associado à sua conta do Partner Center. Você pode conseguir isso associando um Microsoft Entra ID existente no Partner Center ou criando um novo Microsoft Entra ID no Partner Center.
Register um aplicativo no Microsoft Entra ID
Em seguida, na guia Microsoft Entra aplicativos na página Gerenciamento de usuários na seção Configurações de conta do Partner Center, adicione o aplicativo Microsoft Entra ID que representa o aplicativo ou serviço que você usará para acessar envios para sua conta do Partner Center. Lembre-se de atribuir esse aplicativo à função de Gerenciador.
O aplicativo que você deseja atualizar já deve estar publicado e ativo na Microsoft Store.
IDs e segredos necessários:
- Identificador do locatário (este é o identificador exclusivo do locatário Microsoft Entra. Vá para https://entra.microsoft.com/. Acesse Azure Active Directory > Visão geral. Copie o valor do Identificador do locatário.)
- ID do cliente (esta é a ID do aplicativo do registro do aplicativo que você criou. No Centro de administração do Entra, vá para Azure Active Directory > App registrations. Selecione seu aplicativo registrado. Copie a "ID do aplicativo".) para acesso à API. No Centro de Administração do Entra, acesse Azure Active Directory > Registros de Aplicativos. Selecione seu aplicativo registrado. Copie a "ID do aplicativo".)
- Segredo do cliente (esse é um valor semelhante a senha gerado para o registro do aplicativo, usado para autenticação segura. No Centro de administração do Entra, vá para Azure Active Directory
App registrations. Selecione seu aplicativo registrado, vá para Certificados & Segredos. Em "Segredos do cliente", crie um novo segredo se ainda não tiver feito isso. Copie o valor imediatamente, pois ele não será mostrado novamente) - ID do Vendedor (este é o identificador exclusivo do publicador/vendedor no Microsoft Partner Center. Entre no Partner Center. Acesse as configurações de Conta > Configurações ou Identificadores do Desenvolvedor. Procure "ID do Publicador" ou "ID do Vendedor".)
Eles serão usados como segredos em seu repositório GitHub.
Configurando GitHub Actions para atualizar aplicativos na Microsoft Store
Se o projeto já tiver um repositório GitHub, você poderá usá-lo diretamente para automatizar as atualizações de aplicativos da Microsoft Store.
No repositório GitHub, vá para Settings>Secrets and variables>Actions>New Repository Secret.
Adicione os seguintes segredos:
- AZURE_AD_APPLICATION_CLIENT_ID
- AZURE_AD_APPLICATION_SECRET
- AZURE_AD_TENANT_ID (Identificador do Inquilino do Azure AD)
- SELLER_ID
Você pode automatizar atualizações de aplicativo usando GitHub Actions para ambos os tipos de aplicativos, MSIX e MSI/EXE. Selecione o tipo de aplicativo que você deseja atualizar abaixo:
- MSIX
- MSI/EXE
Adicione o workflow do GitHub Action para invocar a ação do Microsoft GitHub (microsoft-store-apppublisher) para publicar atualizações de pacotes e metadados dos aplicativos na loja.
Para entender como automatizar atualizações de pacotes e metadados usando GitHub Actions, confira o seguinte vídeo:
Para atualizações de pacote
Em .github/fluxos de trabalho/, crie AppPackageAutoUpdate.yml usando o snippet de fluxo de trabalho fornecido:
name: AppPackageAutoUpdate
on:
push:
paths:
- 'release/package.msix'
jobs:
build:
runs-on: windows-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Configure Microsoft Store CLI
uses: microsoft/microsoft-store-apppublisher@v1.1
- name: Reconfigure store credentials
run: msstore reconfigure `
--tenantId ${{ secrets.AZURE_AD_TENANT_ID }} `
--sellerId ${{ secrets.SELLER_ID }} `
--clientId ${{ secrets.AZURE_AD_APPLICATION_CLIENT_ID }} `
--clientSecret ${{ secrets.AZURE_AD_APPLICATION_SECRET }}
- name: Publish App package
run: msstore publish '${{ github.workspace }}/release/package.msix' -id <Store product Id>
Quando o package.msix é atualizado como parte do fluxo CI/CD na pasta de lançamento, o fluxo de trabalho AppPackageAutoUpdate.yml é disparado automaticamente.
Para atualizações de metadados
Antes de publicar atualizações de metadados pela primeira vez, obtenha o JSON de metadados base do Partner Center para o envio do aplicativo. Isso garante que você comece com a estrutura correta para seu aplicativo. Portanto, crie um fluxo de trabalho GitHub Actions em .github/fluxos de trabalho/GetBaseMetadata.yml usando o snippet fornecido:
name: GetBaseMetadata
on:
workflow_dispatch:
jobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- uses: microsoft/microsoft-store-apppublisher@v1.1
- name: Configure MSStore CLI
run: |
msstore reconfigure `
--tenantId ${{ secrets.AZURE_AD_TENANT_ID }} `
--sellerId ${{ secrets.SELLER_ID }} `
--clientId ${{ secrets.AZURE_AD_APPLICATION_CLIENT_ID }} `
--clientSecret ${{ secrets.AZURE_AD_APPLICATION_SECRET }}
- name: Get base metadata
shell: pwsh
run: |
msstore submission get <Store product Id>
Execute esse fluxo de trabalho na guia Ações em seu repositório GitHub. Selecione o fluxo de trabalho relevante e clique em Executar fluxo de trabalho.
Após a conclusão, o fluxo de trabalho obterá os metadados do aplicativo nos logs de build. Copie isso e crie um arquivo metadata.json na pasta de metadados.
Agora, em .github/fluxos de trabalho/, crie AppMetadataAutoUpdate.yml usando o snippet de fluxo de trabalho fornecido:
name: AppMetadataAutoUpdate
on:
push:
paths:
- 'metadata/metadata.json'
jobs:
build:
runs-on: windows-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Configure Microsoft Store CLI
uses: microsoft/microsoft-store-apppublisher@v1.1
- name: Reconfigure store credentials
run: msstore reconfigure `
--tenantId ${{ secrets.AZURE_AD_TENANT_ID }} `
--sellerId ${{ secrets.SELLER_ID }} `
--clientId ${{ secrets.AZURE_AD_APPLICATION_CLIENT_ID }} `
--clientSecret ${{ secrets.AZURE_AD_APPLICATION_SECRET }}
- name: Update metadata
run: |
$metadata = Get-Content -Raw "${{ github.workspace }}/metadata/metadata.json"
msstore submission updateMetadata <Store product Id> $metadata
- name: Publish to Store
run: msstore submission publish <Store product Id>
Quando metadata.json for atualizado como parte do fluxo de CI/CD na pasta de metadados, ele disparará automaticamente o fluxo de trabalho AppMetadataAutoUpdate.yml.
Os fluxos de trabalho acima farão o seguinte em segundo plano:
- Invocar a ação do GitHub “microsoft-store-apppublisher”
- Autentique sua conta do Microsoft Store Partner Center usando os segredos configurados (ID do locatário, ID do cliente, segredo do cliente, ID do vendedor).
- Use a CLI do Desenvolvedor da Microsoft Store (msstore) para obter metadados base e publicar o pacote ou metadados atualizados na Microsoft Store.
Para obter mais informações sobre comandos, consulte a CLI do Desenvolvedor da Microsoft Store (MSIX).
Depois que o fluxo de trabalho do GitHub Actions for concluído com êxito, verifique a Microsoft Store para confirmar se as alterações estão ativas. As atualizações serão exibidas após a conclusão do processo de certificação no Partner Center.
Confiamos que este documento ajudará a melhorar significativamente a eficiência e a confiabilidade do processo de atualização da Microsoft Store. Seguindo essas práticas recomendadas, você pode simplificar a publicação de aplicativos e garantir uma experiência de lançamento consistente e de alta qualidade.
Windows developer