GitHub Actions에서 출시
2799 단어 GitHubActions
v1.0.0
와 같은 태그를 push하면 릴리스한다 이런 식으로 아카이브가 첨부된다.
출처
공개용으로 uhooi씨의 샘플 프로젝트에 추가해 보았다.
리포지토리 이름과 태그 이름 가져오기
저장소 이름은
${{ github.repository }}
에서 organization을 지우면 얻을 수 있습니다. ( github 컨텍스트 )${{ github.ref }}
는 refs/tag/タグ名
이므로, 전반을 지우면 태그명을 얻을 수 있다.각각을 output에 넣어 두면 계속되는 태스크로 참조할 수 있다. (참고: GitHub Action에서 Docker 컨테이너를 빌드하고 Amazon ECR에 저장 , GitHub Actions에서 Job의 Output 값을 후속 Job에서 참조 )
- name: Set version
id: version
run: |
REPOSITORY=$(echo ${{ github.repository }} | sed -e "s#.*/##")
VERSION=$(echo ${{ github.ref }} | sed -e "s#refs/tags/##g")
echo ::set-output name=version::$VERSION
echo ::set-output name=filename::$REPOSITORY-$VERSION
서브 모듈을 포함한 clone
${{ secrets.GITHUB_TOKEN }}
는 동일한 저장소에 대한 읽기/쓰기 권한 만 있습니다. ( Authenticating to package registries on GitHub )그래서 다른 private 저장소를 포함하여 clone하고 싶다면 액세스 토큰을 만들어 그것을 지정한다. ( 개인 액세스 토큰 사용 )
- name: Checkout code
uses: actions/checkout@v2
with:
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
submodules: true
zip 파일을 만들지 만 .git은 포함하지 않습니다.
쓰는 방법은 아마 쉘에 의존하기 때문에 요동작 확인.
- name: Archive
run: |
zip -r ${{ steps.version.outputs.filename }}.zip ./ -x "*.git*"
Reference
이 문제에 관하여(GitHub Actions에서 출시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/hotpepsi/items/756bf03812af66fdeb8c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)