How to push GitLab CE master branch to all remotes.
The source code of GitLab is available on multiple servers (with GitLab.com as the canonical source). Synchronization between the repo's is done by the lead developer if there is no rush. This happens a few times per workday on average. If somebody else with access to all repo's wants to do it the instructions are below. This is just to distribute changes, not to make them.
.bashrc
or your dotfiles
Add this to gpa ()
{
git push origin ${1:-master} && git push gh ${1:-master} && git push gl ${1:-master}
}
Then add remotes to your local repo
cd my-gitlab-ce-repo
git remote add origin git@dev.gitlab.org:gitlab/gitlabhq.git
git remote add gh git@github.com:gitlabhq/gitlabhq.git
git remote add gl git@gitlab.com:gitlab-org/gitlab-ce.git
Push to all remotes
gpa
Yanking packages from packages.gitlab.com
In case something went wrong with the release and there is a need to remove the packages you can yank the packages by following the procedure described in package cloud documentation.
You need to have:
-
package_cloud
gem installed (sudo gem install package_cloud) - Email and password for packages.gitlab.com
- Make sure that you are supplying the url to packages.gitlab.com (default is packagecloud.io)
Example of yanking a package:
package_cloud yank --url https://packages.gitlab.com gitlab/gitlab-ce/el/6 gitlab-ce-7.10.2~omnibus-1.x86_64.rpm
If you are attempting this for the first time the output will look something like:
Looking for repository at gitlab/gitlab-ce... No config file exists at /Users/marin/.packagecloud. Login to create one.
Email:
marin@gitlab.com
Password:
Got your token. Writing a config file to /Users/marin/.packagecloud... success!
success!
Attempting to yank package at gitlab/gitlab-ce/el/6/gitlab-ce-7.10.2~omnibus-1.x86_64.rpm...done!