Come eseguire un'azione GitHub da un ramo diverso dal master?
Ho un repository in GitHub e voglio creare un'azione per creare un'immagine Docker e inviarla a DockerHub. So come si fa ma: se creo l'action in un branch diverso da master GitHub non la esegue.
Questo è un problema noto ( i file del flusso di lavoro sono stati prelevati solo dal master? ).
Qualche idea per risolverlo?
Risposte
Secondo la documentazione ufficiale delle azioni GitHub ( Informazioni sugli eventi del flusso di lavoro ):
I seguenti passaggi si verificano per attivare un'esecuzione del flusso di lavoro:
Si verifica un evento nel tuo repository e il webhook dell'evento risultante ha un commit SHA e Git ref associati.
La directory .github/workflows nel tuo repository viene cercata per i file del flusso di lavoro nel commit SHA o Git ref associato. I file del flusso di lavoro devono essere presenti in quel commit SHA o Git ref per essere presi in considerazione.
Ad esempio, se l'evento si è verificato su un particolare ramo del repository, i file del flusso di lavoro devono essere presenti nel repository su quel ramo.I file del flusso di lavoro per quel commit SHA e Git ref vengono ispezionati e viene attivata una nuova esecuzione del flusso di lavoro per tutti i flussi di lavoro che hanno on: valori che corrispondono all'evento di attivazione.
Il flusso di lavoro viene eseguito sul codice del tuo repository allo stesso commit SHA e Git ref che ha attivato l'evento. Quando viene eseguito un flusso di lavoro, GitHub imposta le variabili di ambiente GITHUB_SHA (commit SHA) e GITHUB_REF (Git ref) nell'ambiente runner. Per ulteriori informazioni, vedere "Utilizzo delle variabili di ambiente".
Per questo motivo, per testare i flussi di lavoro è necessario eseguire un'azione git (ad es. do push
) nel ramo creato.