2015年2月13日 星期五

OpenShift Redmine with private Bitbucket

1. Use redmine_bitbucket plugin
  (git@bitbucket.org:steveqx/redmine_bitbucket.git)
2. In "plugins" directory:
  $ git submodule add -f git@bitbucket.org:steveqx/redmine_bitbucket.git
3. git push
4. Migrate db:
  $ rhc ssh
  $ cd ~/app-root/repo
  $ RAILS_ENV=production rake redmine:plugs NAME=redmine_bitbucket
5. Generate ssh key for private repos (id_rsa, id_rsa.pub)
  $ rhc ssh
  $ ssh-keygen -t rsa -f ~/app-root/data/id_rsa
6. Upload "id_rsa.pub" to Bitbucket private repo's "Deployment keys"
7. Add "~/app-root/data/wrapper.sh" with "chmod a+x ~/app-root/data/wrapper.sh"
  #!/bin/bash
  ssh -i $OPENSHIFT_DATA_DIR/id_rsa -o StrictHostKeyChecking=no $1 $2
8. Modify "plugins/redmine_bitbucket/lib/system_command.rb"
  about line 10:
    success = Kernel.system("#{command} > # {logfile.path} 2>&1")
  to:
    success = Kernel.system("GIT_SSH=$OPENSHIFT_DATA_DIR/wrapper.sh #{command} > #{logfile.path} 2>&1")
9. Restart
  $ rhc ssh
  $ ctl_all restart
10. Setting hook path in Bitbucket:
  http://[redmine_url]/hooks/bitbucket/[project_name]

沒有留言: