전역 브랜치의 자동화
Automate는 전역 브랜치(Global branch)에서 자동화를 만들거나 변경하고, 검토한 뒤 main에 병합하는 과정을 지원합니다. 브랜치의 조건 평가와 효과는 해당 브랜치의 리소스를 사용하지만, 이름과 설명에는 아래의 공유 범위 예외가 있습니다.
추가, 제거와 수정
브랜치에서 자동화 파일을 열거나 오른쪽 위 브랜치 선택기로 대상을 고른 뒤 Add to branch를 선택합니다. 자동화를 편집하고 저장하면 브랜치에 저장된 리소스가 됩니다.
제거하려면 오른쪽 아래 사이드바에서 Remove from branch를 선택합니다. 해당 자동화의 브랜치 변경을 버리고 그 브랜치에서의 효과 실행을 중단합니다.
수정은 main과 같이 편집 후 저장합니다. 다만 브랜치에서 name과 description을 바꾸면 main의 값도 바뀝니다.
조건과 효과의 지원 범위
| 브랜치에서 지원하는 조건 | 지원하지 않는 조건 |
|---|---|
| Time | Threshold crossed |
| Objects added to set | Automation dependency |
| Objects removed from set | Time series |
| Objects modified in set | Dataset |
| Run on all objects | Stream, Beta |
| Metric changed, Sunset |
지원하지 않는 조건은 선택기에서 비활성화됩니다.
Action, Logic, Beta Function과 Notification 효과는 모두 브랜치를 지원합니다. Logic 효과에는 편집 목록을 반환하는 함수가 필요하며, staged writes 함수는 Action 효과로 호출합니다. Function 효과가 반환한 편집은 자동 적용하지 않습니다.
다른 리소스와의 연결
같은 브랜치에서 새로 만들거나 수정한 객체 유형과 액션 유형을 참조할 수 있습니다. AIP Logic 또는 Foundry 함수의 Branched pre-release 버전도 선택할 수 있습니다.
브랜치 자동화는 조건을 브랜치에서 평가하고 효과도 브랜치의 맥락으로 실행합니다. 외부 호출과 알림 등은 브랜치 액션의 부수 효과 조건을 확인해야 합니다. 브랜치에 있다는 이유로 모든 외부 영향이 없어지는 것은 아닙니다.
main 보호
main의 자동화 변경을 브랜치와 검토 절차로 제한하려면 파일시스템에서 리소스의 Branch protection > Protect with project policy를 선택합니다. 자동화 화면 오른쪽 위의 View details에서도 설정할 수 있습니다.
main이 보호되면 저장 시 전역 브랜치를 통해 변경해야 합니다.
검토와 병합
병합하려면 필요한 승인을 모두 받고, main의 최신 변경으로 리베이스한 상태이며, 자동화가 유효해야 합니다. 저장할 때 유효성을 검사하지만 참조하는 객체 유형, 액션이나 함수가 삭제되면 이후 무효 상태가 될 수 있습니다.
변경 제안을 만든 뒤 Global Branching 앱이나 Automate의 Approvals 배너에서 검토자를 추가합니다. 검토자는 제안 링크가 포함된 전자우편을 받습니다. Manage에서는 검토자와 충족해야 할 승인 정책을 확인합니다.
페이지 위쪽 배너에 충족한 승인 수가 표시됩니다.
Start review로 main과 현재 브랜치를 나란히 비교합니다. Your review에서 승인하거나 거부할 수 있습니다.
필요한 승인이 모두 충족되면 이 리소스의 병합 승인이 완료됩니다. 리베이스와 유효성 등 다른 병합 조건도 충족해야 합니다.
리베이스와 충돌
브랜치를 만들거나 마지막으로 리베이스한 뒤 main이 바뀌면 리베이스가 필요합니다. 위쪽 배너에서 Start rebase를 선택합니다.
Rebase automation에서 Main branch 또는 Current branch의 버전을 선택하고 Finish rebase를 누릅니다. 현재는 더 세밀한 항목별 차이를 골라 합치는 방식은 지원하지 않습니다.
리베이스와 승인이 모두 필요하면 리베이스 대화상자가 먼저 표시됩니다. 이를 해결한 뒤 검토자가 변경을 검토할 수 있습니다.