2013年1月3日木曜日

CloudBees Jenkins for Google App Engine (1)

CloudBees Jenkins for Google App Engine

はじめに

「CloudBees Jenkins for Google App Engine」は、CloudBees が提供するサービスで、Jenkins から Google App Engine へのデプロイができるらしいです。(まだそこまでは未確認)

今回、まずは Git リポジトリ機能のみ使えるようにしてみました。

Git リポジトリの作成

Google アカウントでサインイン



リポジトリサービスを選択



  • サインイン後、上部のメニューから「Repositories」リンクを選択

もう一回 Google アカウントでサインイン



  • 何で二回目があるのか、よく分からないが再度 Google アカウントでログイン
    Jenkins for GAE と、CloudBees の共通のアカウント?

リポジトリの作成



  • サインイン後のリポジトリ管理画面から「Create new code repository」ボタンを押下し、新しいリポジトリを作成する


  • 「Name」部分にリポジトリ名を入力
  • 「Permission Scheme」部分は「Private (users from your account only)」を選択 (非公開として使用します)
  • 「Repository Type」部分は「Git」を選択

作成した Git リポジトリに接続

SSH 鍵の生成

$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/Suna/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/Suna/.ssh/id_rsa.
Your public key has been saved in /Users/Suna/.ssh/id_rsa.pub.
The key fingerprint is:
xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx Suna@xxxxxx
The key's randomart image is:
+--[ RSA 2048]----+
|  E+.            |
|  o      .       |
|   .    . .      |
|    o .. o       |
|   + = oS .      |
|    * = +  .     |
|   . o * ..      |
|      = +.       |
|     . o..       |
+-----------------+

$ cat ~/.ssh/id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc……

Cloudbees に公開鍵を設定



  • リポジトリ管理画面の鍵の設定リンクを押下し、公開鍵をコピー & ペースト

Cloudbees に作成した Git リポジトリのクローン作成

$ git clone ssh://git@git.cloudbees.com/xxxxxx/pluscheckin.git
Cloning into 'pluscheckin'...
Identity added: /Users/Suna/.ssh/id_rsa (/Users/Suna/.ssh/id_rsa)
warning: You appear to have cloned an empty repository.

クローンしたローカルリポジトリにファイルを追加

$ cd pluscheckin
$ git add ……
$ git commit

ローカルリポジトリの内容を Cloudbees に push

$ git push origin master
Counting objects: 39, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (35/35), done.
Writing objects: 100% (39/39), 32.82 KiB, done.
Total 39 (delta 8), reused 0 (delta 0)
To ssh://git@git.cloudbees.com/xxxxxx/pluscheckin.git
 * [new branch]      master -> master

1 件のコメント:

  1. The first sign-in is to give the Gateway your credentials for deploying to App Engine.

    The second sign-in is to login to CloudBees. Ideally we would like to have one sign-in only, but as the two different sign-in cases require different permission sets (and we only want to ask for the minimum set of permissions required) you need to login twice (so that the different permissions can be granted to the different application permission scopes)

    The net effect of this is that you can tightly control which Jenkins instances (in the case that you have multiple cloudbees accounts) have access to your App Engine deployment keys.

    返信削除