GiitHub Actions에서 Gem 게시
4595 단어 RubyGemGitHubActions
개시하다
Gim의 발표를 자동화하고 싶어서 GiitHub Action이 가능한지 조사했습니다.
gem의 발표 방법은 주로 두 가지가 있다.
gem push
release
퀘스트bundler
의 라크 작업gem push
의 예가 있지만 release
작업의 예가 없습니다.따라서
release
임무를 사용할 때의 방법을 문장으로 한다.워크플로우의 준비
release
작업에서gem를 발표할 때의workflow는 다음과 같다.name: Ruby Gem
on:
workflow_dispatch:
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: 3.0.0
- run: bundle install
- name: Setup git config
run: |
git config --global user.email "YOUR_EMAIL"
git config --global user.name "YOUR_NAME"
- name: Publish to RubyGems
run: bundle exec rake release
env:
GEM_HOST_API_KEY: ${{ secrets.RUBYGEMS_API_KEY }}
루비의 버전, 이벤트, git config
에 대해 마음에 드는 것을 선택하세요.해설
공식gem push의 예와는 다른 부분의 해설이다.
- name: Setup git config
run: |
git config --global user.email "YOUR_EMAIL"
git config --global user.name "YOUR_NAME"
release
퀘스트는gem버전에 따라gittag를 자동으로 부여하고push를 진행합니다.따라서 준비
gitconfig
가 필요하다.- name: Publish to RubyGems
run: bundle exec rake release
release
의rake퀘스트입니다.env:
GEM_HOST_API_KEY: ${{ secrets.RUBYGEMS_API_KEY }}
bundler
의release
퀘스트 내부 사용gem
gem push
의gem
.그런 다음 환경 변수
gem
에서 API Key를 읽을 수 있습니다.https://guides.rubygems.org/command-reference/
The push command will use ~/.gem/credentials to authenticate to a server, but you can use the RubyGems environment variable GEM_HOST_API_KEY to set the api key to authenticate.
따라서 API Key를
GEM_HOST_API_KEY
에 준비하지 않아도 인증이 가능하다.시크릿에서 API Key 설정
Secrets는 GiitHub 웨어하우스
~/.gem/credentials
에서 설치할 수 있습니다.과제.
또한 RubyGems에 게시할 때 OPP 인증을 받아야 한다는 설정도 있습니다.
Settings
환경 변수에 OTP 코드를 설정하는 것이 좋을 것 같지만 현재 시도에만 한정되어 읽을 수 없다.OTP 인증을 잘 할 수 있는 방법이 있다면 알려주세요.
Reference
이 문제에 관하여(GiitHub Actions에서 Gem 게시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ohakutsu/items/14c76b0ab3ec626e842d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)