sonic-buildimage/.github/workflows
2022-10-11 09:56:48 +08:00
..
automerge.yml [actions] Update github actions label and automerge. (#11736) 2022-08-29 11:24:57 +08:00
label.yml [actions] Remove approve step in label action. (#12015) 2022-09-08 17:23:29 +08:00
pr_cherrypick_poststep.yml [actions] Add auto cherry-pick actions to release branch (#11496) 2022-10-10 16:55:00 +08:00
pr_cherrypick_prestep.yml [action] Fix PR pre-cherry-pick action wrong author issue. (#12339) 2022-10-11 09:56:48 +08:00
README.md [actions] Add auto cherry-pick actions to release branch (#11496) 2022-10-10 16:55:00 +08:00
semgrep.yml [actions] Support Semgrep by Github Actions (#12249) 2022-10-03 14:38:55 -04:00

Github actions README

This is an introduction about auto-cherry-pick workflow. take 202205 branch for example:

  1. pr_cherrypick_prestep:
graph
Start(Origin PR) --> A{merged?}
A -- NO --> STOP
A -- YES --> A1{Approved<br> for 202205<br> Branch?}
A1 -- NO --> STOP
A1 -- YES --> A2(pr_cherrypick_prestep)
B(pr_cherrypick_prestep)
B --> B1{cherry pick<br>conflict?}
B1 -- YES --> B2(Add tag:<br>Cherry Pick Confclit_202205) --> B3(Add comment:<br>refer author code conflict) --> STOP1(STOP)
B1 -- NO --> B4(Create New PR) -- success --> B5(New PR add tag:<br> automerge) --> B6(New PR add comment:<br>Origin PR link) --> B7(Origin PR add tag:<br>Created PR to 202205 Branch) --> B8(Origin PR add comment:<br>New PR link)
B4 -- fail --> STOP1
  1. automerge:
graph
Start(PR azp finished successfully) --> A{author:<br>mssonicbld?}
A -- NO --> STOP
A -- YES --> B{tag:<br>automerge?} -- YES --> C(Merge PR)
B -- NO --> STOP
  1. pr_cherrypick_poststep:
graph
A(PR is Merged) --> B{tag:<br>automerge?}
B -- YES --> B1{author:<br>mssonicbld?}
B1 -- YES --> B2{"title starts:<br>[action] [PR:123]"}
B2 -- YES --> C(Origin PR remove tag:<br> Created PR to 202205 Branch) --> D(Origin PR add tag:<br> Included in 202205 Branch)
B -- NO --> STOP
B1 -- NO --> STOP
B2 -- NO --> STOP