Terraform 0.11

aws_appsync_datasource




terraform

aws_appsync_datasource

एक AppSync डेटा स्रोत प्रदान करता है।

उदाहरण उपयोग

resource "aws_dynamodb_table" "example" {
  name = "example"
  read_capacity  = 1
  write_capacity = 1
  hash_key = "UserId"
  attribute {
    name = "UserId"
    type = "S"
  }
}

resource "aws_iam_role" "example" {
  name = "example"

  assume_role_policy = <<EOF
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": "sts:AssumeRole",
      "Principal": {
        "Service": "appsync.amazonaws.com"
      },
      "Effect": "Allow"
    }
  ]
}
EOF
}

resource "aws_iam_role_policy" "example" {
  name = "example"
  role = "${aws_iam_role.example.id}"

  policy = <<EOF
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "dynamodb:*"
      ],
      "Effect": "Allow",
      "Resource": [
        "${aws_dynamodb_table.example.arn}"
      ]
    }
  ]
}
EOF
}

resource "aws_appsync_graphql_api" "example" {
  authentication_type = "API_KEY"
  name = "tf_appsync_example"
}

resource "aws_appsync_datasource" "example" {
  api_id = "${aws_appsync_graphql_api.example.id}"
  name = "tf_appsync_example"
  type = "AMAZON_DYNAMODB"
  dynamodb_config {
    region = "us-west-2"
    table_name = "${aws_dynamodb_table.example.name}"
  }
  service_role_arn = "${aws_iam_role.example.arn}"
}

तर्क संदर्भ

निम्नलिखित तर्क समर्थित हैं:

  • api_id - (आवश्यक) DataSource के लिए GraphQL एपीआई के लिए एपीआई आईडी।
  • name - (आवश्यक) DataSource के लिए उपयोगकर्ता द्वारा प्रदत्त नाम।
  • type - (आवश्यक) डेटा स्रोत का प्रकार। मान्य मान: AWS_LAMBDA , AMAZON_DYNAMODB और AMAZON_ELASTICSEARCH , NONE
  • description - (वैकल्पिक) डेटा स्रोत का विवरण।
  • service_role_arn - (वैकल्पिक) डेटा स्रोत के लिए IAM सेवा भूमिका ARN।
  • dynamodb_config - (वैकल्पिक) DynamoDB सेटिंग्स। dynamodb_config देखें
  • elasticsearch_config - (वैकल्पिक) Amazon Elasticsearch सेटिंग्स। elasticsearch_config देखें
  • lambda_config - (वैकल्पिक) AWS लैम्ब्डा सेटिंग्स। lambda_config देखें

dynamodb_config

निम्नलिखित तर्क समर्थित हैं:

  • region - (आवश्यक) AWS क्षेत्र।
  • table_name - (आवश्यक) तालिका का नाम।
  • use_caller_credentials - (वैकल्पिक) इस डेटा स्रोत के साथ Amazon Cognito क्रेडेंशियल्स का उपयोग करने के लिए सही पर सेट करें।

elasticsearch_config

निम्नलिखित तर्क समर्थित हैं:

  • region - (आवश्यक) AWS क्षेत्र।
  • endpoint - (आवश्यक) अंतिम बिंदु।

lambda_config

निम्नलिखित तर्क समर्थित हैं:

  • function_arn - (आवश्यक) लैम्डा फ़ंक्शन के लिए ARN।

संदर्भ संदर्भित करता है

उपरोक्त सभी तर्कों के अलावा, निम्नलिखित विशेषताएँ निर्यात की जाती हैं: