travis-scripts로 GitHub Pages를 Travis에서 쉽게 자동 빌드
하지만 Jekyll 이외(예를 들면 gulp라든지)로 GitHub에 push해도 자동으로 빌드->호스팅해 주면 더 편리하다고 생각하지 않습니까?
"Travis CI GitHub Pages"에서 굉장하다면 여러가지 정보가 나옵니다만, 어느 것도 상당히 복잡해, 하는 방법이 곳은 다르고 있습니다.
그러나 travis-scripts이라는 도구를 사용하면 Travis에서 쉽게 호스팅 할 수 있습니다.
방법 (README의 일본어 번역)
우선 설치. npm을 사용합니다.
npm i -D @alrra/travis-scripts
npm 2.7.0 이상으로 설치할 수 있다고 합니다.
https://travis-ci.org/<ユーザー名>/<リポジトリ名>
로 이동하여 Travis를 활성화합니다.
SSH의 키를 생성합니다. 여기서 github_deploy_key라는 이름입니다.
ssh-keygen -t rsa -b 4096 -C "<your_email>" -f github_deploy_key -N ''
npm i -D @alrra/travis-scripts
ssh-keygen -t rsa -b 4096 -C "<your_email>" -f github_deploy_key -N ''
https://github.com/<username>/<repository>/settings/keys
로 이동하여 Add deploy key를 클릭하십시오.공개 키 파일의 내용을 Key에 붙여 넣습니다.
Allow write access 를 체크합니다.
키 추가를 클릭합니다.
실수로 커밋하지 않도록 공개 키를 삭제합니다.
rm github_deploy_key.pub
Travis CLI를 설치하고 로그인합니다.
gem install travis
travis login
개인 키를 암호화합니다.
travis encrypt-file github_deploy_key
출력은 다음과 같이 되어 있다고 생각합니다.
encrypting github_deploy_key for <username>/<repository>
storing result as github_deploy_key.enc
storing secure env variables for decryption
openssl aes-256-cbc -K $encrypted_XXXXXXXXXXXX_key -iv $encrypted_XXXXXXXXXXXX_iv -in github_deploy_key.enc -out github_deploy_key -d
Pro Tip: You can add it automatically by running with --add.
Make sure to add github_deploy_key.enc to the git repository.
Make sure not to add github_deploy_key to the git repository.
Commit all changes to your .travis.yml.
이때
$encrypted_XXXXXXXXXXXX_key
, $encrypted_XXXXXXXXXXXX_iv
는 나중에 필요하지만 https://travis-ci.org/<username>/<repository>/settings
에서 볼 수 있습니다.비밀 키도 삭제합니다.
rm github_deploy_key
.travis.yml
의 after_success를 다음과 같이 추가합니다. after_success:
- |
$(npm bin)/set-up-ssh --key "$encrypted_XXXXXXXXXXXX_key" \
--iv "$encrypted_XXXXXXXXXXXX_iv" \
--path-encrypted-key ".travis/github_deploy_key.enc"
$encrypted_XXXXXXXXXXXX_key
, $encrypted_XXXXXXXXXXXX_iv
를 이전 값으로 바꿉니다.GitHub 사용자 이름, 이메일 주소를 환경 변수로 설정합니다.
env:
global:
- GH_USER_EMAIL="<メールアドレス>"
- GH_USER_NAME="<ユーザー名>"
마지막으로 after_success에 다음 사항을 추가하십시오.
- |
# Add the SSH-related commands here, see:
# https://github.com/alrra/travis-scripts/blob/master/doc/github-deploy-keys.md#26-set-up-ssh-connection-for-travis-ci
$(npm bin)/update-branch --commands "<ビルドコマンド>" \
--commit-message "<コミットメッセージ> [skip ci]" \
--directory "<出力ディレクトリ>" \
--distribution-branch "<出力ブランチ(e.g. gh-pages)>" \
--source-branch "<ソースのブランチ(e.g. master)>"
그리고는 before_script에 의존관계의 설치 처리등 쓰거나, node나 ruby의 버전 설정하면 끝입니다.
push하면 빌드가 달린다고 생각합니다.
Reference
이 문제에 관하여(travis-scripts로 GitHub Pages를 Travis에서 쉽게 자동 빌드), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ygkn/items/d9300ad29de89458d2fa텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)