From c899c294fd36ae6a1c7a45152e8b76b4f0d82b37 Mon Sep 17 00:00:00 2001 From: Ciro Santilli Date: Fri, 4 Jul 2014 08:14:34 +0200 Subject: [PATCH 1/9] Clariy squash comes after review. So people don't focus on writing good commit messages for a bunch of unrelated fixes. --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a08ffa449d..b11e89aefb 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -98,7 +98,7 @@ For examples of feedback on merge requests please look at already [closed merge 1. Contains functionality we think other users will benefit from too 1. Doesn't add configuration options since they complicate future changes 1. Initially contains a single commit (please use `git rebase -i` to squash commits) -1. Changes after submitting the merge request should be in separate commits (no squashing) +1. Changes after submitting the merge request should be in separate commits (no squashing). You will be asked to squash when the review is over, before merging. 1. It conforms to the following style guides ## Style guides From 3aea2f6fe1f0cb968778c5b6f1d048c5d1d9f1fc Mon Sep 17 00:00:00 2001 From: Robert Schilling Date: Sat, 5 Jul 2014 12:43:46 +0200 Subject: [PATCH 2/9] Fixes #171, correct links in update guide 5.1 to 6.0 --- doc/update/5.1-to-6.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/update/5.1-to-6.0.md b/doc/update/5.1-to-6.0.md index 11afc75f0f..d8484b2c65 100644 --- a/doc/update/5.1-to-6.0.md +++ b/doc/update/5.1-to-6.0.md @@ -95,15 +95,15 @@ sudo -u git -H bundle exec rake assets:precompile RAILS_ENV=production Note: We switched from Puma in GitLab 5.x to unicorn in GitLab 6.0. -- Make `/home/git/gitlab/config/gitlab.yml` the same as https://gitlab.com/gitlab-org/gitlab-ce/blob/masterconfig/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/masterconfig/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/6-0-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/6-0-stable/config/unicorn.rb.example but with your settings. ## 7. Update Init script ```bash cd /home/git/gitlab sudo rm /etc/init.d/gitlab -sudo cp lib/support/init.d/gitlab /etc/init.d/gitlab +sudo cp lib/support/init.d/gitlab /etc/init.d/gitlab sudo chmod +x /etc/init.d/gitlab ``` From fa5726690f8472a7c229ff8a2e78b4081da50388 Mon Sep 17 00:00:00 2001 From: Christoph Uschkrat Date: Sun, 13 Jul 2014 15:14:55 +0200 Subject: [PATCH 3/9] Fix typos in CONTRIBUTING.md --- CONTRIBUTING.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e7e4cbf39a..d486bf7379 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -65,12 +65,12 @@ If you can, please submit a merge request with the fix or improvements including 1. If you have multiple commits please combine them into one commit by [squashing them](http://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) 1. Push the commit to your fork 1. Submit a merge request (MR) to the master branch -1. The MR title should describes the change you want to make +1. The MR title should describe the change you want to make 1. The MR description should give a motive for your change and the method you used to achieve it 1. If the MR changes the UI it should include before and after screenshots 1. If the MR changes CSS classes please include the list of affected pages `grep css-class ./app -R` 1. Link relevant [issues](https://gitlab.com/gitlab-org/gitlab-ce/issues) and/or [feature requests](http://feedback.gitlab.com/) from the merge request description and leave a comment on them with a link back to the MR -1. Be prepared to answer questions and incorporate feedback even if requests for this arrive weeks or months after your MR submittion +1. Be prepared to answer questions and incorporate feedback even if requests for this arrive weeks or months after your MR submission 1. If your MR touches code that executes shell commands, make sure it adheres to the [shell command guidelines]( doc/development/shell_commands.md). The **official merge window** is in the beginning of the month from the 1st to the 7th day of the month. The best time to submit a MR and get feedback fast. Before this time the GitLab B.V. team is still dealing with work that is created by the monthly release such as assisting subscribers with upgrade issues, the release of Enterprise Edition and the upgrade of GitLab Cloud. After the 7th it is already getting closer to the release date of the next version. This means there is less time to fix the issues created by merging large new features. From de582ab375a1fd04b63ea351aabbff5b31bcad6b Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Wed, 16 Jul 2014 15:12:33 +0300 Subject: [PATCH 4/9] Fix user params when edit from admin area Signed-off-by: Dmitriy Zaporozhets --- app/controllers/admin/users_controller.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/controllers/admin/users_controller.rb b/app/controllers/admin/users_controller.rb index 44c93471df..0443e8b89e 100644 --- a/app/controllers/admin/users_controller.rb +++ b/app/controllers/admin/users_controller.rb @@ -59,15 +59,17 @@ class Admin::UsersController < Admin::ApplicationController end def update + user_params_with_pass = user_params.dup + if params[:user][:password].present? - user_params.merge( + user_params_with_pass.merge!( password: params[:user][:password], password_confirmation: params[:user][:password_confirmation], ) end respond_to do |format| - if user.update_attributes(user_params) + if user.update_attributes(user_params_with_pass) user.confirm! format.html { redirect_to [:admin, user], notice: 'User was successfully updated.' } format.json { head :ok } From c300788830b07faca8669920e92c0a99193bbf5e Mon Sep 17 00:00:00 2001 From: Sytse Sijbrandij Date: Wed, 16 Jul 2014 20:56:58 +0200 Subject: [PATCH 5/9] Ensure the readme answers the most important questions. --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/README.md b/README.md index 07c5c61e93..bcee4e064f 100644 --- a/README.md +++ b/README.md @@ -127,3 +127,12 @@ All documentation can be found on [doc.gitlab.com/ce/](http://doc.gitlab.com/ce/ ## Getting help Please see [Getting help for GitLab](https://www.gitlab.com/getting-help/) on our website for the many options to get help. + +## Is it any good? + +[Yes](https://news.ycombinator.com/item?id=3067434) + +## Is it awesome? + +Thanks for [asking this question](https://twitter.com/supersloth/status/489462789384056832) Joshua. +[These people](https://twitter.com/gitlabhq/favorites) seem to like it. From 771f4dbc3e41fd67cbd5c7a563165b68e25f8eff Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Thu, 17 Jul 2014 16:49:33 +0300 Subject: [PATCH 6/9] Update guide from 7.0 to 7.1 Signed-off-by: Dmitriy Zaporozhets --- doc/update/7.0-to-7.1.md | 138 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 138 insertions(+) create mode 100644 doc/update/7.0-to-7.1.md diff --git a/doc/update/7.0-to-7.1.md b/doc/update/7.0-to-7.1.md new file mode 100644 index 0000000000..6864101f8c --- /dev/null +++ b/doc/update/7.0-to-7.1.md @@ -0,0 +1,138 @@ +# From 7.0 to 7.1 + +### 0. Backup + +```bash +cd /home/git/gitlab +sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production +``` + +### 1. Stop server + +```bash +sudo service gitlab stop +``` + +### 2. Update Ruby + +If you are still using Ruby 1.9.3 or below, you will need to update Ruby. +You can check which version you are running with `ruby -v`. + +If you are you running Ruby 2.0.x, you do not need to upgrade ruby, but can consider doing so for performance reasons. + +If you are running Ruby 2.1.1 consider upgrading to 2.1.2, because of the high memory usage of Ruby 2.1.1. + +Install, update dependencies: + +```bash +sudo apt-get install build-essential zlib1g-dev libyaml-dev libssl-dev libgdbm-dev libreadline-dev libncurses5-dev libffi-dev curl +``` + +Download and compile Ruby: + +```bash +mkdir /tmp/ruby && cd /tmp/ruby +curl --progress ftp://ftp.ruby-lang.org/pub/ruby/2.1/ruby-2.1.2.tar.gz | tar xz +cd ruby-2.1.2 +./configure --disable-install-rdoc +make +sudo make install +``` + +Install Bundler: + +```bash +sudo gem install bundler --no-ri --no-rdoc +``` + +### 3. Get latest code + +```bash +cd /home/git/gitlab +sudo -u git -H git fetch --all +``` + +For Gitlab Community Edition: + +```bash +sudo -u git -H git checkout 7-1-stable +``` + +OR + +For GitLab Enterprise Edition: + +```bash +sudo -u git -H git checkout 7-1-stable-ee +``` + +### 4. Update gitlab-shell (and its config) + +```bash +cd /home/git/gitlab-shell +sudo -u git -H git fetch +sudo -u git -H git checkout v1.9.6 +``` + +### 5. Install libs, migrations, etc. + +```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 +sudo chmod +x /etc/init.d/gitlab +``` + +### 6. Update config files + +#### New configuration options for gitlab.yml + +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 7-0-stable:config/gitlab.yml.example 7-1-stable:config/gitlab.yml.example +``` + +### 7. Start application + + sudo service gitlab start + sudo service nginx restart + +### 8. 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! + +## Things went south? Revert to previous version (7.0) + +### 1. Revert the code 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: + +```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. From f59a721ee0b36a2d1b22d32021ea004f731f1426 Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Thu, 17 Jul 2014 16:49:54 +0300 Subject: [PATCH 7/9] Point installation manual to 7-1-stable Signed-off-by: Dmitriy Zaporozhets --- doc/install/installation.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/install/installation.md b/doc/install/installation.md index b5ebb2694b..73b5fbb0c3 100644 --- a/doc/install/installation.md +++ b/doc/install/installation.md @@ -141,12 +141,12 @@ 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-0-stable gitlab + sudo -u git -H git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 7-1-stable gitlab # Go to gitlab dir cd /home/git/gitlab -**Note:** You can change `7-0-stable` to `master` if you want the *bleeding edge* version, but never install master on a production server! +**Note:** You can change `7-1-stable` to `master` if you want the *bleeding edge* version, but never install master on a production server! ### Configure it From 4db9c6e0a8fe23bd517aad3292b7d4063a80ed17 Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Thu, 17 Jul 2014 16:50:04 +0300 Subject: [PATCH 8/9] Version to rc1 Signed-off-by: Dmitriy Zaporozhets --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 0802f6378d..b104ec3500 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -7.1.0.pre +7.1.0.rc1 From 2bd20b7c4d1c2222f1dce8130c5d5aacc1008aab Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Thu, 17 Jul 2014 16:57:04 +0300 Subject: [PATCH 9/9] Update guide from 6.0 to 7.1 Signed-off-by: Dmitriy Zaporozhets --- doc/update/{6.0-to-7.0.md => 6.0-to-7.1.md} | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) rename doc/update/{6.0-to-7.0.md => 6.0-to-7.1.md} (90%) diff --git a/doc/update/6.0-to-7.0.md b/doc/update/6.0-to-7.1.md similarity index 90% rename from doc/update/6.0-to-7.0.md rename to doc/update/6.0-to-7.1.md index 881eb2844b..e328114a67 100644 --- a/doc/update/6.0-to-7.0.md +++ b/doc/update/6.0-to-7.1.md @@ -1,8 +1,8 @@ -# From 6.0 to 7.0 +# From 6.0 to 7.1 ## Deprecations -The 'Wall' feature has been removed in GitLab 7.0. Existing wall comments will remain stored in the database after the upgrade. +The 'Wall' feature has been removed in GitLab 7.1. Existing wall comments will remain stored in the database after the upgrade. ## Global issue numbers @@ -32,7 +32,7 @@ sudo -u git -H git fetch --all For GitLab Community Edition: ```bash -sudo -u git -H git checkout 7-0-stable +sudo -u git -H git checkout 7-1-stable ``` OR @@ -40,7 +40,7 @@ OR For GitLab Enterprise Edition: ```bash -sudo -u git -H git checkout 7-0-stable-ee +sudo -u git -H git checkout 7-1-stable-ee ``` @@ -89,12 +89,12 @@ sudo chmod u+rwx,g+rx,o-rwx /home/git/gitlab-satellites 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-0-stable:config/gitlab.yml.example +git diff 6-0-stable:config/gitlab.yml.example 7-1-stable:config/gitlab.yml.example ``` -* Make `/home/git/gitlab/config/gitlab.yml` the same as https://gitlab.com/gitlab-org/gitlab-ce/blob/7-0-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-0-stable/config/unicorn.rb.example but with your settings. -* Make `/etc/nginx/sites-available/nginx` the same as https://gitlab.com/gitlab-org/gitlab-ce/blob/7-0-stable/lib/support/nginx/gitlab but with your settings. +* Make `/home/git/gitlab/config/gitlab.yml` the same as https://gitlab.com/gitlab-org/gitlab-ce/blob/7-1-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-1-stable/config/unicorn.rb.example but with your settings. +* Make `/etc/nginx/sites-available/nginx` the same as https://gitlab.com/gitlab-org/gitlab-ce/blob/7-1-stable/lib/support/nginx/gitlab but with your settings. * Copy rack attack middleware config ```bash