upgrader.md 2,9 КБ
Newer Older
Ciro Santilli's avatar
Ciro Santilli включено в состав коммита
1
# GitLab Upgrader
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
2

dosire's avatar
dosire включено в состав коммита
3
GitLab Upgrader - a ruby script that allows you easily upgrade GitLab to latest minor version.
Ciro Santilli's avatar
Ciro Santilli включено в состав коммита
4

dosire's avatar
dosire включено в состав коммита
5
For example it can update your application from 6.4 to latest GitLab 6 version (like 6.6.1).
Ciro Santilli's avatar
Ciro Santilli включено в состав коммита
6
7
8

You still need to create a backup and manually restart GitLab after running the script but all other operations are done by this upgrade script.

dosire's avatar
dosire включено в состав коммита
9
If you have local changes to your GitLab repository the script will stash them and you need to use `git stash pop` after running the script.
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
10

Ciro Santilli's avatar
Ciro Santilli включено в состав коммита
11
**GitLab Upgrader is available only for GitLab version 6.4.2 or higher.**
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
12

Achilleas Pipinellis's avatar
Achilleas Pipinellis включено в состав коммита
13
14
**This script does NOT update gitlab-shell, it needs manual update. See step 5 below.**

Ciro Santilli's avatar
Ciro Santilli включено в состав коммита
15
## 0. Backup
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
16
17
18
19

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

Ciro Santilli's avatar
Ciro Santilli включено в состав коммита
20
## 1. Stop server
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
21
22
23

    sudo service gitlab stop

Ciro Santilli's avatar
Ciro Santilli включено в состав коммита
24
## 2. Run GitLab upgrade tool
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
25

Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
26
Note: GitLab 7.6 adds `libkrb5-dev` as a dependency (installed by default on Ubuntu and OSX) while 7.2 adds `pkg-config` and `cmake` as dependency. Please check the dependencies in the [installation guide.](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/installation.md#1-packages-dependencies)
Job van der Voort's avatar
Job van der Voort включено в состав коммита
27

Marin Jankovski's avatar
Marin Jankovski включено в состав коммита
28
    # Starting with GitLab version 7.0 upgrader script has been moved to bin directory
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
29
    cd /home/git/gitlab
Marin Jankovski's avatar
Marin Jankovski включено в состав коммита
30
    if [ -f bin/upgrade.rb ]; then sudo -u git -H ruby bin/upgrade.rb; else sudo -u git -H ruby script/upgrade.rb; fi
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
31

dosire's avatar
dosire включено в состав коммита
32
    # to perform a non-interactive install (no user input required) you can add -y
Marin Jankovski's avatar
Marin Jankovski включено в состав коммита
33
    # if [ -f bin/upgrade.rb ]; then sudo -u git -H ruby bin/upgrade.rb -y; else sudo -u git -H ruby script/upgrade.rb -y; fi
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
34

Ciro Santilli's avatar
Ciro Santilli включено в состав коммита
35
## 3. Start application
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
36
37
38

    sudo service gitlab start
    sudo service nginx restart
Robert Djurasaj's avatar
Robert Djurasaj включено в состав коммита
39

Ciro Santilli's avatar
Ciro Santilli включено в состав коммита
40
## 4. Check application status
Robert Djurasaj's avatar
Robert Djurasaj включено в состав коммита
41

dosire's avatar
dosire включено в состав коммита
42
Check if GitLab and its dependencies are configured correctly:
Robert Djurasaj's avatar
Robert Djurasaj включено в состав коммита
43
44

    sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production
Marin Jankovski's avatar
Marin Jankovski включено в состав коммита
45

Robert Djurasaj's avatar
Robert Djurasaj включено в состав коммита
46
If all items are green, then congratulations upgrade is complete!
Remy van Elst's avatar
Remy van Elst включено в состав коммита
47

Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
48
## 5. Upgrade GitLab Shell
Ciro Santilli's avatar
Ciro Santilli включено в состав коммита
49

Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
50
GitLab Shell might be outdated, running the commands below ensures you're using a compatible version:
Marin Jankovski's avatar
Marin Jankovski включено в состав коммита
51
52
53
54

```
cd /home/git/gitlab-shell
sudo -u git -H git fetch
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
55
sudo -u git -H git checkout v`cat /home/git/gitlab/GITLAB_SHELL_VERSION`
Marin Jankovski's avatar
Marin Jankovski включено в состав коммита
56
```
Remy van Elst's avatar
Remy van Elst включено в состав коммита
57

Ciro Santilli's avatar
Ciro Santilli включено в состав коммита
58
## One line upgrade command
Remy van Elst's avatar
Remy van Elst включено в состав коммита
59

dosire's avatar
dosire включено в состав коммита
60
You've read through the entire guide and probably already did all the steps one by one.
Ciro Santilli's avatar
Ciro Santilli включено в состав коммита
61

Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
62
Here is a one line command with step 1 to 5 for the next time you upgrade:
Remy van Elst's avatar
Remy van Elst включено в состав коммита
63

Terry Wang's avatar
Terry Wang включено в состав коммита
64
```bash
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
65
66
cd /home/git/gitlab; \
  sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production; \
Marin Jankovski's avatar
Marin Jankovski включено в состав коммита
67
68
  sudo service gitlab stop; \
  if [ -f bin/upgrade.rb ]; then sudo -u git -H ruby bin/upgrade.rb -y; else sudo -u git -H ruby script/upgrade.rb -y; fi; \
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
69
70
71
72
  cd /home/git/gitlab-shell; \
  sudo -u git -H git fetch; \
  sudo -u git -H git checkout v`cat /home/git/gitlab/GITLAB_SHELL_VERSION`; \
  cd /home/git/gitlab; \
Marin Jankovski's avatar
Marin Jankovski включено в состав коммита
73
  sudo service gitlab start; \
Terry Wang's avatar
Terry Wang включено в состав коммита
74
75
  sudo service nginx restart; sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production
```