Open6

ISUCON素振りのためにprivate isuにトライしたい

fujiwofujiwo
fujiwofujiwo

Cloud Formationのパラメータから複数のGitHub Userを登録できるよう修正

- GitHubUsername:
-  Description: "GitHub Username for SSH public key"
-  Type: String
+ GitHubUsernames:
+  Description: "Comma-separated list of GitHub Usernames for SSH public keys"
+  Type: String
...
- UserData:
-   Fn::Base64: !Sub |
-     #!/bin/bash
-     GITHUB_USER=${GitHubUsername}
-     mkdir -p /home/isucon/.ssh
-     curl -s https://github.com/$GITHUB_USER.keys >> /home/isucon/.ssh/authorized_keys
-     chown -R isucon:isucon /home/isucon/.ssh
-     chmod 600 /home/isucon/.ssh/authorized_keys

+ UserData:
+   Fn::Base64: !Sub |
+     #!/bin/bash
+     GITHUB_USERS="${GitHubUsernames}"
+     mkdir -p /home/isucon/.ssh
+     for user in $(echo $GITHUB_USERS | sed "s/,/ /g")
+     do
+       curl -s https://github.com/$user.keys >> /home/isucon/.ssh/authorized_keys
+     done
+     chown -R isucon:isucon /home/isucon/.ssh
+     chmod 600 /home/isucon/.ssh/authorized_keys
fujiwofujiwo

一通り動作確認。

サービス側の動作確認
http://<service instanceのip address>/ にブラウザ上からアクセス。

ベンチマーク側の動作確認
すでにbenchmarker用のコマンドがビルドされている。
ユーザデータを元にbenchmarkerを走らせれば問題なし。

cd private_isu.git/benchmarker
./bin/benchmarker -t "http://<service instanceのip address>/" -u ./userdata