Skip to content

Instantly share code, notes, and snippets.

@yamamoto-febc
yamamoto-febc / upgrade_0_12.md
Last active August 17, 2017 11:21
Terraform for さくらのクラウド v0.12 アップグレードガイド

v0.12で行われる変更の概要

Terraform for さくらのクラウド v0.12系以降、リソースの属性名に後方互換性のない変更が行われます。
対象バージョンをご利用いただいていた場合、tfファイルの修正などの対応が必要になる場合があります。
v0.12系以降にアップグレードする際は必要に応じて当ガイドを参照ください。

対象バージョン

v0.12より前ののバージョン から v0.12以降へのアップグレード

@yamamoto-febc
yamamoto-febc / file0.txt
Last active July 28, 2017 12:24
Rancherに追加したホストをdocker-machineにインポート ref: http://qiita.com/yamamoto-febc/items/eb6089a49d550d0a487e
$ mkdir -p /var/lib/cattle/machine/machines
@yamamoto-febc
yamamoto-febc / peco-usacloud-ssh.sh
Created July 10, 2017 08:12
peco + usacloud for ssh
##
# select ssh host from usacloud server list
#
function peco-select-usacloud-ssh-host(){
local res
row=$(usacloud server list | grep -v "^\+--" | peco)
res=$(echo $row | awk '{print $2;}')
if zle; then
if [ -n "$res" ]; then
BUFFER="usacloud server ssh $res"
@yamamoto-febc
yamamoto-febc / file2.txt
Last active May 17, 2017 23:03
Terraform for さくらのクラウドでRancherをセットアップ ref: http://qiita.com/yamamoto-febc/items/3a2a3154244cb90443e0
sudo ros os upgrade -f
usacloud config
Setting SakuraCloud API Token =>
Enter token: # APIトークンを入力
Setting SakuraCloud API Secret =>
Enter secret: # APIシークレットを入力
Setting SakuraCloud Zone =>
@yamamoto-febc
yamamoto-febc / usacloud_with_command_substitution.bash
Last active April 8, 2017 00:43
usacloudでサブリソースのIDを指定(コマンド置き換え利用)
# 公開鍵のIDをコマンド置換 => "$()"を利用することで公開鍵の名で指定する
# note: コマンド置換部分では、複数ヒット時対策としてダブルクォートで囲んでいる(複数ヒット時は書式エラーにできる)
# note: -qオプション: 該当リソースのIDのみ出力するオプション
usacloud server build \
--name Example01 \
--os-type centos \
--password PUT_YOUR_PASSWORD_HERE \
--ssh-key-mode id \
--ssh-key-ids "$(usacloud ssh-key read -q your_ssh_key_name)"
@yamamoto-febc
yamamoto-febc / example.tf
Last active November 25, 2016 13:12
さくらのクラウドでロードバランサ by Terraform ref: http://qiita.com/yamamoto-febc/items/18d348caf4c603021c99
provider "sakuracloud"{
// APIアクセストークン
token = "[your API token]"
// APIシークレット
secret = "[your API secret]"
// ゾーン(is1b or tk1a)
zone = "is1b"
}
@yamamoto-febc
yamamoto-febc / gslb_datasource_sample.tf
Created November 22, 2016 13:12
GSLBをDataResourceとして参照/利用する場合のtfファイル
# あらかじめさくらのクラウド上に"TargetGSLBName"というGSLBを手動で作成
# 配下のサーバーのみをTerraformで管理する場合
data sakuracloud_gslb "gslb" {
filter = {
name = "Name"
values = ["TargetGSLBName"]
}
}
resource "sakuracloud_gslb_server" "gslb_server01" {
@yamamoto-febc
yamamoto-febc / add_comment_go.sh
Last active October 13, 2016 01:51
goでのgodoc用コメント作成 正規表現 ref: http://qiita.com/yamamoto-febc/items/c3c874095a3714ff4633
#!/bin/sh
perl -i -pe 's/^type\s*([A-Z][\w]*)/\/\/ $1 \n$&/g' $1
perl -i -pe 's/^func\s*([A-Z][\w]*)/\/\/ $1 \n$&/g' $1
perl -i -pe 's/^func\s*\(\w*\s*\S*\s*([A-Z][\w]*)/\/\/ $1 \n$&/g' $1
perl -i -pe 's/^(\s*)([A-Z][\w]*)/$1\/\/ $2 \n$&/g' $1
@yamamoto-febc
yamamoto-febc / spi.go
Last active June 20, 2017 08:49
Dockerのインフラ管理ツールキット「InfraKit」メモ ref: http://qiita.com/yamamoto-febc/items/2cd260ba956e1a3da78e
// Plugin defines custom behavior for what runs on instances.
type Plugin interface {
// バリデーション
Validate(flavorProperties json.RawMessage) (AllocationMethod, error)
// 各インスタンスへ固有の設定(フレーバー)を投入
Prepare(flavorProperties json.RawMessage, spec instance.Spec) (instance.Spec, error)
// ヘルスチェック