diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e7e4cbf39a..f02ba2216d 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. @@ -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 diff --git a/README.md b/README.md index 50542f6b2e..fe9d53adc4 100644 --- a/README.md +++ b/README.md @@ -131,3 +131,12 @@ All documentation can be found on [doc.gitlab.com/ee/](http://doc.gitlab.com/ee/ ## 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. diff --git a/VERSION b/VERSION index 304adee8f2..cad4542dc7 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -7.1.0.pre-ee +7.1.0.rc1-ee diff --git a/doc/install/installation.md b/doc/install/installation.md index d3f8c522a0..d1dba097d8 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/subscribers/gitlab-ee.git -b 7-0-stable-ee gitlab + sudo -u git -H git clone https://gitlab.com/subscribers/gitlab-ee.git -b 7-1-stable-ee gitlab # Go to gitlab dir cd /home/git/gitlab -**Note:** You can change `7-0-stable-ee` to `master` if you want the *bleeding edge* version, but never install master on a production server! +**Note:** You can change `7-1-stable-ee` to `master` if you want the *bleeding edge* version, but never install master on a production server! ### Configure it 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 ``` 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 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.