#!/bin/bash # Coloque aqui os ips do gitlab e do redmine IP_GITLAB= IP_REDMINE= IP_LDAP= PASSWORD_LDAP= while [ -e $IP_GITLAB ] do echo "Digite o IP externo do Gitlab: " read IP_GITLAB echo "IP digitado: $IP_GITLAB" echo "Confirma (y/n)?" read CONFIRMA if [ "$CONFIRMA" != "y" ] ; then IP_GITLAB= fi done while [ -e $IP_REDMINE ] do echo "Digite o IP externo do Redmine: " read IP_REDMINE echo "IP digitado: $IP_REDMINE" echo "Confirma (y/n)?" read CONFIRMA if [ "$CONFIRMA" != "y" ] ; then IP_REDMINE= fi done while [ -e $IP_LDAP ] do echo "Digite o IP externo do LDAP: " read IP_LDAP echo "Senha Ldap:" read PASSWORD_LDAP echo "IP digitado: $IP_LDAP" echo "PASSWORD digitado foi: $PASSWORD_LDAP" echo "Confirma (y/n)?" read CONFIRMA if [ "$CONFIRMA" != "y" ] ; then IP_LDAP= PASSWORD_LDAP= fi done # Atualizar o sistema sudo yum update -y #1. Instalar dependencias sudo yum install wget vim postfix openssh-server -y #2. Fazer o download do gitlab sudo wget https://downloads-packages.s3.amazonaws.com/centos-6.5/gitlab-7.0.0_omnibus-1.el6.x86_64.rpm #3. Instale o Gitlab echo "Instalando gitlab, leva alguns minutos" sudo rpm -i gitlab-7.0.0_omnibus-1.el6.x86_64.rpm #4. Criar o arquivo de configuracao do gitlab echo "Criando arquivo de configuracao do gitlab" sudo mkdir -p /etc/gitlab sudo touch /etc/gitlab/gitlab.rb sudo chmod 600 /etc/gitlab/gitlab.rb #5. Adicionar configuracoes para o gitlab echo "Editando as configuracoes do gitlab" sudo echo "redis['port'] = 1234" >> /etc/gitlab/gitlab.rb sudo echo "postgresql['port'] = 2345" >> /etc/gitlab/gitlab.rb sudo echo "unicorn['port'] = 3456" >> /etc/gitlab/gitlab.rb sudo echo "gitlab_rails['internal_api_url'] = 'http://localhost:3456'" >> /etc/gitlab/gitlab.rb sudo echo "external_url \"http://$IP_GITLAB\"" >> /etc/gitlab/gitlab.rb #6. Adicionar integracao com redmine sudo echo "gitlab_rails['issues_tracker_redmine'] = 'redmine'" >> /etc/gitlab/gitlab.rb sudo echo "gitlab_rails['issues_tracker_redmine_title'] = 'Redmine'" >> /etc/gitlab/gitlab.rb sudo echo "gitlab_rails['issues_tracker_redmine_project_url'] = 'http://$IP_REDMINE/redmine/projects/:issues_tracker_id'" >> /etc/gitlab/gitlab.rb sudo echo "gitlab_rails['issues_tracker_redmine_issues_url'] = 'http://$IP_REDMINE/redmine/issues/:id'" >> /etc/gitlab/gitlab.rb sudo echo "gitlab_rails['issues_tracker_redmine_new_issue_url'] = 'http://$IP_REDMINE/redmine/projects/:issues_tracker_id/issues/new'" >> /etc/gitlab/gitlab.rb #7. Liberando firewall para servisos http e ssh echo "Adicionando regras no firewall para habilitar http e ssh, caso estejam desabilitados" #sudo lokkit -s http -s ssh # Liberando porta 22, isso e' essencial para o funcionamento do git # Caso queira restringir o acesso para redes especificas, favor adicionar opcao # -s 192.168.0.0/24 #sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT echo "configurando ldap" localhost=$IP_LDAP base="dc=sei,dc=com" port="389" bind_dn="cn=admin,$base" password=$PASSWORD_LDAP sudo echo "gitlab_rails['ldap_enabled'] = true" >> /etc/gitlab/gitlab.rb sudo echo "gitlab_rails['ldap_host'] = '$localhost' " >> /etc/gitlab/gitlab.rb sudo echo "gitlab_rails['ldap_port'] = $port" >> /etc/gitlab/gitlab.rb sudo echo "gitlab_rails['ldap_base'] = '$base'" >> /etc/gitlab/gitlab.rb sudo echo "gitlab_rails['ldap_uid'] = 'uid'" >> /etc/gitlab/gitlab.rb sudo echo "gitlab_rails['ldap_method'] = 'plain'" >> /etc/gitlab/gitlab.rb sudo echo "gitlab_rails['ldap_bind_dn'] = '$bind_dn'" >> /etc/gitlab/gitlab.rb sudo echo "gitlab_rails['ldap_password'] = '$password'" >> /etc/gitlab/gitlab.rb sudo echo "gitlab_rails['ldap_allow_username_or_email_login'] = true" >> /etc/gitlab/gitlab.rb echo "Iniciando gitlab" sudo gitlab-ctl reconfigure sudo gitlab-ctl restart #8. Mostrando os dados do gitlab echo "Sucesso! Para acessar o gitlab, abra no navegador o ip $IP_GITLAB" echo "Usuario: root" echo "Senha: 5iveL!fe"