summaryrefslogtreecommitdiff
path: root/doc/ci/update/patch_versions.md
diff options
context:
space:
mode:
Diffstat (limited to 'doc/ci/update/patch_versions.md')
-rw-r--r--doc/ci/update/patch_versions.md59
1 files changed, 59 insertions, 0 deletions
diff --git a/doc/ci/update/patch_versions.md b/doc/ci/update/patch_versions.md
new file mode 100644
index 00000000000..c13f69c03c9
--- /dev/null
+++ b/doc/ci/update/patch_versions.md
@@ -0,0 +1,59 @@
+# Universal update guide for patch versions. For example from 4.0.0 to 4.0.1, also see the [semantic versioning specification](http://semver.org/).
+
+### 1. Stop CI server
+
+ sudo service gitlab_ci stop
+
+### 2. Switch to your gitlab_ci user
+
+```
+sudo su gitlab_ci
+cd /home/gitlab_ci/gitlab-ci
+```
+
+### 3. Get latest code
+
+```
+git pull origin STABLE_BRANCH
+```
+
+### 4. Install libs, migrations etc
+
+```
+bundle install --without development test --deployment
+bundle exec rake db:migrate RAILS_ENV=production
+```
+
+### 5. Start web application
+
+ sudo service gitlab_ci start
+
+
+# One line upgrade command
+
+You have read through the entire guide and probably already did all the steps one by one.
+
+Here is a one line command with all above steps for the next time you upgrade:
+
+```
+ sudo service gitlab_ci stop && \
+ cd /home/gitlab_ci/gitlab-ci && \
+ sudo -u gitlab_ci -H git pull origin `git rev-parse --abbrev-ref HEAD` && \
+ sudo -u gitlab_ci -H bundle install --without development test --deployment && \
+ sudo -u gitlab_ci -H bundle exec rake db:migrate RAILS_ENV=production && \
+ cd && \
+ sudo service gitlab_ci start
+```
+
+Since when we start this `gitlab_ci` service, the document `db/schema.rb` is shown always as modified for git, you could even do like this, **if and only if**, you are sure you only have that modification:
+
+```
+ sudo service gitlab_ci stop && \
+ cd /home/gitlab_ci/gitlab-ci && \
+ sudo -u gitlab_ci -H git checkout -f `git rev-parse --abbrev-ref HEAD` && \
+ sudo -u gitlab_ci -H git pull origin `git rev-parse --abbrev-ref HEAD` && \
+ sudo -u gitlab_ci -H bundle install --without development test --deployment && \
+ sudo -u gitlab_ci -H bundle exec rake db:migrate RAILS_ENV=production && \
+ cd && \
+ sudo service gitlab_ci start
+```