13
1分ではじめる、クラウドのようなVPS ConoHa VPSコマンドラインツールを作った 2015/02/27 オープンソースカンファレンス2015 Tokyo

ConoHa VPSの コマンドラインツールを作った

Embed Size (px)

Citation preview

Copyright (c) 2014 GMO Internet, Inc. All Rights Reserved.

1分ではじめる、クラウドのようなVPS

ConoHa VPSのコマンドラインツールを作った

2015/02/27 オープンソースカンファレンス2015 Tokyo

1分ではじめる、クラウドのようなVPS

自己紹介

• 斉藤弘信

• GMOインターネット株式会社テクニカルエバンジェリスト

• ConoHa担当

1分ではじめる、クラウドのようなVPS

ConoHa

• ご存知(?)VPSサービス

• ブース出しています

https://www.conoha.jp/

1分ではじめる、クラウドのようなVPS

コマンドラインツール

• ConoHaはAPIがない

• コマンドライン操作したい

• 自動化したい

• 某toolbeltっぽいことしたい

某toolbelt

1分ではじめる、クラウドのようなVPS

つくった

https://github.com/hironobu-s/conoha-vps

1分ではじめる、クラウドのようなVPS

スペック

• Go言語実装 & シングルバイナリ

• VPSのステータス取得(IPアドレスなど)

• VPS追加/削除/起動/停止

• VPSへの直接ログイン(SSH経由)

1分ではじめる、クラウドのようなVPS

インストール

L=/usr/local/bin/conoha && curl -sL https://github.com/hironobu-s/conoha

ワンライナーでできる!(WindowsはZIPを展開するだけ)

1分ではじめる、クラウドのようなVPS

いつの間にArch Linuxのリポジトリに入ってた

1分ではじめる、クラウドのようなVPS

実行すると

1分ではじめる、クラウドのようなVPS

VPS詳細表示

1分ではじめる、クラウドのようなVPS

Go言語所感(1)

• 型に厳しいのは良い。型を柔軟に作れるのも良い。

• エラーハンドリングを強制してくれるのも良い

• 未使用の変数、未使用のパッケージがあるとエラーになるのも良い

• 周辺ツールがそろっていて良いgofmt(コードフォーマッター) godef(関数ジャンプ) gocode(コード補完)

• クロスコンパイルが簡単(TravisCIでMac Win LinuxのバイナリをビルドしてGitHub Releaseにアップ)

1分ではじめる、クラウドのようなVPS

Go言語所感(2)

• $GOPATHで迷う(最初だけ)

• import “github.com/name/pkgname”

とか出てきて最初はわりとギョッとする。

• if err != nil { return err }

を死ぬほど書かされる

1分ではじめる、クラウドのようなVPS

というわけで

• Go言語たのしい

• ツール見たい方はブースへ

• ConoHaもよろしくお願いします

https://github.com/hironobu-s/conoha-vps