Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Esempi di fattori scatenanti
Gli esempi seguenti mostrano come aggiungere diversi tipi di trigger nel file di definizione del flusso di lavoro.
Argomenti
- Esempio: un semplice pulsante di comando a codice
- Esempio: un semplice trigger «push to main»
- Esempio: un semplice trigger di pull request
- Esempio: un semplice trigger di pianificazione
- Esempio: un trigger con una pianificazione e rami
- Esempio: un trigger con una pianificazione, un push e rami
- Esempio: un grilletto con trazione e ramificazioni
- Esempio: un trigger con pull, branch e un evento «CLOSED»
- Esempio: un trigger con push, branch e file
Esempio: un semplice pulsante di comando a codice
L'esempio seguente mostra un trigger che avvia un flusso di lavoro ogni volta che il codice viene inviato a qualsiasi ramo del repository di origine.
Quando questo trigger è attivato, CodeCatalyst avvia un flusso di lavoro eseguito utilizzando i file del ramo verso cui state inviando il push (ovvero il ramo di destinazione).
Ad esempio, se invii un commit amain
, CodeCatalyst avvia un flusso di lavoro eseguito utilizzando il file di definizione del flusso di lavoro e altri file di origine. main
Come altro esempio, se si invia un commit afeature-branch-123
, CodeCatalyst avvia un flusso di lavoro eseguito utilizzando il file di definizione del flusso di lavoro e altri file di origine. feature-branch-123
Triggers: - Type: PUSH
Nota
Se desideri che l'esecuzione di un flusso di lavoro inizi solo quando esegui il push tomain
, consulta. Esempio: un semplice trigger «push to main»
Esempio: un semplice trigger «push to main»
L'esempio seguente mostra un trigger che avvia l'esecuzione di un flusso di lavoro ogni volta che il codice viene inviato al ramo, main
e solo al ramo, del repository di origine. main
Triggers: - Type: PUSH Branches: - main
Esempio: un semplice trigger di pull request
L'esempio seguente mostra un trigger che avvia l'esecuzione di un flusso di lavoro ogni volta che una richiesta pull viene creata o modificata nel repository di origine.
Quando questo trigger è attivato, CodeCatalyst avvia un flusso di lavoro eseguito utilizzando il file di definizione del flusso di lavoro e altri file sorgente nel ramo da cui state estraendo (ovvero il ramo di origine).
Ad esempio, se crei una richiesta pull con un ramo di origine chiamato feature-123
e un ramo di destinazione chiamatomain
, CodeCatalyst avvia un flusso di lavoro eseguito utilizzando il file di definizione del flusso di lavoro e altri file di origine. feature-123
Triggers: - Type: PULLREQUEST Events: - OPEN - REVISION
Esempio: un semplice trigger di pianificazione
L'esempio seguente mostra un trigger che avvia un flusso di lavoro eseguito a mezzanotte (UTC+0) dal lunedì al venerdì.
Quando questo trigger è attivato, CodeCatalyst avvia un singolo flusso di lavoro per ogni ramo del repository di origine che contiene un file di definizione del flusso di lavoro con questo trigger.
Ad esempio, se nel repository di origine sono presenti tre rami,, main
release-v1
feature-123
, e ognuno di questi rami contiene un file di definizione del flusso di lavoro con il trigger seguente, CodeCatalyst avvia tre esecuzioni del flusso di lavoro: una utilizzando i file inmain
, un'altra utilizzando i file in release-v1
e un'altra utilizzando i file in. feature-123
Triggers: - Type: SCHEDULE Expression: "0 0 ? * MON-FRI *"
Per altri esempi di espressioni cron che è possibile utilizzare nella Expression
proprietà, vedere. Expression
Esempio: un trigger con una pianificazione e rami
L'esempio seguente mostra un trigger che avvia un flusso di lavoro eseguito ogni giorno alle 18:15 (UTC+0).
Quando questo trigger è attivato, CodeCatalyst avvia un flusso di lavoro eseguito utilizzando i file nel main
ramo e avvia esecuzioni aggiuntive per ogni ramo che inizia con. release-
Ad esempio, se sono presenti rami denominatimain
, release-v1
bugfix-1
, e bugfix-2
nel repository di origine, CodeCatalyst avvia due esecuzioni del flusso di lavoro: una utilizzando i file in esso main
e l'altra utilizzando i file inrelease-v1
. Non avvia le esecuzioni del flusso di lavoro per i bugfix-1
rami bugfix-1
and.
Triggers: - Type: SCHEDULE Expression: "15 18 * * ? *" Branches: - main - release\-.*
Per altri esempi di espressioni cron che è possibile utilizzare nella Expression
proprietà, vedereExpression.
Esempio: un trigger con una pianificazione, un push e rami
L'esempio seguente mostra un trigger che avvia un flusso di lavoro eseguito a mezzanotte (UTC+0) ogni giorno e ogni volta che il codice viene inviato alla filiale. main
In questo esempio:
-
L'esecuzione di un flusso di lavoro inizia ogni giorno a mezzanotte. L'esecuzione del flusso di lavoro utilizza il file di definizione del flusso di lavoro e altri file di origine presenti nel
main
ramo. -
L'esecuzione di un flusso di lavoro viene inoltre avviata ogni volta che si invia un commit al
main
ramo. L'esecuzione del flusso di lavoro utilizza il file di definizione del flusso di lavoro e altri file di origine nel ramo di destinazione (main
).
Triggers: - Type: SCHEDULE Expression: "0 0 * * ? *" Branches: - main - Type: PUSH Branches: - main
Per altri esempi di espressioni cron che è possibile utilizzare nella Expression
proprietà, vedereExpression.
Esempio: un grilletto con trazione e ramificazioni
L'esempio seguente mostra un trigger che avvia l'esecuzione di un flusso di lavoro ogni volta che qualcuno apre o modifica una richiesta pull con un ramo di destinazione chiamatomain
. Sebbene il ramo specificato nella Triggers
configurazione siamain
, l'esecuzione del flusso di lavoro utilizzerà il file di definizione del flusso di lavoro e altri file sorgente nel ramo di origine (che è il ramo da cui state estraendo).
Triggers: - Type: PULLREQUEST Branches: - main Events: - OPEN - REVISION
Esempio: un trigger con pull, branch e un evento «CLOSED»
L'esempio seguente mostra un trigger che avvia l'esecuzione di un flusso di lavoro ogni volta che una richiesta pull viene chiusa su un ramo che inizia conmain
.
In questo esempio:
-
Quando si chiude una richiesta pull con un ramo di destinazione che inizia con
main
, l'esecuzione di un workflow viene avviata automaticamente utilizzando il file di definizione del flusso di lavoro e altri file di origine nel ramo di origine (ora chiuso). -
Se hai configurato il tuo repository di origine per eliminare automaticamente i branch dopo l'unione di una pull request, questi branch non avranno mai la possibilità di entrare nello
CLOSED
stato. Ciò significa che i rami uniti non attiveranno il trigger della pull request.CLOSED
L'unico modo per attivare ilCLOSED
trigger in questo scenario è chiudere la pull request senza unirla.
Triggers: - Type: PULLREQUEST Branches: - main.* Events: - CLOSED
Esempio: un trigger con push, branch e file
L'esempio seguente mostra un trigger che avvia l'esecuzione di un flusso di lavoro ogni volta che viene apportata una modifica al filename.txt
file, o a qualsiasi file nella src
directory, sul main
ramo.
Quando questo trigger è attivato, CodeCatalyst avvia un flusso di lavoro eseguito utilizzando il file di definizione del flusso di lavoro e altri file di origine nel main
ramo.
Triggers: - Type: PUSH Branches: - main FilesChanged: - filename.txt - src\/.*