Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gistee/fc645cd9077f5fb31bff5f9647368a5d to your computer and use it in GitHub Desktop.
Save gistee/fc645cd9077f5fb31bff5f9647368a5d to your computer and use it in GitHub Desktop.
# Jenkins user가 capistrano를 이용한 배포를 할 수 있도록 Jenkins 서버에 접속해서 Jenkins 계정으로 이전의 ruby, rails, bundler 설치를 진행한다.
# 먼저 jenkins user가 app 서버에 접근할 수 있도록 이전에 설장한 사용자 계정의 id_rsa ssh key를 젠킨스 디렉토리로 복사 후 사용 권한을 설정한다.
sudo cp ~/.ssh/id_rsa /var/lib/jenkins/.ssh/id_rsa;
sudo chown jenkins:jenkins /var/lib/jenkins/.ssh/id_rsa;
sudo chmod 400 /var/lib/jenkins/.ssh/id_rsa;
# 이후 jenkins 계정으로 전환
sudo su - jenkins
# superuser 권한없이 rails를 사용하기 위한 rbenv 설치
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
source ~/.bashrc
# rbenv install 사용을 위한 ruby-build 플로그인 설치
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
# rbev를 이용한 ruby 설치
rbenv install 2.3.1
rbenv global 2.3.1
ruby -v
# gem을 이용한 bundler와 rails 설치
echo "gem: --no-document" > ~/.gemrc
gem install bundler
gem install rails
# Jenkins 'build-test' Job의 Execute shell 내용
#!/bin/bash
source ~/.bashrc
cd ${WORKSPACE}
if [[ ${IS_ROLLBACK} = "YES" ]];then
echo "rollback"
cap production deploy:rollback
else
echo "deploy"
cap production deploy
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment