GiitHub Actions에서 동일한 분기에서 다른 기본 분기로의 Pull Request 자동 생성
3736 단어 GitHub Actionstech
엔지니어 관리직업경로'라는 책에는 어떤 입장에 있든 기술에서 완전히 벗어나지 않는 것이 좋다고 적혀 있다.이런 대의명분을 바탕으로 틈틈이 제목 문제를 해결한 점을 소개하고 싶다.
배경.
SMARTCRM은 이제 Gitflow를 사용합니다.전면 창고는 주 지점
develop
과 beta
로 준비되어 있다.develop
는 Stage 환경의 역할입니다.그럼beta
할 말이 있다면 이쪽도 같은 스테이지 환경의 API를 두드리면서 AWS Amplifydevelop
와 다른 애플리케이션으로 구축돼 있다.이렇게 되면 PR의 리뷰를 거쳐 바로 통합beta
에 들어가면 단일 테스트가 가능하다.그러나 이런 방법의 경우 각각
develop
과beta
를 기초로 하는 분기별 PR을 만들어야 한다.이 의외로 귀찮아서 미리 라벨 등으로 식별하지 않으면 귀찮은 문제가 생길 수 있다.해결책
상술한 문제를 해결해야 한다
beta
를 바탕으로 분기를 기초 분기로 하는 PRPR에 레이블
develop
부여각자
다음은 GiitHub Action의 YAML 파일입니다.
name: create a pull request for beta
on:
pull_request:
types: [ opened ]
branches: [ develop ]
jobs:
action:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set variables
run: |
echo 'PR_BODY<<EOF' >> $GITHUB_ENV
echo "the same as #${{ github.event.pull_request.number }}" >> $GITHUB_ENV
echo "" >> $GITHUB_ENV
echo "---" >> $GITHUB_ENV
echo "" >> $GITHUB_ENV
echo "${{ github.event.pull_request.body }}" >> $GITHUB_ENV
echo 'EOF' >> $GITHUB_ENV
- name: pull-request
uses: repo-sync/pull-request@v2
with:
source_branch: "${{ github.event.pull_request.head.ref }}"
destination_branch: beta
github_token: ${{ secrets.GITHUB_TOKEN }}
pr_label: beta
pr_title: "${{ github.event.pull_request.title }}"
pr_body : |
${{ env.PR_BODY }}
- name: Labeling
uses: andymckay/labeler@master
with:
add-labels: "develop"
포인트는 다음과 같다.pull_request
의types: [ opened ]
를 통해 PR 제작 시만 한정pull_request
의payload를 사용하여 제작자의 PR에서 제작된 PR에 필요한 정보를 수집한다.사용
GITHUB_ENV
, PR에 해당하는 description의 컨텐트를 포함하는 환경 변수 정의repo-sync/pull-request
는 새 PR 작성만 지원하기 때문입니다.3에 관해서는 공식Setting an environment variable에 적혀 있기 때문에 어려운 것은 없지만 의외로 저는 GiitHub Actions로 환경 변수를 지정한 적이 없기 때문에 신중하게 보기 위해 중점을 두었습니다.이 GiitHub Action의 결과는 다음과 같습니다.
라벨이 있어서 쉽게 구분할 수 있어요.또 PR 링크가 있지만 description도 복사돼 내용도 알기 쉽게 됐다.한편, 이 설정은 PR을 만들 때 제목과 description을 제대로 쓰지 않으면 어설픈 내용으로 복사된다는 단점이 있다.다만, PR이 실린 링크와 처음부터 잘 썼다는 의식도 있어 의외로 크게 고민하지는 않았다.
정말 많은 기사인데 죄송하지만 같은 일을 하고 싶은 분들에게 참고가 됐으면 좋겠습니다.
Reference
이 문제에 관하여(GiitHub Actions에서 동일한 분기에서 다른 기본 분기로의 Pull Request 자동 생성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/virginia/articles/9d334b0e39907a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)