グローバルの Bastion API

グローバルの Bastion API 解説書

グローバル

GET /bastion/global

グローバル設定を取得する

応答 JSON オブジェクト:
  • bastionID (string) – Bastion ID です。3 文字~ 32 文字で、アルファベットの小文字、数字、ハイフンのみ。先頭の文字はアルファベットである必要があります。
  • instanceID (string) – 1.14.0 以降、非推奨。
  • source (string) – 1.14.0 以降、非推奨。

応答例 :

{
  "bastionID": "",
  "instanceID": "",
  "source": ""
}
POST /bastion/global

グローバル設定を設定します。terraform インスタンスが破棄されていない場合、この操作は拒否されます。

リクエスト JSON オブジェクト:
 
  • bastionID (string) – Bastion ID です。3 文字~ 32 文字で、アルファベットの小文字、数字、ハイフンのみ。先頭の文字はアルファベットである必要があります。
  • instanceID (string) – 1.14.0 以降、非推奨。
  • source (string) – 1.14.0 以降、非推奨。

クエリ例 :

{
  "bastionID": "",
  "instanceID": "",
  "source": ""
}
GET /bastion/global/tfvars

グローバル tfvars を取得する。

応答 JSON オブジェクト:
  • [key] – 使用できる型は、ブール、整数、数値、オブジェクト、文字列、null です。

応答例 :

{
  "ami_prefix": "internal",
  "ami_version": "1.20.0",
  "trusted_cidrs": [],
  "trusted_security_groups": []
}
POST /bastion/global/tfvars

グローバル tfvars を設定します。

リクエスト JSON オブジェクト:
 
  • [key] – 使用できる型は、ブール、整数、数値、オブジェクト、文字列、null です。

クエリ例 :

{
  "ami_prefix": "internal",
  "ami_version": "1.20.0",
  "trusted_cidrs": [],
  "trusted_security_groups": []
}
DELETE /bastion/global/tfvars

グローバル tfvars を削除します。

Terraform

GET /bastion/global/providers

グローバルなデフォルトのプロバイダ構成を取得します。この情報は Consul から取得します。

応答 JSON オブジェクト:
  • [] (object) –
  • [].name (string) – プロバイダ名。
  • [].alias (string) – オプションのプロバイダエイリアス。
  • [].meta.alias (string) – オプションのプロバイダエイリアス。このプロパティは非推奨であり、トップレベルに移動しました。
  • [].meta.version (string) – Terraform の構文に従うバージョン制約。このプロパティは非推奨であり、削除される予定です。
  • [].arguments[key] – 使用できる型は、ブール、整数、数値、オブジェクト、文字列、null です。

応答例 :

[
  {
    "name": "aws",
    "alias": "east",
    "meta": {
      "alias": null,
      "version": "~> 2.2.0"
    },
    "arguments": {
      "region": "us-east-1"
    }
  }
]
PUT /bastion/global/providers

グローバルなデフォルトのプロバイダ構成をオーバーライドします。この情報は Consul に格納されます。

リクエスト JSON オブジェクト:
 
  • [] (object) –
  • [].name (string) – プロバイダ名。
  • [].alias (string) – オプションのプロバイダエイリアス。
  • [].meta.alias (string) – オプションのプロバイダエイリアス。このプロパティは非推奨であり、トップレベルに移動しました。
  • [].meta.version (string) – Terraform の構文に従うバージョン制約。このプロパティは非推奨であり、削除される予定です。
  • [].arguments[key] – 使用できる型は、ブール、整数、数値、オブジェクト、文字列、null です。

クエリ例 :

[
  {
    "name": "aws",
    "alias": "east",
    "meta": {
      "alias": null,
      "version": "~> 2.2.0"
    },
    "arguments": {
      "region": "us-east-1"
    }
  }
]
DELETE /bastion/global/providers

グローバルなデフォルトのプロバイダ構成を削除します。この情報は Consul から消去されます。

PUT /bastion/global/provider

グローバルなデフォルトのプロバイダ構成を追加、またはオーバーライドします。この情報は Consul に格納されます。

リクエスト JSON オブジェクト:
 
  • name (string) – プロバイダ名。
  • alias (string) – オプションのプロバイダエイリアス。
  • meta.alias (string) – オプションのプロバイダエイリアス。このプロパティは非推奨であり、トップレベルに移動しました。
  • meta.version (string) – Terraform の構文に従うバージョン制約。このプロパティは非推奨であり、削除される予定です。
  • arguments[key] – 使用できる型は、ブール、整数、数値、オブジェクト、文字列、null です。

クエリ例 :

{
  "name": "aws",
  "alias": "east",
  "meta": {
    "alias": null,
    "version": "~> 2.2.0"
  },
  "arguments": {
    "region": "us-east-1"
  }
}
GET /bastion/global/provider/{providerName}

Terraform のデフォルトのプロバイダ引数 (エイリアスされていないプロバイダ) を取得します。この情報は Consul から取得します。

パラメータ:
  • providerName – Terraform プロバイダ名。
応答 JSON オブジェクト:
  • name (string) – プロバイダ名。
  • alias (string) – オプションのプロバイダエイリアス。
  • meta.alias (string) – オプションのプロバイダエイリアス。このプロパティは非推奨であり、トップレベルに移動しました。
  • meta.version (string) – Terraform の構文に従うバージョン制約。このプロパティは非推奨であり、削除される予定です。
  • arguments[key] – 使用できる型は、ブール、整数、数値、オブジェクト、文字列、null です。

応答例 :

{
  "name": "aws",
  "alias": "east",
  "meta": {
    "alias": null,
    "version": "~> 2.2.0"
  },
  "arguments": {
    "region": "us-east-1"
  }
}
DELETE /bastion/global/provider/{providerName}

Terraform のデフォルトのプロバイダとすべての引数 (エイリアスされていないプロバイダ) を削除します。この情報は Consul から削除されます。

パラメータ:
  • providerName – Terraform プロバイダ名。
GET /bastion/global/provider/{providerName}/{providerAlias}

Terraform のデフォルトの引数を取得します。この情報は Consul から取得します。

パラメータ:
  • providerName – Terraform プロバイダ名。
  • providerAlias – Terraform プロバイダエイリアス。
応答 JSON オブジェクト:
  • name (string) – プロバイダ名。
  • alias (string) – オプションのプロバイダエイリアス。
  • meta.alias (string) – オプションのプロバイダエイリアス。このプロパティは非推奨であり、トップレベルに移動しました。
  • meta.version (string) – Terraform の構文に従うバージョン制約。このプロパティは非推奨であり、削除される予定です。
  • arguments[key] – 使用できる型は、ブール、整数、数値、オブジェクト、文字列、null です。

応答例 :

{
  "name": "aws",
  "alias": "east",
  "meta": {
    "alias": null,
    "version": "~> 2.2.0"
  },
  "arguments": {
    "region": "us-east-1"
  }
}
DELETE /bastion/global/provider/{providerName}/{providerAlias}

Terraform のデフォルトのプロバイダとすべての引数を削除します。この情報は Consul から削除されます。

パラメータ:
  • providerName – Terraform プロバイダ名。
  • providerAlias – Terraform プロバイダエイリアス。

設定

POST /bastion/global/template_renderer

クラスタのコンテキストで consul-template でテンプレートをレンダリングします。GENVID_TEMPLATE_SANDBOX_PATH にはソースがコピーされる場所が設定されます。

バージョン 1.33.0 で追加.

リクエスト JSON オブジェクト:
 
  • sources (string) – テンプレートファイルを含むクラスタからアクセス可能な go-getter (https://github.com/hashicorp/go-getter) 互換 URL。
  • templatePath (string) – ソースアーカイブの、レンダリングするテンプレートファイルのパス。
  • content (string) – テンプレートの内容。 このフィールドを指定した場合、 templatePath は無視されます。
  • environment[key] (string) – 環境変数の値。
応答 JSON オブジェクト:
  • data (string) – レンダリングされたテンプレート。
  • stderr (string) – レンダリングのログ。

クエリ例 :

{
  "sources": "s3://artifacts/templates/archive.zip",
  "templatePath": "template.tmpl",
  "environment": {
    "FAVORITE_COLOR": "blue",
    "SPEED_UNLADEN_SWALLOW": "NaN"
  }
}

応答例 :

{
  "data": "127.0.0.1"
}