Commit 5986b1d3087566d7bb9bb4717ed6fe2a7964782e
Committed by
Sergio Oliveira
1 parent
c1e6c319
Exists in
master
and in
39 other branches
Added redmine on supervisor and added comments
Showing
4 changed files
with
74 additions
and
61 deletions
Show diff stats
scripts/redmine.sh
| 1 | 1 | #!/bin/bash |
| 2 | 2 | |
| 3 | -set -x | |
| 4 | - | |
| 5 | -if [ ! "$1" ] | |
| 6 | - then | |
| 7 | - echo "Por favor, passe como parâmetro o ip do banco de dados" | |
| 8 | - echo "./redmine.sh 127.0.0.1" | |
| 9 | - exit -1 | |
| 3 | +LOCAL_HOST=$1 | |
| 4 | +if [ -e $LOCAL_HOST ]; then | |
| 5 | + echo "Please, inform the IP address Redmine will be listening" | |
| 6 | + echo "ex: ./redmine.sh 127.0.0.1" | |
| 7 | + exit -1 | |
| 10 | 8 | fi |
| 11 | 9 | |
| 10 | +echo "Installing a lot of system dependencies also making use of EPEL repository" | |
| 12 | 11 | sudo rpm -iUvh https://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm |
| 13 | - | |
| 14 | 12 | sudo yum -y install zlib-devel curl-devel httpd-devel apr-devel apr-util-devel subversion git postgresql-devel gcc gcc-c++.x86_64 make automake autoconf curl-devel openssl-devel httpd-devel apr-devel apr-util-devel sqlite-devel libxslt-devel libxml2-devel.x86_64 php-pear ImageMagick ImageMagick-devel ImageMagick-perl vim patch readline readline-devel zlib libffi-devel make bzip2 libtool bison wget libyaml-devel |
| 15 | 13 | |
| 14 | +echo "Making sure $USER can access /opt" | |
| 15 | +sudo chown $USER /opt && cd /opt | |
| 16 | 16 | |
| 17 | -curl -L get.rvm.io | bash -s stable | |
| 18 | - | |
| 19 | -source /etc/profile.d/rvm.sh | |
| 20 | - | |
| 21 | - | |
| 22 | -rvm install 2.0.0 | |
| 23 | -rvm use 2.0.0 --default | |
| 17 | +echo "Downloading Redmine 2.3" | |
| 18 | +git clone https://github.com/redmine/redmine.git --branch 2.3-stable && cd /opt/redmine | |
| 19 | +ln -s /opt/redmine/public /opt/redmine/public/redmine | |
| 24 | 20 | |
| 25 | -rvm gemset create redmine | |
| 21 | +echo "Installing Ruby/Redmine dependencies, this will take a VERY LONG TIME, grab a cup of coffee..." | |
| 26 | 22 | rvm gemset use redmine |
| 27 | - | |
| 28 | -sudo chown -R $USER: /opt | |
| 29 | - | |
| 30 | -cd /opt | |
| 31 | -git clone https://github.com/redmine/redmine.git --branch 2.3-stable | |
| 32 | - | |
| 33 | -cd /opt/redmine | |
| 34 | 23 | bundle install --verbose --without mysql sqlite |
| 35 | -gem install unicorn --no-ri --no-rdoc | |
| 36 | -gem install pg -v '0.17.1' --no-ri --no-rdoc | |
| 24 | +gem --verbose install unicorn --no-ri --no-rdoc | |
| 25 | +gem --verbose install pg -v '0.17.1' --no-ri --no-rdoc | |
| 37 | 26 | |
| 38 | -cd config/ | |
| 39 | - | |
| 40 | -echo "production: | |
| 27 | +echo "Setting Redmine database file" | |
| 28 | +cd config/ && echo "production: | |
| 41 | 29 | adapter: postgresql |
| 42 | 30 | database: redmine |
| 43 | - host: $1 | |
| 31 | + host: $LOCAL_HOST | |
| 44 | 32 | username: redmine |
| 45 | 33 | password: redmine |
| 46 | 34 | encoding: utf8" > database.yml |
| 47 | 35 | |
| 48 | - | |
| 36 | +echo "Initializing Redmine database" | |
| 37 | +export RAILS_ENV=production | |
| 49 | 38 | rake generate_secret_token |
| 39 | +rake db:migrate | |
| 40 | +echo "pt-BR" | rake redmine:load_default_data | |
| 50 | 41 | |
| 51 | -RAILS_ENV=production rake db:migrate | |
| 52 | - | |
| 53 | -echo "pt-BR" | RAILS_ENV=production rake redmine:load_default_data | |
| 54 | - | |
| 55 | - | |
| 56 | -cd /opt/redmine | |
| 57 | -mkdir pids | |
| 58 | -wget https://gitlab.com/softwarepublico/colabdocumentation/raw/master/Arquivos/redmine/unicorn.rb -O config/unicorn.rb | |
| 59 | - | |
| 60 | -wget https://gitlab.com/softwarepublico/colabdocumentation/raw/master/Arquivos/redmine/routes.rb -O config/routes.rb | |
| 61 | - | |
| 62 | -ln -s /opt/redmine/public /opt/redmine/public/redmine | |
| 63 | - | |
| 64 | -cd /opt/redmine/plugins | |
| 65 | -git clone https://github.com/backlogs/redmine_backlogs.git | |
| 66 | - | |
| 67 | -cd redmine_backlogs | |
| 68 | -git checkout v1.0.6 | |
| 42 | +echo "Downloading Redmine plugins" | |
| 43 | +cd /opt/redmine/plugins && git clone https://github.com/colab-community/single_auth.git | |
| 44 | +cd /opt/redmine/plugins && git clone https://github.com/backlogs/redmine_backlogs.git | |
| 69 | 45 | |
| 70 | -RAILS_ENV=production | |
| 71 | -export RAILS_ENV | |
| 46 | +echo "Installing backlogs plugin" | |
| 47 | +cd redmine_backlogs && git checkout v1.0.6 | |
| 72 | 48 | bundle install --verbose |
| 73 | - | |
| 74 | 49 | gem uninstall rack -v '1.5.2' |
| 75 | 50 | |
| 51 | +echo "Finishing Redmine settings" | |
| 76 | 52 | cd /opt/redmine |
| 77 | 53 | bundle install --verbose --without mysql sqlite |
| 78 | 54 | bundle exec rake db:migrate |
| 79 | 55 | bundle exec rake redmine:backlogs:install story_trackers=2 task_tracker=1 |
| 80 | 56 | |
| 81 | -cd /opt/redmine/plugins | |
| 82 | -git clone https://github.com/colab-community/single_auth.git | |
| 57 | +echo "Downloading server configuration files" | |
| 58 | +cd /opt/redmine && mkdir pids | |
| 59 | +wget https://gitlab.com/softwarepublico/colabdocumentation/raw/master/Arquivos/redmine/unicorn.rb -O config/unicorn.rb | |
| 60 | +wget https://gitlab.com/softwarepublico/colabdocumentation/raw/master/Arquivos/redmine/routes.rb -O config/routes.rb | |
| 61 | + | |
| 62 | +echo "Setting up initialization on supervisor" | |
| 63 | +if [ -e `cat /etc/supervisord.conf | grep redmine` ]; then | |
| 64 | + CMD="source /usr/local/rvm/scripts/rvm &&"; | |
| 65 | + CMD="$CMD rvm gemset use redmine &&"; | |
| 66 | + CMD="$CMD unicorn_rails -c /opt/redmine/config/unicorn.rb -E $RAILS_ENV -p 9080 -D"; | |
| 67 | + | |
| 68 | + echo "[program:redmine]" >> /etc/supervisord.conf; | |
| 69 | + echo "command=$CMD" >> /etc/supervisord.conf; | |
| 70 | + echo "user=$USER" >> /etc/supervisord.conf; | |
| 71 | +fi | |
| 72 | + | |
| 73 | +echo "Finished installing, starting Redmine service" | |
| 74 | +supervisorctl start redmine | |
| 83 | 75 | |
| 84 | -unicorn_rails -c /opt/redmine/config/unicorn.rb -E production -p 9080 -D | ... | ... |
scripts/rvm.sh
| 1 | 1 | #! /bin/bash |
| 2 | 2 | |
| 3 | -# Make sure rvm is installed under sudo user | |
| 3 | +echo "Make sure rvm is installed at /user/local/rvm" | |
| 4 | 4 | sudo bash -c "curl -L get.rvm.io | bash -s stable" |
| 5 | 5 | |
| 6 | -# Set rvm on the PATH and install ruby 2.0.0 | |
| 6 | +echo "Set rvm on the PATH and install ruby 2.0.0" | |
| 7 | 7 | sudo bash -c "source /usr/local/rvm/scripts/rvm && rvm install ruby-2.0.0" |
| 8 | +sudo bash -c "source /usr/local/rvm/scripts/rvm && rvm use 2.0.0 --default" | |
| 9 | + | |
| 10 | +echo "Create gemsets for gitlab and redmine" | |
| 8 | 11 | sudo bash -c "source /usr/local/rvm/scripts/rvm && rvm gemset create gitlab" |
| 9 | 12 | sudo bash -c "source /usr/local/rvm/scripts/rvm && rvm gemset create redmine" |
| 10 | 13 | |
| 11 | -sudo bash -c "source /usr/local/rvm/scripts/rvm && rvm use 2.0.0@gitlab --default" | |
| 12 | -sudo bash -c "source /usr/local/rvm/scripts/rvm && gem install bundler --no-ri --no-rdoc" | ... | ... |
scripts/users.sh
| 1 | 1 | #!/bin/bash |
| 2 | 2 | |
| 3 | +# Make sure the current user is in sudoers file | |
| 4 | + | |
| 3 | 5 | # Make sure to create user colab and colabdev group |
| 4 | 6 | COLAB_USER=colab |
| 5 | 7 | COLAB_GROUP=colabdev |
| ... | ... | @@ -11,27 +13,41 @@ COLAB_GROUP_EXISTS=`cat /etc/group | grep $COLAB_GROUP:` |
| 11 | 13 | # Errors |
| 12 | 14 | ERROR_NOT_ALLOWED=126 |
| 13 | 15 | ERROR_ALREADY_EXIST=9 |
| 16 | +ERROR_OK=0 | |
| 17 | + | |
| 18 | +echo "Making sure there is $COLAB_USER user and $COLAB_GROUP group in the system" | |
| 14 | 19 | |
| 15 | 20 | # Make sure colab user exist |
| 16 | 21 | if [ -e $COLAB_USER_EXISTS ]; then |
| 17 | 22 | sudo adduser $COLAB_USER; |
| 18 | 23 | LAST_CMD=`echo $?` |
| 19 | - if [ $LAST_CMD == $ERROR_NOT_ALLOWED ]; then | |
| 24 | + if [ $LAST_CMD == $ERROR_OK ]; then | |
| 25 | + echo "User $COLAB_USER was created successfully!"; | |
| 26 | + elif [ $LAST_CMD == $ERROR_NOT_ALLOWED ]; then | |
| 20 | 27 | echo "You don't have permission to create users" |
| 21 | 28 | echo "Aborting installation" |
| 22 | 29 | exit -1 |
| 30 | + else | |
| 31 | + echo "Something went weird, please check for files from $COLAB_USER"; | |
| 23 | 32 | fi |
| 33 | +else | |
| 34 | + echo "User $COLAB_USER already exist, skipping creation..." | |
| 24 | 35 | fi |
| 25 | 36 | |
| 26 | 37 | # Make sure colab group exist |
| 27 | 38 | if [ -e $COLAB_GROUP_EXISTS ]; then |
| 28 | 39 | sudo groupadd $COLAB_GROUP; |
| 29 | 40 | LAST_CMD=`echo $?` |
| 30 | - if [ $LAST_CMD == $ERROR_NOT_ALLOWED ]; then | |
| 41 | + if [ $LAST_CMD == $ERROR_OK ]; then | |
| 42 | + echo "Group $COLAB_GROUP was created successfully!"; | |
| 43 | + elif [ $LAST_CMD == $ERROR_NOT_ALLOWED ]; then | |
| 31 | 44 | echo "You don't have permission to create groups" |
| 32 | 45 | echo "Aborting installation" |
| 33 | 46 | exit -1 |
| 47 | + else | |
| 48 | + echo "Something went weird, please check $COLAB_GROUP group" | |
| 34 | 49 | fi |
| 50 | +else | |
| 51 | + echo "Group $COLAB_GROUP already exist, skipping creation..." | |
| 35 | 52 | fi |
| 36 | 53 | |
| 37 | - | ... | ... |