Commit d59d2a197e5ffb0231f97b0ef503e12e8d383709
1 parent
5ab3e38e
Exists in
master
and in
4 other branches
cleanup gitlab from setup scripts
Showing
2 changed files
with
0 additions
and
167 deletions
Show diff stats
doc/debian_ubuntu.sh
| ... | ... | @@ -1,45 +0,0 @@ |
| 1 | -#!/bin/sh | |
| 2 | - | |
| 3 | -sudo apt-get update | |
| 4 | -sudo apt-get upgrade | |
| 5 | - | |
| 6 | -sudo DEBIAN_FRONTEND='noninteractive' apt-get install -y postfix-policyd-spf-python # Install postfix without prompting. | |
| 7 | -sudo apt-get install -y git git-core wget curl gcc checkinstall libxml2-dev libxslt-dev sqlite3 libsqlite3-dev libcurl4-openssl-dev libreadline-gplv2-dev libc6-dev libssl-dev libmysql++-dev make build-essential zlib1g-dev libicu-dev redis-server openssh-server python-dev python-pip libyaml-dev | |
| 8 | - | |
| 9 | -wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p194.tar.gz | |
| 10 | -tar xfvz ruby-1.9.3-p194.tar.gz | |
| 11 | -cd ruby-1.9.3-p194 | |
| 12 | -./configure | |
| 13 | -make | |
| 14 | -sudo make install | |
| 15 | - | |
| 16 | -sudo adduser \ | |
| 17 | - --system \ | |
| 18 | - --shell /bin/sh \ | |
| 19 | - --gecos 'git version control' \ | |
| 20 | - --group \ | |
| 21 | - --disabled-password \ | |
| 22 | - --home /home/git \ | |
| 23 | - git | |
| 24 | - | |
| 25 | -sudo adduser --disabled-login --gecos 'gitlab system' gitlab | |
| 26 | - | |
| 27 | -sudo usermod -a -G git gitlab | |
| 28 | - | |
| 29 | -sudo -H -u gitlab ssh-keygen -q -N '' -t rsa -f /home/gitlab/.ssh/id_rsa | |
| 30 | - | |
| 31 | -cd /home/git | |
| 32 | -sudo -H -u git git clone git://github.com/gitlabhq/gitolite /home/git/gitolite | |
| 33 | - | |
| 34 | -sudo -u git -H sh -c "PATH=/home/git/bin:$PATH; /home/git/gitolite/src/gl-system-install" | |
| 35 | -sudo cp /home/gitlab/.ssh/id_rsa.pub /home/git/gitlab.pub | |
| 36 | -sudo chmod 777 /home/git/gitlab.pub | |
| 37 | - | |
| 38 | -sudo -u git -H sed -i 's/0077/0007/g' /home/git/share/gitolite/conf/example.gitolite.rc | |
| 39 | -sudo -u git -H sh -c "PATH=/home/git/bin:$PATH; gl-setup -q /home/git/gitlab.pub" | |
| 40 | - | |
| 41 | -sudo chmod -R g+rwX /home/git/repositories/ | |
| 42 | -sudo chown -R git:git /home/git/repositories/ | |
| 43 | - | |
| 44 | -sudo -u gitlab -H git clone git@localhost:gitolite-admin.git /tmp/gitolite-admin | |
| 45 | -sudo rm -rf /tmp/gitolite-admin |
lib/support/aws/debian_ubuntu_aws.sh
| ... | ... | @@ -1,122 +0,0 @@ |
| 1 | -#!/bin/sh | |
| 2 | - | |
| 3 | -# ABOUT | |
| 4 | -# This script performs a complete installation of Gitlab (master branch). | |
| 5 | -# Is can be run with one command without needing _any_ user input after that. | |
| 6 | -# This script only works on Amazon Web Services (AWS). | |
| 7 | -# The operating system used is Ubuntu 12.04 64bit. | |
| 8 | - | |
| 9 | -# HOWTO | |
| 10 | -# Signup for AWS, free tier are available at http://aws.amazon.com/free/ | |
| 11 | -# Go to EC2 tab in the AWS console EC2 https://console.aws.amazon.com/ec2/home | |
| 12 | -# Click the 'Launch Instance' button | |
| 13 | -# Select: 'Quick launch wizard' and continue | |
| 14 | -# Choose a key pair => Create New => Name it => Download it | |
| 15 | -# Choose a Launch Configuration => Select 'More Amazon Marketplace Images' | |
| 16 | -# Press 'Continue' | |
| 17 | -# Enter 'ubuntu/images/ubuntu-precise-12.04-amd64-server-20120424' and press 'Search' | |
| 18 | -# Select the only result (ami-3c994355) and press 'Continue' | |
| 19 | -# Press 'Edit details' if you want to modify something, for example make the type 'c1.medium' to make the install faster. | |
| 20 | -# Press the 'Launch' button | |
| 21 | -# Press 'Close' | |
| 22 | -# Click 'Security Groups' under the left hand menu 'NETWORK & SECURITY' | |
| 23 | -# Select the newly create seciruty group, probably named 'quicklaunch-1' | |
| 24 | -# Click on the Inbound tab | |
| 25 | -# In the 'Create a new rule' dropdown select 'HTTP' | |
| 26 | -# Press 'Add Rule' | |
| 27 | -# In the 'Create a new rule' dropdown select 'HTTPS' | |
| 28 | -# Press 'Add Rule' | |
| 29 | -# Press 'Apply Rule Changes' | |
| 30 | -# Give the following command in your local terminal while suptituting the UPPERCASE items | |
| 31 | -# 'ssh -i LOCATION_OF_AWS_KEY_PAIR_PRIVATE_KEY PUBLIC_DNS_OF_THE_NEW_SERVER' | |
| 32 | -# Execute the curl command below and when its ready follow the printed 'Log in instuctions' | |
| 33 | -# curl https://raw.github.com/gitlabhq/gitlabhq/master/lib/support/aws/debian_ubuntu_aws.sh | sh | |
| 34 | - | |
| 35 | -# Prevent fingerprint prompt for localhost in step 1 to 3. | |
| 36 | -echo "Host localhost | |
| 37 | - StrictHostKeyChecking no | |
| 38 | - UserKnownHostsFile=/dev/null" | sudo tee -a /etc/ssh/ssh_config | |
| 39 | - | |
| 40 | -# Existing script for Step 1 to 3 | |
| 41 | -curl https://raw.github.com/gitlabhq/gitlabhq/master/doc/debian_ubuntu.sh | sh | |
| 42 | - | |
| 43 | -# Install MySQL | |
| 44 | -sudo apt-get install -y makepasswd # Needed to create a unique password non-interactively. | |
| 45 | -userPassword=$(makepasswd --char=10) # Generate a random MySQL password | |
| 46 | -# Note that the lines below creates a cleartext copy of the random password in /var/cache/debconf/passwords.dat | |
| 47 | -# This file is normally only readable by root and the password will be deleted by the package management system after install. | |
| 48 | -echo mysql-server mysql-server/root_password password $userPassword | sudo debconf-set-selections | |
| 49 | -echo mysql-server mysql-server/root_password_again password $userPassword | sudo debconf-set-selections | |
| 50 | -sudo apt-get install -y mysql-server | |
| 51 | - | |
| 52 | -# Gitlab install | |
| 53 | -sudo gem install charlock_holmes --version '0.6.8' | |
| 54 | -sudo pip install pygments | |
| 55 | -sudo gem install bundler | |
| 56 | -sudo su -l gitlab -c "git clone git://github.com/gitlabhq/gitlabhq.git gitlab" # Using master everywhere. | |
| 57 | -sudo su -l gitlab -c "cd gitlab && mkdir tmp" | |
| 58 | -sudo su -l gitlab -c "cd gitlab/config && cp gitlab.yml.example gitlab.yml" | |
| 59 | -sudo su -l gitlab -c "cd gitlab/config && cp database.yml.example database.yml" | |
| 60 | -sudo sed -i 's/"secure password"/"'$userPassword'"/' /home/gitlab/gitlab/config/database.yml # Insert the mysql root password. | |
| 61 | -sudo su -l gitlab -c "cd gitlab && bundle install --without development test --deployment" | |
| 62 | -sudo su -l gitlab -c "cd gitlab && bundle exec rake gitlab:app:setup RAILS_ENV=production" | |
| 63 | - | |
| 64 | -# Setup gitlab hooks | |
| 65 | -sudo cp /home/gitlab/gitlab/lib/hooks/post-receive /home/git/share/gitolite/hooks/common/post-receive | |
| 66 | -sudo chown git:git /home/git/share/gitolite/hooks/common/post-receive | |
| 67 | - | |
| 68 | -# Set the first occurrence of host in the Gitlab config to the publicly available domain name | |
| 69 | -sudo sed -i '0,/host/s/localhost/'`wget -qO- http://instance-data/latest/meta-data/public-hostname`'/' /home/gitlab/gitlab/config/gitlab.yml | |
| 70 | - | |
| 71 | -# Gitlab installation test (optional) | |
| 72 | -# sudo -u gitlab bundle exec rake gitlab:app:status RAILS_ENV=production | |
| 73 | -# sudo -u gitlab bundle exec rails s -e production | |
| 74 | -# sudo -u gitlab bundle exec rake environment resque:work QUEUE=* RAILS_ENV=production BACKGROUND=no | |
| 75 | - | |
| 76 | -# Install and configure Nginx | |
| 77 | -sudo apt-get install -y nginx | |
| 78 | -sudo cp /home/gitlab/gitlab/lib/support/nginx-gitlab /etc/nginx/sites-available/gitlab | |
| 79 | -sudo ln -s /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/gitlab | |
| 80 | -sudo sed -i 's/YOUR_SERVER_IP/'`wget -qO- http://instance-data/latest/meta-data/local-ipv4`'/' /etc/nginx/sites-available/gitlab # Set private ip address (public won't work). | |
| 81 | -sudo sed -i 's/YOUR_SERVER_FQDN/'`wget -qO- http://instance-data/latest/meta-data/public-hostname`'/' /etc/nginx/sites-available/gitlab # Set public dns domain name. | |
| 82 | - | |
| 83 | -# Configure Unicorn | |
| 84 | -sudo -u gitlab cp /home/gitlab/gitlab/config/unicorn.rb.orig /home/gitlab/gitlab/config/unicorn.rb | |
| 85 | - | |
| 86 | -# Create a Gitlab service | |
| 87 | -sudo cp /home/gitlab/gitlab/lib/support/init-gitlab /etc/init.d/gitlab | |
| 88 | -sudo chmod +x /etc/init.d/gitlab && sudo update-rc.d gitlab defaults | |
| 89 | - | |
| 90 | -## Gitlab service commands (unicorn and resque) | |
| 91 | -## restart doesn't restart resque, only start/stop effect it. | |
| 92 | -sudo -u gitlab service gitlab start | |
| 93 | -# sudo -u gitlab service gitlab restart | |
| 94 | -# sudo -u gitlab service gitlab stop | |
| 95 | - | |
| 96 | -# nginx Service commands | |
| 97 | -# sudo service nginx start | |
| 98 | -sudo service nginx restart | |
| 99 | -# sudo service nginx stop | |
| 100 | - | |
| 101 | -# Manual startup commands for troubleshooting when the service commands do not work | |
| 102 | -# sudo -u gitlab bundle exec unicorn_rails -c config/unicorn.rb -E production -D | |
| 103 | -# sudo su -l gitlab -c "cd gitlab && ./resque.sh" | |
| 104 | - | |
| 105 | -# Monitoring commands | |
| 106 | -# sudo tail -f /var/log/nginx/access.log; | |
| 107 | -# sudo tail -f /var/log/nginx/error.log; | |
| 108 | - | |
| 109 | -# Go to gitlab directory by default on next login. | |
| 110 | -echo 'cd /home/gitlab/gitlab' >> /home/ubuntu/.bashrc | |
| 111 | - | |
| 112 | -echo '' | |
| 113 | -echo '###########################################' | |
| 114 | -echo '# Log in instuctions #' | |
| 115 | -echo '###########################################' | |
| 116 | -echo '' | |
| 117 | -echo "Surf to this Gitlab installation in your browser:" | |
| 118 | -echo "http://`wget -qO- http://instance-data/latest/meta-data/public-hostname`/" | |
| 119 | -echo '' | |
| 120 | -echo 'and login with the following Email and Password:' | |
| 121 | -echo 'admin@local.host' | |
| 122 | -echo '5iveL!fe' | |
| 123 | 0 | \ No newline at end of file |