GitHub에서 fork한 리포지토리는 기본적으로 Actions가 disable입니다.

2308 단어 GitHubActionsGitHub

소개



이 기사는 GitHub에서 fork한 리포지토리에서 GitHub Actions를 이동하는 방법을 기록하고 공유하기 위한 것입니다.

먼저 결론만


  • GitHub에서 Actions를 설정한 리포지토리를 fork하면 기본 설정에서 작업이 허용되지 않습니다.
  • Actions를 이동하는 경우 fork한 사용자가 허용해야 합니다.
  • 이는 악의적인 동작을 방지하기 위한 것입니다.

  • GitHub Actions란?



    GitHub Actions은 GitHub에서 제공하는 가상 환경 서비스입니다.

    사용자는 YAML 형식으로 실행 환경과 작업을 설명하고 일련의 워크플로를 만듭니다. 특정 브랜치에 push가 있었던 PullRequest가 생성된 등의 이벤트를 방아쇠로 이 워크플로가 실행됩니다.
  • 끌어 오기 요청이 생성되면 테스트 실행
  • 메인 브랜치에 병합이있을 때마다 npm에 릴리스
  • 정적 파일 업데이트마다 S3에 파일 업로드

  • CI/CD를 위한 자동화 처리가 가능합니다.

    워크플로우는 리포지토리에서 다른 소스 코드와 마찬가지로 관리됩니다. 따라서 팀 구성원이 공유하고 개선할 수 있습니다.

    포크 된 리포지토리의 액션 설정



    공개 리포지토리를 포크하면 기본적으로 Actions 실행이 허용되지 않습니다. fork 원래 리포지토리와 익숙한 작업을 수행하려면 사용자가 허용해야 합니다.



    Setting 탭 → Actions → Actions Permissions 보기
  • Allow all actions
  • Allow select actions

  • 중 하나를 선택하고 저장합니다.

    Allow select actions에는 확인란이 있습니다. 이 체크박스는
  • GitHub가 공식적으로 작성한 Action
  • GitHub MarketPlace에 게시된 Action

  • 의 실행을 각각 허가합니다.

    왜 기본값이 허용되지 않는지



    Actions는 범용 가상 환경 서비스입니다. 따라서 CI/CD 이외의 처리도 워크플로우로 기술할 수 있습니다. GitHub는 목적 밖의 Actions 이용을 규약으로 금지하고 있습니다.

    워크플로는 다양한 트리거에서 실행되며 시간도 트리거됩니다. 기본적으로 실행이 허용되면 fork한 것만으로 워크플로가 실행됩니다.

    악의적인 사용자가 리포지토리에 약관 위반 워크플로를 포함하는 경우 기본적으로 실행 권한이 있다고 fork한 사용자도 이용 약관 위반이 됩니다. 이러한 문제를 피하기 위해 Actions는 기본적으로 사용 불가능합니다. 사용자는 실행 권한을 발행하기 전에 워크플로의 목적과 내용을 확인해야 합니다.

    이상, 감사합니다.

    좋은 웹페이지 즐겨찾기