terraform-provider-sakuraiot

module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 16, 2017 License: Apache-2.0

README

Terraform for さくらのIoT Platform

Build Status

TerraformさくらのIoT Platformを操作するためのプラグイン

クイックスタート

準備
  • Dockerをインストールしておく
  • さくらのIoT PlatformのAPIキーを取得しておく

Dockerがない場合はInstallation / インストールを参考に TerraformとTerraform for さくらのIoTを手元のマシンにインストールしてからご利用ください。

さくらのIoT Platform APIキーの取得方法はこちらを参照してください。

#################################################
# APIキーを環境変数に設定しておく
#################################################
$ export SAKURAIOT_AUTH_TOKEN="APIキーのトークン"
$ export SAKURAIOT_AUTH_SECRET="APIキーのシークレット"

#################################################
# Terraform定義ファイル作成
#################################################
$ mkdir ~/work; cd ~/work
$ tee sakura.tf <<-'EOF'

# ------------------------------------------------------------
# プロジェクトの登録
# ------------------------------------------------------------
resource "sakuraiot_project" "project01" {
    name = "example project"
}

# ------------------------------------------------------------
# モジュールの登録
# ------------------------------------------------------------
resource "sakuraiot_module" "module01" {
    project_id = "${sakuraiot_project.project01.id}"
    name = "example module"
    register_id = "put-your-register-id"      # (要編集)通信モジュール本体に記載されているモジュール登録用ID
    register_pass = "pur-your-register-pass"  # (要編集)通信モジュール本体に記載されているモジュール登録用パスワード
}

# ------------------------------------------------------------
# 連携サービスとしてOutgoing WebhookとIncoming Webhookを登録
# ------------------------------------------------------------
# Outgoing Webhook
resource "sakuraiot_service_outgoing_webhook" "webhook01" {
    project_id = "${sakuraiot_project.project01.id}"
    name = "example outgoing webhook"
    secret = "secret"                         # HMAC-SHA1署名用のシークレット
    url = "https://your-webhook-server.com/"  # Outgoing Webhookの連携先URLを指定
}

# Incoming Webhook
resource "sakuraiot_service_incoming_webhook" "webhook01" {
    project_id = "${sakuraiot_project.project01.id}"
    name = "example incoming webhook"
    secret = "secret"                          # HMAC-SHA1署名用のシークレット
}
EOF

#TerraformコマンドをDocker上で実行するためにエイリアスを作成(Dockerを使わない場合は不要)
alias terraform="docker run -it --rm -w /work -v $PWD:/work -e SAKURAIOT_AUTH_TOKEN -e SAKURAIOT_AUTH_SECRET yamamotofebc/terraform-for-sakuraiot"

#################################################
# 構築プランの確認
#################################################
$ terraform plan

#################################################
# インフラ構築
#################################################
$ terraform apply

#################################################
# 作成された内容を確認
#################################################
$ terraform show

#################################################
# 削除
#################################################
$ terraform destroy 
# 確認入力を要求されるため、`yes`を入力

インストール

リリースページから最新のバイナリを取得し、 Terraformバイナリと同じディレクトリに展開してください。

詳細はInstallation / インストールを参照してください。

使い方/各リソースの設定方法

Terraform定義ファイル(tfファイル)を作成してご利用ください。

設定ファイルの記載方法は設定リファレンスを参照ください。

さくらのIoT Platformの以下のリソースをサポートしています。

サポートしているリソース

それぞれのリソースはデータソースとしても利用可能です。

License

This project is published under Apache 2.0 License.

Author

Directories

Path Synopsis
builtin

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL