Updated the installation and update guides
This commit is contained in:
parent
eceec9b1c5
commit
d11c64a67f
|
@ -183,9 +183,9 @@ We recommend using a PostgreSQL database. For MySQL check [MySQL setup guide](da
|
|||
### Clone the Source
|
||||
|
||||
# Clone GitLab repository
|
||||
sudo -u git -H git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 7-6-stable gitlab
|
||||
sudo -u git -H git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 7-8-stable gitlab
|
||||
|
||||
**Note:** You can change `7-6-stable` to `master` if you want the *bleeding edge* version, but never install master on a production server!
|
||||
**Note:** You can change `7-8-stable` to `master` if you want the *bleeding edge* version, but never install master on a production server!
|
||||
|
||||
### Configure It
|
||||
|
||||
|
@ -280,7 +280,7 @@ We recommend using a PostgreSQL database. For MySQL check [MySQL setup guide](da
|
|||
GitLab Shell is an SSH access and repository management software developed specially for GitLab.
|
||||
|
||||
# Run the installation task for gitlab-shell (replace `REDIS_URL` if needed):
|
||||
sudo -u git -H bundle exec rake gitlab:shell:install[v2.4.2] REDIS_URL=unix:/var/run/redis/redis.sock RAILS_ENV=production
|
||||
sudo -u git -H bundle exec rake gitlab:shell:install[v2.4.3] REDIS_URL=unix:/var/run/redis/redis.sock RAILS_ENV=production
|
||||
|
||||
# By default, the gitlab-shell config is generated from your main GitLab config.
|
||||
# You can review (and modify) the gitlab-shell config as follows:
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
|
||||
GitLab 6.0 is affected by critical security vulnerabilities CVE-2013-4490 and CVE-2013-4489.
|
||||
|
||||
**You need to follow this guide first, before updating past 6.0, as it contains critical migration steps that are only present
|
||||
in the `6-0-stable` branch**
|
||||
|
||||
## Deprecations
|
||||
|
||||
### Global projects
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# From 6.x or 7.x to 7.7
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.x-or-7.x-to-7.4.md) for the most up to date instructions.*
|
||||
# From 6.x or 7.x to 7.8
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.x-or-7.x-to-7.8.md) for the most up to date instructions.*
|
||||
|
||||
This allows you to upgrade any version of GitLab from 6.0 and up (including 7.0 and up) to 7.7.
|
||||
This allows you to upgrade any version of GitLab from 6.0 and up (including 7.0 and up) to 7.8.
|
||||
|
||||
## Global issue numbers
|
||||
|
||||
|
@ -71,7 +71,7 @@ sudo -u git -H git checkout -- db/schema.rb # local changes will be restored aut
|
|||
For GitLab Community Edition:
|
||||
|
||||
```bash
|
||||
sudo -u git -H git checkout 7-7-stable
|
||||
sudo -u git -H git checkout 7-8-stable
|
||||
```
|
||||
|
||||
OR
|
||||
|
@ -79,7 +79,7 @@ OR
|
|||
For GitLab Enterprise Edition:
|
||||
|
||||
```bash
|
||||
sudo -u git -H git checkout 7-7-stable-ee
|
||||
sudo -u git -H git checkout 7-8-stable-ee
|
||||
```
|
||||
|
||||
## 4. Install additional packages
|
||||
|
@ -123,7 +123,7 @@ sudo apt-get install libkrb5-dev
|
|||
```bash
|
||||
cd /home/git/gitlab-shell
|
||||
sudo -u git -H git fetch
|
||||
sudo -u git -H git checkout v2.4.1
|
||||
sudo -u git -H git checkout v2.4.3
|
||||
```
|
||||
|
||||
## 7. Install libs, migrations, etc.
|
||||
|
@ -158,14 +158,14 @@ sudo cp lib/support/init.d/gitlab /etc/init.d/gitlab
|
|||
TIP: to see what changed in `gitlab.yml.example` in this release use next command:
|
||||
|
||||
```
|
||||
git diff 6-0-stable:config/gitlab.yml.example 7-7-stable:config/gitlab.yml.example
|
||||
git diff 6-0-stable:config/gitlab.yml.example 7-8-stable:config/gitlab.yml.example
|
||||
```
|
||||
|
||||
* Make `/home/git/gitlab/config/gitlab.yml` the same as https://gitlab.com/gitlab-org/gitlab-ce/blob/7-7-stable/config/gitlab.yml.example but with your settings.
|
||||
* Make `/home/git/gitlab/config/unicorn.rb` the same as https://gitlab.com/gitlab-org/gitlab-ce/blob/7-7-stable/config/unicorn.rb.example but with your settings.
|
||||
* Make `/home/git/gitlab/config/gitlab.yml` the same as https://gitlab.com/gitlab-org/gitlab-ce/blob/7-8-stable/config/gitlab.yml.example but with your settings.
|
||||
* Make `/home/git/gitlab/config/unicorn.rb` the same as https://gitlab.com/gitlab-org/gitlab-ce/blob/7-8-stable/config/unicorn.rb.example but with your settings.
|
||||
* Make `/home/git/gitlab-shell/config.yml` the same as https://gitlab.com/gitlab-org/gitlab-shell/blob/v2.4.0/config.yml.example but with your settings.
|
||||
* HTTP setups: Make `/etc/nginx/sites-available/gitlab` the same as https://gitlab.com/gitlab-org/gitlab-ce/blob/7-7-stable/lib/support/nginx/gitlab but with your settings.
|
||||
* HTTPS setups: Make `/etc/nginx/sites-available/gitlab-ssl` the same as https://gitlab.com/gitlab-org/gitlab-ce/blob/7-7-stable/lib/support/nginx/gitlab-ssl but with your settings.
|
||||
* HTTP setups: Make `/etc/nginx/sites-available/gitlab` the same as https://gitlab.com/gitlab-org/gitlab-ce/blob/7-8-stable/lib/support/nginx/gitlab but with your settings.
|
||||
* HTTPS setups: Make `/etc/nginx/sites-available/gitlab-ssl` the same as https://gitlab.com/gitlab-org/gitlab-ce/blob/7-8-stablef/lib/support/nginx/gitlab-ssl but with your settings.
|
||||
* Copy rack attack middleware config
|
||||
|
||||
```bash
|
||||
|
@ -273,11 +273,11 @@ mysql> \q
|
|||
sudo -u git -H editor /home/git/gitlab/config/database.yml
|
||||
```
|
||||
|
||||
## Things went south? Revert to previous version (6.0)
|
||||
## Things went south? Revert to previous version (7.0)
|
||||
|
||||
### 1. Revert the code to the previous version
|
||||
|
||||
Follow the [upgrade guide from 5.4 to 6.0](5.4-to-6.0.md), except for the database migration (the backup is already migrated to the previous version).
|
||||
Follow the [upgrade guide from 6.9 to 7.0](6.9-to-7.0.md), except for the database migration (the backup is already migrated to the previous version).
|
||||
|
||||
### 2. Restore from the backup:
|
||||
|
|
@ -0,0 +1,119 @@
|
|||
# From 7.7 to 7.8
|
||||
|
||||
### 0. Stop server
|
||||
|
||||
sudo service gitlab stop
|
||||
|
||||
### 1. Backup
|
||||
|
||||
```bash
|
||||
cd /home/git/gitlab
|
||||
sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production
|
||||
```
|
||||
|
||||
### 2. Get latest code
|
||||
|
||||
```bash
|
||||
sudo -u git -H git fetch --all
|
||||
sudo -u git -H git checkout -- db/schema.rb # local changes will be restored automatically
|
||||
```
|
||||
|
||||
For GitLab Community Edition:
|
||||
|
||||
```bash
|
||||
sudo -u git -H git checkout 7-8-stable
|
||||
```
|
||||
|
||||
OR
|
||||
|
||||
For GitLab Enterprise Edition:
|
||||
|
||||
```bash
|
||||
sudo -u git -H git checkout 7-8-stable-ee
|
||||
```
|
||||
|
||||
### 3. Update gitlab-shell
|
||||
|
||||
```bash
|
||||
cd /home/git/gitlab-shell
|
||||
sudo -u git -H git fetch
|
||||
sudo -u git -H git checkout v2.4.3
|
||||
```
|
||||
|
||||
### 4. Install libs, migrations, etc.
|
||||
|
||||
```bash
|
||||
sudo apt-get install libkrb5-dev
|
||||
|
||||
cd /home/git/gitlab
|
||||
|
||||
# MySQL installations (note: the line below states '--without ... postgres')
|
||||
sudo -u git -H bundle install --without development test postgres --deployment
|
||||
|
||||
# PostgreSQL installations (note: the line below states '--without ... mysql')
|
||||
sudo -u git -H bundle install --without development test mysql --deployment
|
||||
|
||||
# Run database migrations
|
||||
sudo -u git -H bundle exec rake db:migrate RAILS_ENV=production
|
||||
|
||||
# Clean up assets and cache
|
||||
sudo -u git -H bundle exec rake assets:clean assets:precompile cache:clear RAILS_ENV=production
|
||||
|
||||
# Update init.d script
|
||||
sudo cp lib/support/init.d/gitlab /etc/init.d/gitlab
|
||||
```
|
||||
|
||||
### 5. Update config files
|
||||
|
||||
#### New configuration options for `gitlab.yml`
|
||||
|
||||
There are new configuration options available for [`gitlab.yml`](config/gitlab.yml.example). View them with the command below and apply them to your current `gitlab.yml`.
|
||||
|
||||
```
|
||||
git diff origin/7-6-stable:config/gitlab.yml.example origin/7-8-stable:config/gitlab.yml.example
|
||||
```
|
||||
|
||||
#### Change Nginx settings
|
||||
|
||||
* HTTP setups: Make `/etc/nginx/sites-available/gitlab` the same as [`lib/support/nginx/gitlab`](/lib/support/nginx/gitlab) but with your settings
|
||||
* HTTPS setups: Make `/etc/nginx/sites-available/gitlab-ssl` the same as [`lib/support/nginx/gitlab-ssl`](/lib/support/nginx/gitlab-ssl) but with your setting
|
||||
|
||||
#### Setup time zone (optional)
|
||||
|
||||
Consider setting the time zone in `gitlab.yml` otherwise GitLab will default to UTC. If you set a time zone previously in [`application.rb`](config/application.rb) (unlikely), unset it.
|
||||
|
||||
### 6. Start application
|
||||
|
||||
sudo service gitlab start
|
||||
sudo service nginx restart
|
||||
|
||||
### 7. Check application status
|
||||
|
||||
Check if GitLab and its environment are configured correctly:
|
||||
|
||||
sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production
|
||||
|
||||
To make sure you didn't miss anything run a more thorough check with:
|
||||
|
||||
sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production
|
||||
|
||||
If all items are green, then congratulations upgrade is complete!
|
||||
|
||||
### 8. GitHub settings (if applicable)
|
||||
|
||||
If you are using GitHub as an OAuth provider for authentication, you should change the callback URL so that it
|
||||
only contains a root URL (ex. `https://gitlab.example.com/`)
|
||||
|
||||
## Things went south? Revert to previous version (7.6)
|
||||
|
||||
### 1. Revert the code to the previous version
|
||||
Follow the [upgrade guide from 7.5 to 7.6](7.5-to-7.6.md), except for the database migration
|
||||
(The backup is already migrated to the previous version)
|
||||
|
||||
### 2. Restore from the backup:
|
||||
|
||||
```bash
|
||||
cd /home/git/gitlab
|
||||
sudo -u git -H bundle exec rake gitlab:backup:restore RAILS_ENV=production
|
||||
```
|
||||
If you have more than one backup *.tar file(s) please add `BACKUP=timestamp_of_backup` to the command above.
|
Loading…
Reference in New Issue