LoginSignup
5
5

More than 5 years have passed since last update.

GitLab API | gitlab gem で Wikiを clone するためのコードを生成する

Last updated at Posted at 2014-07-09

GitLab API | gitlab gem で Wikiを clone するためのコードを生成する

概要

gitlab gem で Wikiを clone するためのコードを生成します。

GitLabでは、例えば some_group グループの some_project プロジェクトがあった場合に、
以下のようなリポジトリに wiki が保存されます。

git@some_ip:some_group/some_project.wiki.git

それを前提に、GitLabに登録されている全てのプロジェクトの Wiki を clone するための
git のコードを生成してみます。

サンプル

require 'gitlab'

Gitlab.configure do |config|
  config.endpoint       = 'http://some_path/api/v3' 
  config.private_token  = 'your token'
end
projects =  Gitlab.projects # デフォルトは20件取得なので20以上のプロジェクトがある場合はページ設定の変更や、ページング処理が必要

projects.each do |project|
  wiki_git_repo = project.ssh_url_to_repo.gsub(/\.git/, '.wiki.git')
  puts "git clone #{wiki_git_repo}"
end

出力例

git clone git@some_ip:some_group/some_project1.wiki.git
git clone git@some_ip:some_group/some_project2.wiki.git
git clone git@some_ip:some_group/some_project3.wiki.git
git clone git@some_ip:some_group/some_project4.wiki.git
git clone git@some_ip:some_group/some_project5.wiki.git
git clone git@some_ip:some_group/some_project6.wiki.git
git clone git@some_ip:some_group/some_project7.wiki.git
git clone git@some_ip:some_group/some_project8.wiki.git
git clone git@some_ip:some_group/some_project9.wiki.git
git clone git@some_ip:some_group/some_project10.wiki.git

参照

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5