Split into sections, port downgrade_ee_to_ce
doc from EE
[ci skip]
This commit is contained in:
parent
d7f1e041d9
commit
67c990be65
2 changed files with 164 additions and 8 deletions
82
doc/downgrade_ee_to_ce/README.md
Normal file
82
doc/downgrade_ee_to_ce/README.md
Normal file
|
@ -0,0 +1,82 @@
|
|||
# Downgrading from EE to CE
|
||||
|
||||
If you ever decide to downgrade your Enterprise Edition back to the Community
|
||||
Edition, there are a few steps you need take before installing the CE package
|
||||
on top of the current EE package, or, if you are in an installation from source,
|
||||
before you change remotes and fetch the latest CE code.
|
||||
|
||||
## Disable Enterprise-only features
|
||||
|
||||
First thing to do is to disable the following features.
|
||||
|
||||
### Authentication mechanisms
|
||||
|
||||
Kerberos and Atlassian Crowd are only available on the Enterprise Edition, so
|
||||
you should disable these mechanisms before downgrading and you should provide
|
||||
alternative authentication methods to your users.
|
||||
|
||||
### Git Annex
|
||||
|
||||
Git Annex is also only available on the Enterprise Edition. This means that if
|
||||
you have repositories that use Git Annex to store large files, these files will
|
||||
no longer be easily available via Git. You should consider migrating these
|
||||
repositories to use Git LFS before downgrading to the Community Edition.
|
||||
|
||||
### Remove Jenkins CI Service entries from the database
|
||||
|
||||
The `JenkinsService` class is only available on the Enterprise Edition codebase,
|
||||
so if you downgrade to the Community Edition, you'll come across the following
|
||||
error:
|
||||
|
||||
```
|
||||
Completed 500 Internal Server Error in 497ms (ActiveRecord: 32.2ms)
|
||||
|
||||
ActionView::Template::Error (The single-table inheritance mechanism failed to locate the subclass: 'JenkinsService'. This
|
||||
error is raised because the column 'type' is reserved for storing the class in case of inheritance. Please rename this
|
||||
column if you didn't intend it to be used for storing the inheritance class or overwrite Service.inheritance_column to
|
||||
use another column for that information.)
|
||||
```
|
||||
|
||||
All services are created automatically for every project you have, so in order
|
||||
to avoid getting this error, you need to remove all instances of the
|
||||
`JenkinsService` from your database:
|
||||
|
||||
**Omnibus Installation**
|
||||
|
||||
```
|
||||
$ sudo gitlab-rails runner "Service.where(type: 'JenkinsService').delete_all"
|
||||
```
|
||||
|
||||
**Source Installation**
|
||||
|
||||
```
|
||||
$ bundle exec rails runner "Service.where(type: 'JenkinsService').delete_all" production
|
||||
```
|
||||
|
||||
## Downgrade to CE
|
||||
|
||||
After performing the above mentioned steps, you are now ready to downgrade your
|
||||
GitLab installation to the Community Edition.
|
||||
|
||||
**Omnibus Installation**
|
||||
|
||||
To downgrade an Omnibus installation, it is sufficient to install the Community
|
||||
Edition package on top of the currently installed one. You can do this manually,
|
||||
by directly [downloading the package](https://packages.gitlab.com/gitlab/gitlab-ce)
|
||||
you need, or by adding our CE package repository and following the
|
||||
[CE installation instructions](https://about.gitlab.com/downloads/).
|
||||
|
||||
**Source Installation**
|
||||
|
||||
To downgrade a source installation, you need to replace the current remote of
|
||||
your GitLab installation with the Community Edition's remote, fetch the latest
|
||||
changes, and checkout the latest stable branch:
|
||||
|
||||
```
|
||||
$ git remote set-url origin git@gitlab.com:gitlab-org/gitlab-ce.git
|
||||
$ git fetch --all
|
||||
$ git checkout 8-x-stable
|
||||
```
|
||||
|
||||
Remember to follow the correct [update guides](../update/README.md) to make
|
||||
sure all dependencies are up to date.
|
|
@ -1,21 +1,95 @@
|
|||
Depending on the installation method and your GitLab version, there are multiple update guides. Choose one that fits your needs.
|
||||
# Updating GitLab
|
||||
|
||||
Depending on the installation method and your GitLab version, there are multiple
|
||||
update guides.
|
||||
|
||||
There are currently 3 official ways to install GitLab:
|
||||
|
||||
- Omnibus packages
|
||||
- Source installation
|
||||
- Docker installation
|
||||
|
||||
Based on your installation, choose a section below that fits your needs.
|
||||
|
||||
---
|
||||
|
||||
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
|
||||
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
|
||||
**Table of Contents** *generated with [DocToc](https://github.com/thlorenz/doctoc)*
|
||||
|
||||
- [Omnibus Packages](#omnibus-packages)
|
||||
- [Installation from source](#installation-from-source)
|
||||
- [Installation using Docker](#installation-using-docker)
|
||||
- [Upgrading between editions](#upgrading-between-editions)
|
||||
- [Community to Enterprise Edition](#community-to-enterprise-edition)
|
||||
- [Enterprise to Community Edition](#enterprise-to-community-edition)
|
||||
- [Miscellaneous](#miscellaneous)
|
||||
|
||||
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
|
||||
|
||||
## Omnibus Packages
|
||||
|
||||
- [Omnibus update guide](http://doc.gitlab.com/omnibus/update/README.html)
|
||||
contains the steps needed to update a GitLab
|
||||
[package](https://about.gitlab.com/downloads/).
|
||||
- The [Omnibus update guide](http://doc.gitlab.com/omnibus/update/README.html)
|
||||
contains the steps needed to update an Omnibus GitLab package.
|
||||
|
||||
## Installation from source
|
||||
|
||||
- [The individual upgrade guides](https://gitlab.com/gitlab-org/gitlab-ce/tree/master/doc/update) are for those who have installed GitLab from source.
|
||||
- [The CE to EE update guides](https://gitlab.com/gitlab-org/gitlab-ee/tree/master/doc/update) are for subscribers of the Enterprise Edition only. The steps are very similar to a version upgrade: stop the server, get the code, update config files for the new functionality, install libs and do migrations, update the init script, start the application and check the application status.
|
||||
- [Upgrading Community Edition from source][source-ce] - The individual
|
||||
upgrade guides are for those who have installed GitLab CE from source.
|
||||
- [Upgrading Enterprise Edition from source][source-ee] - The individual
|
||||
upgrade guides are for those who have installed GitLab EE from source.
|
||||
- [Patch versions](patch_versions.md) guide includes the steps needed for a
|
||||
patch version, eg. 6.2.0 to 6.2.1.
|
||||
patch version, eg. 6.2.0 to 6.2.1, and apply to both Community and Enterprise
|
||||
Editions.
|
||||
|
||||
## Installation using Docker
|
||||
|
||||
GitLab provides official Docker images for both Community and Enterprise
|
||||
editions. They are based on the Omnibus package and instructions on how to
|
||||
update them are in [a separate document][omnidocker].
|
||||
|
||||
## Upgrading between editions
|
||||
|
||||
GitLab comes in two flavors: [Community Edition][ce] which is MIT licensed,
|
||||
and [Enterprise Edition][ee] which builds on top of the Community Edition and
|
||||
includes extra features mainly aimed at organizations with more than 100 users.
|
||||
|
||||
Below you can find some guides to help you change editions easily.
|
||||
|
||||
### Community to Enterprise Edition
|
||||
|
||||
>**Note:**
|
||||
The following guides are for subscribers of the Enterprise Edition only.
|
||||
|
||||
If you wish to upgrade your GitLab installation from Community to Enterprise
|
||||
Edition, follow the guides below based on the installation method:
|
||||
|
||||
- [Source CE to EE update guides][source-ee] - Find your version, and follow the
|
||||
`-ce-to-ee.md` guide. The steps are very similar to a version upgrade: stop
|
||||
the server, get the code, update config files for the new functionality,
|
||||
install libraries and do migrations, update the init script, start the
|
||||
application and check its status.
|
||||
- [Omnibus CE to EE][omni-ce-ee] - Follow this guide to update your Omnibus
|
||||
GitLab Community Edition to the Enterprise Edition.
|
||||
|
||||
### Enterprise to Community Edition
|
||||
|
||||
If you need to downgrade your Enterprise Edition installation back to Community
|
||||
Edition, you can follow [this guide][ee-ce] to make the process as smooth as
|
||||
possible.
|
||||
|
||||
## Miscellaneous
|
||||
|
||||
- [MySQL to PostgreSQL](mysql_to_postgresql.md) guides you through migrating
|
||||
your database from MySQL to PostgreSQL.
|
||||
- [MySQL installation guide](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/database_mysql.md) contains additional information about configuring GitLab to work with a MySQL database.
|
||||
- [MySQL installation guide](../install/database_mysql.md) contains additional
|
||||
information about configuring GitLab to work with a MySQL database.
|
||||
- [Restoring from backup after a failed upgrade](restore_after_failure.md)
|
||||
|
||||
[omnidocker]: http://doc.gitlab.com/omnibus/docker/README.html
|
||||
[source-ee]: https://gitlab.com/gitlab-org/gitlab-ee/tree/master/doc/update
|
||||
[source-ce]: https://gitlab.com/gitlab-org/gitlab-ce/tree/master/doc/update
|
||||
[ee-ce]: ../downgrade_ee_to_ce/README.md
|
||||
[ce]: https://about.gitlab.com/features/#community
|
||||
[ee]: https://about.gitlab.com/features/#enterprise
|
||||
[omni-ce-ee]: http://doc.gitlab.com/omnibus/update/README.html#from-community-edition-to-enterprise-edition
|
||||
|
|
Loading…
Reference in a new issue