Commit Graph

46 Commits

Author SHA1 Message Date
Connor Shea b39421bded Fixed backup.rake colorize method following Pages -> CE
Cherry-picked 'Remove colorize methods that weren't in CE.'
2017-02-07 14:43:32 +00:00
Kamil Trzcinski 120f9abaa1 Add GitLab Pages
- The pages are created when build artifacts for `pages` job are uploaded
- Pages serve the content under: http://group.pages.domain.com/project
- Pages can be used to serve the group page, special project named as host: group.pages.domain.com
- User can provide own 403 and 404 error pages by creating 403.html and 404.html in group page project
- Pages can be explicitly removed from the project by clicking Remove Pages in Project Settings
- The size of pages is limited by Application Setting: max pages size, which limits the maximum size of unpacked archive (default: 100MB)
- The public/ is extracted from artifacts and content is served as static pages
- Pages asynchronous worker use `dd` to limit the unpacked tar size
- Pages needs to be explicitly enabled and domain needs to be specified in gitlab.yml
- Pages are part of backups
- Pages notify the deployment status using Commit Status API
- Pages use a new sidekiq queue: pages
- Pages use a separate nginx config which needs to be explicitly added
2017-01-31 22:50:39 +00:00
Valery Sizov 0c0caede85 Fix: Backup restore doesn't clear cache 2016-10-20 17:33:12 +03:00
Drew Blessing 3ce174c370 Fix restore warning message 2016-06-28 15:54:40 -05:00
Connor Shea 903946c78a
Replace colorize gem with rainbow.
Colorize is a gem licensed under the GPLv2, so we can’t use it in GitLab without relicensing GitLab under the terms of the GPL. Rainbow is licensed under the MIT license and does the exact same thing as Colorize, so Rainbow was added in place of Colorize.

The syntax is slightly different for Rainbow vs. Colorize, and was updated in accordance.

The gem is still a dependency of Spinach, so it’s included in the development/test environments, but won’t be packaged with the actual product, and therefore doesn’t require we relicense the product.

An attempt at relicensing Colorize was made, but didn’t succeed as the library owner never responded.

Rainbow library: https://github.com/sickill/rainbow
Relevant issue regarding licensing in GitLab's gems: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/3775
2016-06-03 10:37:09 -06:00
Kamil Trzcinski 12bd781031 Fix backups if registry is disabled 2016-05-23 14:18:39 -05:00
Kamil Trzcinski 143cd58c39 Added backup of container registry 2016-05-16 17:25:38 -05:00
Drew Blessing 5516b6c47f Reload the schema before restoring a database backup 2016-03-21 21:16:34 -05:00
Marin Jankovski 3cc2b48a82 Backup LFS objects same as any upload. 2015-11-19 10:43:45 +01:00
Kamil Trzcinski d0e3e823a2 Implement Build Artifacts
- Offloads uploading to GitLab Workhorse
- Use /authorize request for fast uploading
- Added backup recipes for artifacts
- Support download acceleration using X-Sendfile
2015-11-10 12:51:50 +01:00
Kamil Trzcinski ed18e04bb3 Cleanup CI backup => migrate with GitLab 2015-09-15 20:14:21 +02:00
Dmitriy Zaporozhets b8f12d1917 Replace GITLAB with GitLab in rake task descriptions 2015-06-23 16:52:40 +02:00
Valery Sizov 67c83489ca ability to skip some items in backup 2015-04-02 15:37:50 +03:00
Jacob Vosmaer 458f8c1f80 Explain why we create a StringIO 2014-11-20 15:54:39 +01:00
Jacob Vosmaer 7c54c63ac1 Add CRON=1 backup setting for quiet backups 2014-11-20 15:46:04 +01:00
Dmitriy Zaporozhets 02e859a234 move backup logic to lib. Fixed removing outdated backups 2013-08-05 12:26:33 +03:00
Angus MacArthur 5f4fea17ad Correction to restore expected current directory 2013-06-03 11:00:24 -04:00
Angus MacArthur 9c82bca5ee fixes for gitlab restore with non-standard backup and repo dirs
These fixes will allow a restore of gitlab when the backups and
repositories directories are in non-standard locations (ie sub-dirs
of gitlabhq).  Also allows the restore to be run from script
overriding the need of a user to confirm the rebuild of the
authorized_keys file.
2013-05-30 09:58:36 -04:00
Dmitriy Zaporozhets e8b963fc32 Merge pull request #3858 from abalkin/issue-3857
Save backup time as is.  Fixes #3857.
2013-05-13 09:11:54 -07:00
Lev Abalkin cef76fdd17 Save backup time as is. Fixes #3857. 2013-05-08 16:42:29 -04:00
Lev Abalkin 7357ebc4a0 Save backup time as is. Fixes #3857. 2013-05-06 19:58:10 -04:00
Andrey Kumanyaev 67ccc8b52a Replace old hashes with new 1.9 ruby hashes (rebase) 2013-05-05 18:01:10 +04:00
Angus MacArthur 2ad723e1c1 fixed broken gitlab version determination during backup
If the backup directory is not sub the gitlab install directory,
then the git rev-parse call will fail.
2013-04-23 16:14:13 -04:00
Dmitriy Zaporozhets a769662f18 Invoke shell setup after backup restore 2013-04-18 13:27:52 +03:00
Dmitriy Zaporozhets e230551940 backup/restore uploads 2013-04-10 15:41:47 +03:00
Dmitriy Zaporozhets c33d5e16fe refactor backup/restore 2013-04-05 19:01:19 +03:00
Dmitriy Zaporozhets 38d23c0e5f Replace db:backup/restore with native mysq/pg solution 2013-04-05 15:55:02 +03:00
Chris Lawlor 3df5253cc3 Adds DB-sensitive tablename escape for backup task.
Uses ActiveRecord::Base.connection.quote_table_name.
Fixes issue 2437.
2013-03-14 13:30:25 -04:00
Dmitriy Zaporozhets d64090b8a9 No gitolite in project any more 2013-02-11 19:16:59 +02:00
Dmitriy Zaporozhets 2c8a46e0fe Fix backup/restore path_to_repo 2013-01-05 23:29:48 +02:00
Dmitriy Zaporozhets e5ff5c2869 Use project with namespace in email subject 2012-12-31 18:22:44 +02:00
Dmitriy Zaporozhets 8392449599 Fix backup/restore of repos 2012-12-31 12:01:05 +02:00
Riyad Preukschas 1b6c28b976 Update output of gitlab:backup:resore 2012-12-23 21:15:25 +01:00
Dmitriy Zaporozhets 988e6ac205 Fix #2220 2012-12-22 14:34:38 +02:00
Riyad Preukschas c9bf2bb288 Rename gitlab:app:backup_* to gitlab:backup:*
Rename gitlab:app:db_* to gitlab:backup:db:*
Rename gitlab:app:repo_* to gitlab:backup:repo:*
Rename *_dump to *_create
2012-12-20 21:52:35 +01:00
Riyad Preukschas 19eb637419 Update uses of Gitolite.config.foo settings 2012-12-20 16:54:28 +01:00
Hugo Duksis e7e1e99e92 retrieve settings with symbols 2012-11-19 22:42:58 +02:00
Nihad Abbasov 83696b127b cleanup rake tasks 2012-09-26 04:18:10 -07:00
LeonB ffdda12f66 Line not needed anymore 2012-08-28 14:18:49 +02:00
LeonB c81d4ab4a9 Fixed some hardcoded paths
New config option: git_hooks_path
2012-08-28 10:57:23 +02:00
randx 867f46076e No need to chown hooks in backup script any mroe 2012-08-26 01:40:01 +03:00
Michael van Rooijen 19f7b038cb Post-receive hook should be owned by gitlab user, not git. 2012-07-27 15:30:36 +02:00
Michael van Rooijen ec01cbef94 Modified the `repo_dump` and `repo_restore` rake tasks to properly dump and restore repositories based on their `path` rather than their (project) `name`. The project name can be uppercase and may contain spaces. This caused the repository to be restored as a different `path` that it was initially created as, thus, breaking the `git remote` and the web interface can no longer detect the repository either because it searches by `path` and not by `name`. Also, when restoring the permissions are incorrect making it impossible to push new commits to the remote repository. So now on success it'll set the correct permissions (but requires that the `gitlab` user has `sudo` privileges, or this task must be executed as root). 2012-07-26 21:30:10 +02:00
Michael Richardson 0456ceddb4 Fixing MySQL syntax error 2012-07-18 11:59:32 +01:00
Stefan Morgenthaler 4dae41d5dc Changes done as per feedback 2012-07-10 16:12:19 +02:00
Stefan Morgenthaler 12b34c8115 add: rake task to backup/restore gitlab db and repos 2012-07-10 00:01:05 +02:00