Skip to content

No clear way to update my gitlab from 6.9.2 to 7.X/8.X?

My issue I am working on at least a week:

I have a running productive GitLab-Server Version 6.9.2. Its installed without omnibus and it uses a mariadb on a Linux mashine.

I want to upgrade this Server to the newest Version 7.X/8.X (whatever). Sounds simple, but I work on this problem for a week now.

Main Question: How do I update my gitlab from 6.9.2 to 7.X/8.X?

I tried many ways to do so. Important: I installed a new (latest version) empty GitLab Server with omnibus on a virtual mashine to test those ways, so the most investigation goes to look up how to import the data to the latest version. No, I dont want to update the running version of my gitlab server. No, I dont have at present the opportunity to clone my running live GitLab Server:

Way 1 The more stupid way:

  • made a dump of the MariaDB
  • convert it with mysql-postgresql-converter suggested from gitlab
  • tried to import it into postgres

Failed

Failed because its a different database schema from 6.X to 7.X/8.X (summary of the error messages)

Way 2 Backup and Restore:

  • followed this instructions:

https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/update/mysql_to_postgresql.md

  • i tried to restore the backup in the new GitLab

Failed

My GitLab-Server told me, that the database schema in the backup is too old for this version (8.0.3). Backup aborted

Way 3 Backup and Restore but with an identical mashine:

  • I deleted my VM with the latest GitLab-Version and tried to install a GitLab-Version which is the same as the one I want to export from (6.9.2)
  • Did the same steps like Way 2
  • tried to import and then to upgrade the identical mashine to the newest
  • copy the backup file into the right folder
  • run gitlab-ce run rake gitlab:backup:restore RAILS_ENV=production BACKUP=1443512522 --trace

Failed

Got this:

gitlab-ce run rake gitlab:backup:restore RAILS_ENV=production BACKUP=1443512522 --trace
/opt/gitlab-ce/vendor/bundle/ruby/2.0.0/gems/bundler-1.5.2/lib/bundler/runtime.rb:220: warning: Insecure world writable dir /opt/gitlab-ce/bin in PATH, mode 040777
/opt/gitlab-ce/vendor/bundle/ruby/2.0.0/gems/bundler-1.5.2/lib/bundler/runtime.rb:220: warning: Insecure world writable dir /opt/gitlab-ce/vendor/bundle/ruby/2.0.0/bin in PATH, mode 040777
** Invoke gitlab:backup:restore (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute gitlab:backup:restore
Unpacking backup ... done
** Invoke gitlab:backup:db:restore (first_time)
** Invoke environment 
** Execute gitlab:backup:db:restore
Restoring database ... 
rake aborted!
Psych::SyntaxError: (/mountme/gitlab-ce/config/database.yml): mapping values are not allowed in this context at line 22 column 13
[...]

Now I am clueless what I basically do wrong. There has to be a way to import that data from the live GitLab to the latest version of Gitlab. I appreaciate every help I can get.