読者です 読者をやめる 読者になる 読者になる

Jenkins Mercurial Pluginでbitbucketにアクセスする

JenkinsでMercurial Pluginを使ってbitbucketのリポジトリにアクセスしてみます。
まずは、マスタのサーバにMercurialをインストールします(Ubuntuです)。

ubuntu@ci: ~$sudo apt-get install mercurial

認証用のSSH鍵を作成していない場合には作成します。ログインしているユーザーではなくJenkinsの実行ユーザーです。

ubuntu@ci: ~$ sudo -u jenkins ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/var/lib/jenkins/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /var/lib/jenkins/.ssh/id_rsa.
Your public key has been saved in /var/lib/jenkins/.ssh/id_rsa.pub.
The key fingerprint is:
5b:5b:39:87:80:42:ff:31:68:15:16:78:14:27:9a:e2 jenkins@ci

~/.ssh/id_rsa.pub の内容をbitbucketのAccount -> SSH Keys のところに登録します。ファイルをアップロードするかファイルの内容を貼り付けます。

Jenkinsのプラグインの管理からMercurial Pluginをインストールするとプロジェクトのソースコード管理システムでMecurialが選択できるようになります。
bitbucketの情報を入力します。Repository URLは、bitbucketに表示されるのを貼りつければ間違いないですが、ユーザー名が"hg"固定になります。

sshではなくhttpsでアクセスする場合のRepository URLは以下のようになります。MercurialプラグインだとSubversionのように認証情報の入力画面は存在しないので、匿名アクセスできないリポジトリではパスワードをURLに含める必要があるようです。なので、SSHを使うほうがよいです。

hg clone https://kenichiro22:password@bitbucket.org/kenichiro22/contacts