Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Annotazioni
Le operazioni di aggiornamento delle app tramite azioni GitHub sono attualmente supportate solo per i prodotti gratuiti. I prodotti a pagamento saranno supportati in una versione futura.
GitHub Actions consente di implementare una pipeline CI/CD affidabile per le app di Microsoft Store. Automatizzando i passaggi di compilazione, test e distribuzione direttamente dal repository di codice, si garantisce che ogni modifica, indipendentemente dal fatto che si tratti di una correzione di bug, di un aggiornamento delle funzionalità o di una modifica dei metadati, venga convalidata e pubblicata in modo sicuro in Microsoft Store.
Per informazioni su come configurare i prerequisiti per il processo di aggiornamento dell'app, vedere il video seguente:
Prerequisiti
Registrarsi come sviluppatore di app Windows in Partner Center.
Associa un tenant al tuo account del Centro per i Partner. È possibile ottenere questo risultato associare un Microsoft Entra ID esistente nel Centro per i partner o creando una nuova Microsoft Entra ID nel Centro per i partner.
Register un'applicazione in Microsoft Entra ID
Successivamente, dalla scheda Microsoft Entra applicazioni nella pagina Gestione utenti nella sezione Impostazioni account del Centro per i partner aggiungere l'applicazione Microsoft Entra ID che rappresenta l'app o il servizio che userai per accedere agli invii per il tuo account del Centro per i partner. Assicurarsi di assegnare a questa applicazione il ruolo di Manager.
L'app che vuoi aggiornare deve essere già pubblicata e in tempo reale in Microsoft Store.
ID e segreti obbligatori:
- ID tenant (questo è l'identificatore univoco per il tenant Microsoft Entra. Passare a https://entra.microsoft.com/. Andare su Panoramica di Azure Active Directory >. Copiare il valore "ID tenant").
- ID client (questo è l'ID applicazione della registrazione dell'app creata. Nell'interfaccia di amministrazione di Entra, vai a Azure Active Directory > Registrazioni delle app. Seleziona l'app registrata e copia l'ID applicazione per l'accesso all'API.) Nel centro di amministrazione di Entra, vai a Azure Active Directory > App registrations. Selezionare l'app registrata. Copiare l'"ID applicazione".
- Segreto client (si tratta di un valore simile a una password generato per la registrazione dell'app, usato per l'autenticazione sicura. Nell'interfaccia di amministrazione di Entra passare a Azure Active Directory > App registrations. Selezionare l'app registrata, passare a Certificati e Segreti. In "Segreti client" creare un nuovo segreto, se non è già stato fatto. Copiare il valore immediatamente perché non verrà visualizzato di nuovo)
- ID venditore (identificatore univoco editore/venditore in Microsoft Partner Center. Accedere a Partner Center. Passare a Impostazioni account > Impostazioni sviluppatore o Identificatori. Cercare "ID editore" o "ID venditore".)
Questi verranno usati come segreti nel repository GitHub.
Configurazione GitHub Actions per aggiornare le app in Microsoft Store
Se il progetto ha già un repository GitHub, puoi usarlo direttamente per automatizzare gli aggiornamenti delle app di Microsoft Store.
Nel repository GitHub, passare a Settings>Secrets and variables>Actions>New Repository Secret.
Aggiungere i segreti seguenti:
- AZURE_AD_APPLICATION_CLIENT_ID
- AZURE_AD_APPLICATION_SECRET
- AZURE_AD_TENANT_ID - Identificatore del tenant Azure Active Directory
- SELLER_ID
È possibile automatizzare gli aggiornamenti delle app usando GitHub Actions per entrambi i tipi di app, MSIX e MSI/EXE. Selezionare il tipo di app che si vuole aggiornare di seguito:
- MSIX
- MSI/EXE
Aggiungi il flusso di lavoro di azione GitHub per richiamare l'azione Microsoft GitHub (microsoft-store-apppublisher) per pubblicare gli aggiornamenti dei metadati del pacchetto e dell'app nel negozio.
Per informazioni su come automatizzare gli aggiornamenti dei pacchetti e dei metadati usando GitHub Actions, vedere il video seguente:
Per gli aggiornamenti dei pacchetti
In .github/workflows/, creare AppPackageAutoUpdate.yml usando il frammento di flusso di lavoro fornito:
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 package.msix viene aggiornato come parte del flusso CI/CD nella cartella release, il flusso di lavoro AppPackageAutoUpdate.yml viene attivato automaticamente.
Per gli aggiornamenti dei metadati
Prima di pubblicare per la prima volta gli aggiornamenti dei metadati, ottenete il JSON dei metadati di base dal Partner Center per la vostra sottosmissione dell'app. In questo modo è possibile iniziare con la struttura corretta per l'app. Creare quindi un flusso di lavoro GitHub Actions in .github/workflows/GetBaseMetadata.yml usando il frammento di codice fornito:
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>
Eseguire questo flusso di lavoro dalla scheda Azioni nel repository GitHub. Selezionare il flusso di lavoro pertinente e fare clic su Esegui flusso di lavoro.
Al termine, il flusso di lavoro otterrà i metadati per l'app nei log di compilazione. Copiare questo file e creare un file metadata.json nella cartella dei metadati.
Ora, in .github/workflows/, creare AppMetadataAutoUpdate.yml usando il frammento di flusso di lavoro fornito:
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 viene aggiornato come parte del flusso CI/CD nella cartella dei metadati, attiverà automaticamente il flusso di lavoro AppMetadataAutoUpdate.yml.
I flussi di lavoro precedenti eseguiranno le operazioni seguenti in background:
- Avviare l'azione GitHub (microsoft-store-apppublisher)
- Autentica l'account Microsoft Store Partner Center utilizzando i segreti che hai configurato (ID tenant, ID client, chiave segreta client, ID venditore).
- Usare l'interfaccia della riga di comando per sviluppatori di Microsoft Store (msstore) per ottenere i metadati di base e pubblicare il pacchetto o i metadati aggiornati in Microsoft Store.
Per altre informazioni sui comandi, vedere Interfaccia della riga di comando per sviluppatori di Microsoft Store (MSIX).
Al termine del flusso di lavoro GitHub Actions, controllare Microsoft Store per verificare che le modifiche siano attive. Gli aggiornamenti verranno visualizzati al termine del processo di certificazione nel Centro per i partner.
Crediamo che questo documento contribuirà a migliorare significativamente l'efficienza e l'affidabilità del processo di aggiornamento di Microsoft Store. Seguendo queste procedure consigliate, è possibile semplificare la pubblicazione delle app e garantire un'esperienza di rilascio coerente e di alta qualità.