BigW Consortium Gitlab

6.7-to-6.8.md 3.39 KB
Newer Older
1
# From 6.7 to 6.8
2
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.7-to-6.8.md) for the most up to date instructions.*
3

4
## 0. Backup
5 6 7 8 9 10

```bash
cd /home/git/gitlab
sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production
```

11
## 1. Stop server
12

13 14 15
```bash
sudo service gitlab stop
```
16

17
## 2. Get latest code
18 19 20 21 22 23

```bash
cd /home/git/gitlab
sudo -u git -H git fetch --all
```

24
For GitLab Community Edition:
25 26

```bash
27
sudo -u git -H git checkout 6-8-stable
28 29 30 31 32 33 34
```

OR

For GitLab Enterprise Edition:

```bash
35
sudo -u git -H git checkout 6-8-stable-ee
36 37
```

38
## 3. Update gitlab-shell (and its config)
39 40 41 42

```bash
cd /home/git/gitlab-shell
sudo -u git -H git fetch
43
sudo -u git -H git checkout v1.9.3
44 45
```

46
## 4. Install libs, migrations, etc.
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

```bash
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

# Close access to gitlab-satellites for others
Michael Krane committed
68
sudo chmod u+rwx,g=rx,o-rwx /home/git/gitlab-satellites
69 70
```

71
## 5. Update config files
72

73
### New configuration options for gitlab.yml
74 75 76 77 78 79 80

There are new configuration options available for gitlab.yml. View them with the command below and apply them to your current gitlab.yml if desired.

```
git diff 6-7-stable:config/gitlab.yml.example 6-8-stable:config/gitlab.yml.example
```

81
### MySQL? Remove reaping frequency
82 83 84

If you are using MySQL as a database, remove `reaping_frequency` from you database.yml to prevent crashes. [Relevant commit](https://gitlab.com/gitlab-org/gitlab-ce/commit/5163a8fcb9cfd63435560fda00173b76df2ccc93).

85
### HTTPS? Disable gzip
86 87 88

If you are using HTTPS, disable gzip as in [this commit](https://gitlab.com/gitlab-org/gitlab-ce/commit/563fec734912d81cd7caea6fa8ec2b397fb72a9b) to prevent BREACH attacks.

89
### Turn on asset compression
90 91 92

To improve performance, enable gzip asset compression as seen [in this commit](https://gitlab.com/gitlab-org/gitlab-ce/commit/8af94ed75505f0253823b9b2d44320fecea5b5fb).

93
## 6. Start application
94 95 96 97

    sudo service gitlab start
    sudo service nginx restart

98
## 7. Check application status
99 100 101 102 103 104 105 106 107 108 109

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!

110
## Things went south? Revert to previous version (6.7)
111 112 113

### 1. Revert the code to the previous version

114
Follow the [upgrade guide from 6.6 to 6.7](6.6-to-6.7.md), except for the database migration (the backup is already migrated to the previous version).
115 116

### 2. Restore from the backup
117 118 119 120 121 122

```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.