

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# ステップ 1: Terraform 設定ファイルをダウンロードする
<a name="getstarted-template-Terraform"></a>

 Terraform 設定ファイルを使用して、HashiCorp Terraform 製品を作成およびプロビジョニングできます。これらの設定はプレーンテキストファイルで、プロビジョニングするリソースを記述します。任意のテキストエディターを使用して設定を作成、更新、保存できます。プロダクトを作成するには、Terraform 設定を **tar.gz ファイル**としてアップロードする必要があります。このチュートリアルでは、 に簡単な設定ファイル AWS Service Catalog が用意されているため、使用を開始できます。この設定により、Amazon S3 バケットが作成されます。

## 設定ファイルのダウンロード
<a name="template-download"></a>

AWS Service Catalog には、このチュートリアルで使用できるサンプル[https://github.com/aws-samples/service-catalog-engine-for-terraform-os/blob/main/sample-provisioning-artifacts/s3bucket.tar.gz?raw=true](https://github.com/aws-samples/service-catalog-engine-for-terraform-os/blob/main/sample-provisioning-artifacts/s3bucket.tar.gz?raw=true)設定ファイルが用意されています。

## 設定ファイルの概要
<a name="template-overview"></a>

サンプル設定ファイルのテキストは次のとおりです。

```
variable "bucket_name" {
  type = string
}
provider "aws" {
}
resource "aws_s3_bucket" "bucket" {
  bucket = var.bucket_name
}
output regional_domain_name {
  value = aws_s3_bucket.bucket.bucket_regional_domain_name
}
```

**リソース設定**

設定ファイルは、 が製品を AWS Service Catalog プロビジョニングするときに作成されるリソースを宣言します。次のセクションがあります。
+ **変数** (オプション) — 管理者ユーザー (ハブアカウント管理者) が設定をカスタマイズするために割り当てることができる値の定義。変数は、特定の構成の動作を変更するための一貫したインターフェースを提供します。変数キーワードの後のラベルは変数の名前であり、同じモジュール内のすべての変数の中で一意である必要があります。この名前は、変数に外部値を割り当てたり、モジュール内から変数の値を参照したりするために使用されます。
+ **プロバイダー** (オプション) – リソースプロビジョニング用のクラウドサービスプロバイダー`AWS`。 AWS Service Catalog のみがプロバイダー`AWS`としてサポートしています。その結果、Terraform プロビジョニングエンジンは、リストされている他のプロバイダーを `AWS` にオーバーライドします。
+ **リソース** (必須) — プロビジョニング用の AWS インフラストラクチャリソース。このチュートリアルでは、Terraform 設定ファイルで Amazon S3 を指定しています。
+ **出力** (オプション) — プログラミング言語の戻り値と同様の、返される情報または値。出力データを使用して、自動化ツールでインフラストラクチャワークフローを設定できます。