├── .changelog ├── 1052.txt ├── 1053.txt ├── 1066.txt ├── 1078.txt ├── 1080.txt ├── 1081.txt ├── 1084.txt ├── 1085.txt ├── 1089.txt ├── 1092.txt ├── 1093.txt ├── 1094.txt ├── 1097.txt ├── 1098.txt ├── 1099.txt ├── 1101.txt ├── 1102.txt ├── 1103.txt ├── 1109.txt ├── 1110.txt ├── 1113.txt ├── 1116.txt ├── 1118.txt ├── 1119.txt ├── 1120.txt ├── 1122.txt ├── 1124.txt ├── 1126.txt ├── 1129.txt ├── 1131.txt ├── 1133.txt ├── 1134.txt ├── 1139.txt ├── 1140.txt ├── 1142.txt ├── 1143.txt ├── 1146.txt ├── 1151.txt ├── 1154.txt ├── 1156.txt ├── 1157.txt ├── 1161.txt ├── 1162.txt ├── 1164.txt ├── 1165.txt ├── 1174.txt ├── 1181.txt ├── 1189.txt ├── 1196.txt ├── 1207.txt ├── 1208.txt ├── 1216.txt ├── 1218.txt ├── 1224.txt ├── 1231.txt ├── 1242.txt ├── 1246.txt ├── 1253.txt ├── 1260.txt ├── 1269.txt ├── 1270.txt ├── 1297.txt ├── 411.txt ├── 418.txt ├── 419.txt ├── 421.txt ├── 422.txt ├── 423.txt ├── 424.txt ├── 425.txt ├── 427.txt ├── 429.txt ├── 430.txt ├── 431.txt ├── 434.txt ├── 435.txt ├── 436.txt ├── 437.txt ├── 439.txt ├── 440.txt ├── 441.txt ├── 444.txt ├── 445.txt ├── 448.txt ├── 452.txt ├── 454.txt ├── 455.txt ├── 457.txt ├── 458.txt ├── 459.txt ├── 462.txt ├── 465.txt ├── 480.txt ├── 482.txt ├── 500.txt ├── 502.txt ├── 510.txt ├── 513.txt ├── 515.txt ├── 517.txt ├── 518.txt ├── 519.txt ├── 520.txt ├── 521.txt ├── 522.txt ├── 524.txt ├── 527.txt ├── 531.txt ├── 533.txt ├── 536.txt ├── 537.txt ├── 542.txt ├── 543.txt ├── 544.txt ├── 545.txt ├── 547.txt ├── 552.txt ├── 554.txt ├── 555.txt ├── 556.txt ├── 565.txt ├── 569.txt ├── 571.txt ├── 577.txt ├── 579.txt ├── 580.txt ├── 585.txt ├── 586.txt ├── 590.txt ├── 591.txt ├── 593.txt ├── 594.txt ├── 604.txt ├── 609.txt ├── 610.txt ├── 619.txt ├── 620.txt ├── 622.txt ├── 625.txt ├── 629.txt ├── 636.txt ├── 637.txt ├── 642.txt ├── 644.txt ├── 647.txt ├── 653.txt ├── 656.txt ├── 657.txt ├── 661.txt ├── 666.txt ├── 671.txt ├── 672.txt ├── 678.txt ├── 681.txt ├── 685.txt ├── 691.txt ├── 713.txt ├── 723.txt ├── 726.txt ├── 735.txt ├── 748.txt ├── 749.txt ├── 750.txt ├── 751.txt ├── 757.txt ├── 766.txt ├── 770.txt ├── 778.txt ├── 781.txt ├── 785.txt ├── 787.txt ├── 791.txt ├── 793.txt ├── 794.txt ├── 797.txt ├── 801.txt ├── 802.txt ├── 803.txt ├── 807.txt ├── 808.txt ├── 810.txt ├── 812.txt ├── 813.txt ├── 814.txt ├── 815.txt ├── 816.txt ├── 819.txt ├── 820.txt ├── 822.txt ├── 825.txt ├── 826.txt ├── 830.txt ├── 833.txt ├── 835.txt ├── 838.txt ├── 839.txt ├── 844.txt ├── 846.txt ├── 847.txt ├── 849.txt ├── 850.txt ├── 851.txt ├── 852.txt ├── 854.txt ├── 855.txt ├── 861.txt ├── 864.txt ├── 865.txt ├── 867.txt ├── 868.txt ├── 869.txt ├── 870.txt ├── 871.txt ├── 894.txt ├── 904.txt ├── changelog.tmpl └── note.tmpl ├── .copywrite.hcl ├── .github ├── CODEOWNERS ├── CODE_OF_CONDUCT.md ├── ISSUE_TEMPLATE │ ├── bug-report.md │ └── feature-request.md ├── dependabot.yml ├── pull_request_template.md └── workflows │ ├── _testacc_boundary.yml │ ├── _testacc_consul.yml │ ├── _testacc_iam.yml │ ├── _testacc_packer.yml │ ├── _testacc_platform.yml │ ├── _testacc_vault.yml │ ├── _testacc_vaultradar.yml │ ├── _testacc_vaultsecrets.yml │ ├── _testacc_waypoint.yml │ ├── changelog-check.yml │ ├── pr-stale.yml │ ├── prerelease.yml │ ├── release.yml │ ├── sync-internal-and-public.yml │ ├── terraform_provider.yml │ ├── test.yml │ └── testacc.yml ├── .gitignore ├── .go-version ├── .goreleaser.yml ├── .release └── release-metadata.hcl ├── .tool-versions ├── .vscode └── launch.json ├── CHANGELOG.md ├── GNUmakefile ├── LICENSE ├── META.d └── _summary.yaml ├── README.md ├── contributing ├── README.md ├── breaking-changes.md ├── checklist-resource-import.md ├── checklist-resource.md ├── issue-lifecycle.md ├── pull-request-lifecycle.md ├── references.md └── writing-tests.md ├── design └── networking-abstractions.md ├── docs ├── data-sources │ ├── aws_network_peering.md │ ├── aws_transit_gateway_attachment.md │ ├── azure_peering_connection.md │ ├── boundary_cluster.md │ ├── consul_agent_helm_config.md │ ├── consul_agent_kubernetes_secret.md │ ├── consul_cluster.md │ ├── consul_versions.md │ ├── group.md │ ├── hvn.md │ ├── hvn_peering_connection.md │ ├── hvn_route.md │ ├── iam_policy.md │ ├── organization.md │ ├── packer_artifact.md │ ├── packer_bucket_names.md │ ├── packer_run_task.md │ ├── packer_version.md │ ├── project.md │ ├── service_principal.md │ ├── user_principal.md │ ├── vault_cluster.md │ ├── vault_plugin.md │ ├── vault_secrets_app.md │ ├── vault_secrets_dynamic_secret.md │ ├── vault_secrets_rotating_secret.md │ ├── vault_secrets_secret.md │ ├── waypoint_action.md │ ├── waypoint_add_on.md │ ├── waypoint_add_on_definition.md │ ├── waypoint_application.md │ └── waypoint_template.md ├── guides │ ├── auth.md │ ├── consul-federation.md │ ├── consul-root-token.md │ ├── consul-snapshots.md │ ├── hvn-route-migration-guide.md │ ├── multi-project-migration-guide.md │ ├── packer-bucket-rbac.md │ ├── packer-channel-management.md │ ├── packer-run-tasks-with-terraform.md │ ├── peering-aws.md │ ├── peering-azure.md │ ├── vault-admin-token.md │ ├── vault-performance-replication.md │ ├── vault-scaling.md │ ├── vault-secrets-data-sources.md │ └── vault-secrets-resources.md ├── index.md └── resources │ ├── aws_network_peering.md │ ├── aws_transit_gateway_attachment.md │ ├── azure_peering_connection.md │ ├── boundary_cluster.md │ ├── consul_cluster.md │ ├── consul_cluster_root_token.md │ ├── consul_snapshot.md │ ├── group.md │ ├── group_iam_binding.md │ ├── group_iam_policy.md │ ├── group_members.md │ ├── hvn.md │ ├── hvn_peering_connection.md │ ├── hvn_route.md │ ├── iam_workload_identity_provider.md │ ├── log_streaming_destination.md │ ├── notifications_webhook.md │ ├── organization_iam_binding.md │ ├── organization_iam_policy.md │ ├── packer_bucket.md │ ├── packer_bucket_iam_binding.md │ ├── packer_bucket_iam_policy.md │ ├── packer_channel.md │ ├── packer_channel_assignment.md │ ├── packer_run_task.md │ ├── project.md │ ├── project_iam_binding.md │ ├── project_iam_policy.md │ ├── service_principal.md │ ├── service_principal_key.md │ ├── vault_cluster.md │ ├── vault_cluster_admin_token.md │ ├── vault_plugin.md │ ├── vault_radar_integration_jira_connection.md │ ├── vault_radar_integration_jira_subscription.md │ ├── vault_radar_integration_slack_connection.md │ ├── vault_radar_integration_slack_subscription.md │ ├── vault_radar_source_github_cloud.md │ ├── vault_radar_source_github_enterprise.md │ ├── vault_secrets_app.md │ ├── vault_secrets_app_iam_binding.md │ ├── vault_secrets_app_iam_policy.md │ ├── vault_secrets_dynamic_secret.md │ ├── vault_secrets_integration.md │ ├── vault_secrets_integration_aws.md │ ├── vault_secrets_integration_azure.md │ ├── vault_secrets_integration_confluent.md │ ├── vault_secrets_integration_gcp.md │ ├── vault_secrets_integration_mongodbatlas.md │ ├── vault_secrets_integration_twilio.md │ ├── vault_secrets_rotating_secret.md │ ├── vault_secrets_secret.md │ ├── vault_secrets_sync.md │ ├── waypoint_action.md │ ├── waypoint_add_on.md │ ├── waypoint_add_on_definition.md │ ├── waypoint_application.md │ ├── waypoint_template.md │ └── waypoint_tfc_config.md ├── examples ├── README.md ├── data-sources │ ├── hcp_aws_network_peering │ │ ├── data-source.tf │ │ └── variables.tf │ ├── hcp_aws_transit_gateway_attachment │ │ ├── data-source.tf │ │ └── variables.tf │ ├── hcp_azure_peering_connection │ │ ├── data-source.tf │ │ └── variables.tf │ ├── hcp_boundary_cluster │ │ └── data-source.tf │ ├── hcp_consul_agent_helm_config │ │ ├── data-source.tf │ │ └── variables.tf │ ├── hcp_consul_agent_kubernetes_secret │ │ ├── data-source.tf │ │ └── variables.tf │ ├── hcp_consul_cluster │ │ ├── data-source.tf │ │ └── variables.tf │ ├── hcp_consul_versions │ │ └── data-source.tf │ ├── hcp_group │ │ └── data-source.tf │ ├── hcp_hvn │ │ ├── data-source.tf │ │ └── variables.tf │ ├── hcp_hvn_peering_connection │ │ ├── data-source.tf │ │ └── variables.tf │ ├── hcp_hvn_route │ │ ├── data-source.tf │ │ └── variables.tf │ ├── hcp_iam_policy │ │ └── data-source.tf │ ├── hcp_organization │ │ └── data-source.tf │ ├── hcp_packer_artifact │ │ ├── data-source-alt.tf │ │ └── data-source.tf │ ├── hcp_packer_bucket_names │ │ └── data-source.tf │ ├── hcp_packer_run_task │ │ └── data-source.tf │ ├── hcp_packer_version │ │ └── data-source.tf │ ├── hcp_project │ │ └── data-source.tf │ ├── hcp_service_principal │ │ └── data-source.tf │ ├── hcp_user_principal │ │ └── data-source.tf │ ├── hcp_vault_cluster │ │ └── data-source.tf │ ├── hcp_vault_secrets_app │ │ └── data-source.tf │ ├── hcp_vault_secrets_dynamic_secret │ │ └── data-source.tf │ ├── hcp_vault_secrets_rotating_secret │ │ └── data-source.tf │ ├── hcp_vault_secrets_secret │ │ └── data-source.tf │ └── hcp_waypoint_template │ │ └── data-source.tf ├── guides │ ├── auth │ │ ├── _config.tf │ │ └── _config_no_clients.tf │ ├── consul_cluster_federation │ │ ├── _config.tf │ │ ├── main.tf │ │ └── variables.tf │ ├── consul_cluster_root_token │ │ ├── _config.tf │ │ ├── main.tf │ │ └── variables.tf │ ├── hvn_route_migration_guide │ │ ├── after-peering.tf │ │ ├── after-tgw.tf │ │ ├── before-peering.tf │ │ └── before-tgw.tf │ ├── multi_project_migration_guide │ │ ├── no-project.tf │ │ ├── project-on-provider.tf │ │ ├── project-on-resource.tf │ │ └── resource-override-provider.tf │ ├── packer_bucket_rbac │ │ ├── iam_binding_resource.tf │ │ └── iam_policy_resource.tf │ ├── packer_channel_management │ │ ├── assign_latest.tf │ │ ├── bucket_names │ │ │ ├── assignment.tf │ │ │ ├── example_module │ │ │ │ ├── main.tf │ │ │ │ └── variables.tf │ │ │ └── main.tf │ │ └── main.tf │ ├── packer_run_tasks_with_terraform │ │ ├── data.tf │ │ └── resource.tf │ ├── peering_aws │ │ ├── _config.tf │ │ ├── main.tf │ │ └── variables.tf │ ├── peering_azure │ │ ├── _config.tf │ │ └── main.tf │ ├── peering_azure_gateway │ │ ├── _config.tf │ │ └── main.tf │ ├── peering_azure_nva │ │ ├── _config.tf │ │ └── main.tf │ ├── scaling │ │ ├── dev-init.tf │ │ └── scale-to-standard.tf │ ├── snapshots │ │ ├── _config.tf │ │ ├── main.tf │ │ └── variables.tf │ ├── vault_cluster_admin_token │ │ └── main.tf │ ├── vault_perf_replication │ │ └── replication.tf │ └── vault_secrets │ │ ├── data_source_vault_secrets_app.tf │ │ ├── data_source_vault_secrets_rotating_secret.tf │ │ ├── data_source_vault_secrets_secret.tf │ │ ├── resourceapp.tf │ │ └── resources.tf ├── provider │ ├── provider.tf │ └── variables.tf └── resources │ ├── hcp_aws_network_peering │ ├── import.sh │ └── resource.tf │ ├── hcp_aws_transit_gateway_attachment │ ├── import.sh │ └── resource.tf │ ├── hcp_azure_peering_connection │ ├── import.sh │ └── resource.tf │ ├── hcp_boundary_cluster │ ├── import.sh │ └── resource.tf │ ├── hcp_consul_cluster │ ├── import.sh │ └── resource.tf │ ├── hcp_consul_cluster_root_token │ └── resource.tf │ ├── hcp_consul_snapshot │ └── resource.tf │ ├── hcp_group │ ├── import.sh │ └── resource.tf │ ├── hcp_group_iam_binding │ └── resource.tf │ ├── hcp_group_iam_policy │ ├── import.sh │ └── resource.tf │ ├── hcp_group_members │ ├── import.sh │ └── resource.tf │ ├── hcp_hvn │ ├── import.sh │ └── resource.tf │ ├── hcp_hvn_peering_connection │ ├── import.sh │ └── resource.tf │ ├── hcp_hvn_route │ ├── import.sh │ └── resource.tf │ ├── hcp_iam_workload_identity_provider │ ├── import.sh │ ├── resource_aws.tf │ ├── resource_azure.tf │ └── resource_gcp.tf │ ├── hcp_log_streaming_destination │ ├── resource_cloudwatch.tf │ ├── resource_datadog.tf │ └── resource_splunk_cloud.tf │ ├── hcp_notifications_webhook │ ├── import.sh │ └── resource.tf │ ├── hcp_organization_iam_binding │ └── resource.tf │ ├── hcp_organization_iam_policy │ ├── import.sh │ └── resource.tf │ ├── hcp_packer_bucket │ ├── import.sh │ └── resource.tf │ ├── hcp_packer_bucket_iam_binding │ └── resource.tf │ ├── hcp_packer_bucket_iam_policy │ ├── import.sh │ └── resource.tf │ ├── hcp_packer_channel │ ├── import.sh │ └── resource.tf │ ├── hcp_packer_channel_assignment │ ├── import.sh │ └── resource.tf │ ├── hcp_packer_run_task │ └── resource.tf │ ├── hcp_project │ ├── import.sh │ └── resource.tf │ ├── hcp_project_iam_binding │ └── resource.tf │ ├── hcp_project_iam_policy │ ├── import.sh │ └── resource.tf │ ├── hcp_service_principal │ ├── import.sh │ ├── resource.tf │ ├── resource_new_project.tf │ └── resource_organization.tf │ ├── hcp_service_principal_key │ ├── resource.tf │ └── resource_rotation.tf │ ├── hcp_vault_cluster │ ├── import.sh │ └── resource.tf │ ├── hcp_vault_cluster_admin_token │ └── resource.tf │ ├── hcp_vault_radar_integration_jira_connection │ └── resource.tf │ ├── hcp_vault_radar_integration_jira_subscription │ └── resource.tf │ ├── hcp_vault_radar_integration_slack_connection │ └── resource.tf │ ├── hcp_vault_radar_integration_slack_subscription │ └── resource.tf │ ├── hcp_vault_radar_source_github_cloud │ └── resource.tf │ ├── hcp_vault_radar_source_github_enterprise │ └── resource.tf │ ├── hcp_vault_secrets_app │ └── resource.tf │ ├── hcp_vault_secrets_app_iam_binding │ └── resource.tf │ ├── hcp_vault_secrets_app_iam_policy │ ├── import.sh │ └── resource.tf │ ├── hcp_vault_secrets_dynamic_secret │ └── resource.tf │ ├── hcp_vault_secrets_integration │ ├── import.sh │ └── resource.tf │ ├── hcp_vault_secrets_integration_aws │ ├── import.sh │ └── resource.tf │ ├── hcp_vault_secrets_integration_azure │ ├── import.sh │ └── resource.tf │ ├── hcp_vault_secrets_integration_confluent │ ├── import.sh │ └── resource.tf │ ├── hcp_vault_secrets_integration_gcp │ ├── import.sh │ └── resource.tf │ ├── hcp_vault_secrets_integration_mongodbatlas │ ├── import.sh │ └── resource.tf │ ├── hcp_vault_secrets_integration_twilio │ ├── import.sh │ └── resource.tf │ ├── hcp_vault_secrets_rotating_secret │ └── resource.tf │ ├── hcp_vault_secrets_secret │ └── resource.tf │ ├── hcp_vault_secrets_sync │ ├── import.sh │ └── resource.tf │ ├── hcp_waypoint_add_on_definition │ └── resource.tf │ └── hcp_waypoint_template │ └── resource.tf ├── go.mod ├── go.sum ├── golangci-config.yml ├── hcp.svg ├── internal ├── clients │ ├── boundary_cluster.go │ ├── client.go │ ├── client_test.go │ ├── consul_cluster.go │ ├── consul_snapshot.go │ ├── group.go │ ├── hvn.go │ ├── hvn_route.go │ ├── iam.go │ ├── iampolicy │ │ ├── doc.go │ │ ├── iam.go │ │ ├── iam_binding_batcher.go │ │ ├── policy_type.go │ │ ├── resource_iam_binding.go │ │ └── resource_iam_policy.go │ ├── logging.go │ ├── logs.go │ ├── operation.go │ ├── packerv2 │ │ ├── artifact.go │ │ ├── bucket.go │ │ ├── build.go │ │ ├── channel.go │ │ ├── errors.go │ │ ├── registry.go │ │ ├── tfc.go │ │ └── version.go │ ├── peering.go │ ├── project.go │ ├── response.go │ ├── retry_request.go │ ├── retry_request_test.go │ ├── service_error.go │ ├── tgw.go │ ├── vault_cluster.go │ ├── vault_radar.go │ ├── vault_secrets.go │ ├── vault_secrets_preview.go │ └── waypoint.go ├── consul │ ├── version.go │ └── version_test.go ├── customdiags │ └── error_http_status_code.go ├── hcpvalidator │ ├── display_name.go │ ├── display_name_test.go │ ├── doc.go │ ├── resource_name_part.go │ ├── resource_name_part_test.go │ ├── resource_type.go │ ├── resource_type_test.go │ ├── url.go │ └── url_test.go ├── helpers │ └── vault_helpers.go ├── input │ ├── input.go │ └── input_test.go ├── provider │ ├── acctest │ │ ├── random.go │ │ ├── setup.go │ │ └── testcheck.go │ ├── customtypes │ │ ├── common.go │ │ ├── packer_fingerprint.go │ │ ├── packer_fingerprint_test.go │ │ ├── slug.go │ │ ├── slug_test.go │ │ ├── ulid.go │ │ ├── ulid_test.go │ │ ├── uuid.go │ │ └── uuid_test.go │ ├── iam │ │ ├── data_group.go │ │ ├── data_group_test.go │ │ ├── data_service_principal.go │ │ ├── data_service_principal_test.go │ │ ├── data_user_principal.go │ │ ├── data_user_principal_test.go │ │ ├── helper │ │ │ └── groups.go │ │ ├── resource_group.go │ │ ├── resource_group_iam_policy.go │ │ ├── resource_group_iam_policy_test.go │ │ ├── resource_group_members.go │ │ ├── resource_group_members_test.go │ │ ├── resource_group_test.go │ │ ├── resource_service_principal.go │ │ ├── resource_service_principal_key.go │ │ ├── resource_service_principal_key_test.go │ │ ├── resource_service_principal_test.go │ │ ├── resource_workload_identity_provider.go │ │ └── resource_workload_identity_provider_test.go │ ├── logstreaming │ │ ├── resource_hcp_log_streaming_destination.go │ │ └── resource_hcp_log_streaming_destination_test.go │ ├── modifiers │ │ └── project.go │ ├── packer │ │ ├── datasources │ │ │ ├── artifact │ │ │ │ ├── data_source.go │ │ │ │ ├── data_source_test.go │ │ │ │ └── test_check_test.go │ │ │ └── version │ │ │ │ ├── data_source.go │ │ │ │ ├── data_source_test.go │ │ │ │ └── test_check_test.go │ │ ├── packer.go │ │ ├── resources │ │ │ └── bucket │ │ │ │ ├── resource_packer_bucket.go │ │ │ │ ├── resource_packer_bucket_iam_policy.go │ │ │ │ ├── resource_packer_bucket_iam_policy_test.go │ │ │ │ └── resource_packer_bucket_test.go │ │ ├── testutils │ │ │ ├── configbuilder │ │ │ │ ├── builder.go │ │ │ │ ├── data_source.go │ │ │ │ ├── packerconfig │ │ │ │ │ ├── artifact.go │ │ │ │ │ ├── data_source.go │ │ │ │ │ └── version.go │ │ │ │ └── resource.go │ │ │ ├── slug.go │ │ │ ├── testcheck │ │ │ │ └── common.go │ │ │ └── testclient │ │ │ │ ├── bucket.go │ │ │ │ ├── build.go │ │ │ │ ├── channel.go │ │ │ │ ├── errors.go │ │ │ │ ├── operation.go │ │ │ │ ├── registry.go │ │ │ │ └── version.go │ │ └── utils │ │ │ ├── base │ │ │ └── data_source.go │ │ │ ├── client.go │ │ │ ├── location │ │ │ └── location.go │ │ │ └── resource_type.go │ ├── project_helpers.go │ ├── provider.go │ ├── provider_test.go │ ├── resourcemanager │ │ ├── data_source_iam_policy.go │ │ ├── data_source_iam_policy_test.go │ │ ├── data_source_organization.go │ │ ├── data_source_organization_test.go │ │ ├── data_source_project.go │ │ ├── data_source_project_test.go │ │ ├── resource_organization_iam_policy.go │ │ ├── resource_organization_iam_policy_test.go │ │ ├── resource_project.go │ │ ├── resource_project_iam_policy.go │ │ ├── resource_project_iam_policy_test.go │ │ └── resource_project_test.go │ ├── vaultradar │ │ ├── integration_connection.go │ │ ├── integration_subscription.go │ │ ├── radar_source.go │ │ ├── resource_radar_integration_jira_connection.go │ │ ├── resource_radar_integration_jira_connection_test.go │ │ ├── resource_radar_integration_jira_subscription.go │ │ ├── resource_radar_integration_jira_subscription_test.go │ │ ├── resource_radar_integration_slack_connection.go │ │ ├── resource_radar_integration_slack_connection_test.go │ │ ├── resource_radar_integration_slack_subscription.go │ │ ├── resource_radar_integration_slack_subscription_test.go │ │ ├── resource_radar_source_github_cloud.go │ │ ├── resource_radar_source_github_cloud_test.go │ │ ├── resource_radar_source_github_enterprise.go │ │ └── resource_radar_source_github_enterprise_test.go │ ├── vaultsecrets │ │ ├── data_source_vault_secrets_app.go │ │ ├── data_source_vault_secrets_app_test.go │ │ ├── data_source_vault_secrets_dynamic_secret.go │ │ ├── data_source_vault_secrets_dynamic_secret_test.go │ │ ├── data_source_vault_secrets_rotating_secret.go │ │ ├── data_source_vault_secrets_rotating_secret_test.go │ │ ├── data_source_vault_secrets_secret.go │ │ ├── data_source_vault_secrets_secret_test.go │ │ ├── dynamic_secret_aws.go │ │ ├── dynamic_secret_gcp.go │ │ ├── resource_vault_secrets_app.go │ │ ├── resource_vault_secrets_app_iam_policy.go │ │ ├── resource_vault_secrets_app_iam_policy_test.go │ │ ├── resource_vault_secrets_app_test.go │ │ ├── resource_vault_secrets_dynamic_secret.go │ │ ├── resource_vault_secrets_dynamic_secret_test.go │ │ ├── resource_vault_secrets_integration.go │ │ ├── resource_vault_secrets_integration_aws_deprecated.go │ │ ├── resource_vault_secrets_integration_aws_test.go │ │ ├── resource_vault_secrets_integration_azure_deprecated.go │ │ ├── resource_vault_secrets_integration_azure_test.go │ │ ├── resource_vault_secrets_integration_confluent_deprecated.go │ │ ├── resource_vault_secrets_integration_confluent_test.go │ │ ├── resource_vault_secrets_integration_gcp_deprecated.go │ │ ├── resource_vault_secrets_integration_gcp_test.go │ │ ├── resource_vault_secrets_integration_mongodbatlas_deprecated.go │ │ ├── resource_vault_secrets_integration_mongodbatlas_test.go │ │ ├── resource_vault_secrets_integration_test.go │ │ ├── resource_vault_secrets_integration_twilio_deprecated.go │ │ ├── resource_vault_secrets_integration_twilio_test.go │ │ ├── resource_vault_secrets_rotating_secret.go │ │ ├── resource_vault_secrets_rotating_secret_test.go │ │ ├── resource_vault_secrets_secret.go │ │ ├── resource_vault_secrets_secret_test.go │ │ ├── resource_vault_secrets_sync.go │ │ ├── resource_vault_secrets_sync_test.go │ │ ├── rotating_secret_aws.go │ │ ├── rotating_secret_azure.go │ │ ├── rotating_secret_confluent.go │ │ ├── rotating_secret_gcp.go │ │ ├── rotating_secret_mongodb_atlas.go │ │ ├── rotating_secret_twilio.go │ │ └── vault_secrets_utils.go │ ├── waypoint │ │ ├── data_source_waypoint_action.go │ │ ├── data_source_waypoint_action_test.go │ │ ├── data_source_waypoint_add_on.go │ │ ├── data_source_waypoint_add_on_definition.go │ │ ├── data_source_waypoint_add_on_definition_test.go │ │ ├── data_source_waypoint_add_on_test.go │ │ ├── data_source_waypoint_application.go │ │ ├── data_source_waypoint_application_test.go │ │ ├── data_source_waypoint_template.go │ │ ├── data_source_waypoint_template_test.go │ │ ├── resource_waypoint_action.go │ │ ├── resource_waypoint_action_test.go │ │ ├── resource_waypoint_add_on.go │ │ ├── resource_waypoint_add_on_definition.go │ │ ├── resource_waypoint_add_on_definition_test.go │ │ ├── resource_waypoint_add_on_test.go │ │ ├── resource_waypoint_application.go │ │ ├── resource_waypoint_application_test.go │ │ ├── resource_waypoint_template.go │ │ ├── resource_waypoint_template_test.go │ │ ├── resource_waypoint_tfc_config.go │ │ └── resource_waypoint_tfc_config_test.go │ └── webhook │ │ ├── resource_notifications_webhook.go │ │ ├── resource_notifications_webhook_test.go │ │ └── validator │ │ ├── subscriptions.go │ │ └── subscriptions_test.go ├── providersdkv2 │ ├── data_source_aws_network_peering.go │ ├── data_source_aws_transit_gateway_attachment.go │ ├── data_source_azure_peering_connection.go │ ├── data_source_boundary_cluster.go │ ├── data_source_consul_agent_helm_config.go │ ├── data_source_consul_agent_kubernetes_secret.go │ ├── data_source_consul_cluster.go │ ├── data_source_consul_versions.go │ ├── data_source_hvn.go │ ├── data_source_hvn_peering_connection.go │ ├── data_source_hvn_route.go │ ├── data_source_packer_bucket_names.go │ ├── data_source_packer_bucket_names_test.go │ ├── data_source_packer_run_task.go │ ├── data_source_packer_run_task_test.go │ ├── data_source_vault_cluster.go │ ├── data_source_vault_plugin.go │ ├── link.go │ ├── link_test.go │ ├── location.go │ ├── location_test.go │ ├── peering.go │ ├── peering_test.go │ ├── provider.go │ ├── provider_test.go │ ├── resource_aws_network_peering.go │ ├── resource_aws_network_peering_test.go │ ├── resource_aws_transit_gateway_attachment.go │ ├── resource_aws_transit_gateway_attachment_test.go │ ├── resource_azure_peering_connection.go │ ├── resource_azure_peering_connection_test.go │ ├── resource_boundary_cluster.go │ ├── resource_boundary_cluster_test.go │ ├── resource_consul_cluster.go │ ├── resource_consul_cluster_root_token.go │ ├── resource_consul_cluster_test.go │ ├── resource_consul_snapshot.go │ ├── resource_consul_snapshot_test.go │ ├── resource_hvn.go │ ├── resource_hvn_peering_connection.go │ ├── resource_hvn_peering_connection_test.go │ ├── resource_hvn_route.go │ ├── resource_hvn_route_test.go │ ├── resource_hvn_test.go │ ├── resource_packer_channel.go │ ├── resource_packer_channel_assignment.go │ ├── resource_packer_channel_assignment_test.go │ ├── resource_packer_channel_test.go │ ├── resource_packer_run_task.go │ ├── resource_packer_run_task_test.go │ ├── resource_vault_cluster.go │ ├── resource_vault_cluster_admin_token.go │ ├── resource_vault_cluster_config_test.go │ ├── resource_vault_cluster_const_test.go │ ├── resource_vault_cluster_perf_replication_test.go │ ├── resource_vault_cluster_test.go │ ├── resource_vault_plugin.go │ ├── resource_vault_plugin_test.go │ ├── test_helpers_for_packer_test.go │ ├── test_helpers_test.go │ ├── validators.go │ └── validators_test.go └── statuspage │ ├── statuspage.go │ └── statuspage_test.go ├── main.go ├── scripts ├── changelog-links.sh └── gofmtcheck.sh ├── templates ├── data-sources │ ├── aws_network_peering.md.tmpl │ ├── aws_transit_gateway_attachment.md.tmpl │ ├── azure_peering_connection.md.tmpl │ ├── boundary_cluster.md.tmpl │ ├── consul_agent_helm_config.md.tmpl │ ├── consul_agent_kubernetes_secret.md.tmpl │ ├── consul_cluster.md.tmpl │ ├── consul_versions.md.tmpl │ ├── group.md.tmpl │ ├── hvn.md.tmpl │ ├── hvn_peering_connection.md.tmpl │ ├── hvn_route.md.tmpl │ ├── iam_policy.md.tmpl │ ├── organization.md.tmpl │ ├── packer_artifact.md.tmpl │ ├── packer_bucket_names.md.tmpl │ ├── packer_run_task.md.tmpl │ ├── packer_version.md.tmpl │ ├── project.md.tmpl │ ├── service_principal.md.tmpl │ ├── user_principal.md.tmpl │ ├── vault_cluster.md.tmpl │ ├── vault_plugin.md.tmpl │ ├── vault_secrets_app.md.tmpl │ ├── vault_secrets_dynamic_secret.md.tmpl │ ├── vault_secrets_rotating_secret.md.tmpl │ ├── vault_secrets_secret.md.tmpl │ ├── waypoint_action.md.tmpl │ ├── waypoint_add_on.md.tmpl │ ├── waypoint_add_on_definition.md.tmpl │ ├── waypoint_application.md.tmpl │ └── waypoint_template.md.tmpl ├── guides │ ├── auth.md.tmpl │ ├── consul-federation.md.tmpl │ ├── consul-root-token.md.tmpl │ ├── consul-snapshots.md.tmpl │ ├── hvn-route-migration-guide.md.tmpl │ ├── multi-project-migration-guide.md.tmpl │ ├── packer-bucket-rbac.md.tmpl │ ├── packer-channel-management.md.tmpl │ ├── packer-run-tasks-with-terraform.md.tmpl │ ├── peering-aws.md.tmpl │ ├── peering-azure.md.tmpl │ ├── vault-admin-token.md.tmpl │ ├── vault-performance-replication.md.tmpl │ ├── vault-scaling.md.tmpl │ ├── vault-secrets-data-sources.md.tmpl │ └── vault-secrets-resources.md.tmpl ├── index.md.tmpl └── resources │ ├── aws_network_peering.md.tmpl │ ├── aws_transit_gateway_attachment.md.tmpl │ ├── azure_peering_connection.md.tmpl │ ├── boundary_cluster.md.tmpl │ ├── consul_cluster.md.tmpl │ ├── consul_cluster_root_token.md.tmpl │ ├── consul_snapshot.md.tmpl │ ├── group.md.tmpl │ ├── group_iam_binding.md.tmpl │ ├── group_iam_policy.md.tmpl │ ├── group_members.md.tmpl │ ├── hvn.md.tmpl │ ├── hvn_peering_connection.md.tmpl │ ├── hvn_route.md.tmpl │ ├── iam_workload_identity_provider.md.tmpl │ ├── log_streaming_destination.md.tmpl │ ├── notifications_webhook.md.tmpl │ ├── organization_iam_binding.md.tmpl │ ├── organization_iam_policy.md.tmpl │ ├── packer_bucket.md.tmpl │ ├── packer_bucket_iam_binding.md.tmpl │ ├── packer_bucket_iam_policy.md.tmpl │ ├── packer_channel.md.tmpl │ ├── packer_channel_assignment.md.tmpl │ ├── packer_run_task.md.tmpl │ ├── project.md.tmpl │ ├── project_iam_binding.md.tmpl │ ├── project_iam_policy.md.tmpl │ ├── service_principal.md.tmpl │ ├── service_principal_key.md.tmpl │ ├── vault_cluster.md.tmpl │ ├── vault_cluster_admin_token.md.tmpl │ ├── vault_plugin.md.tmpl │ ├── vault_radar_integration_jira_connection.md.tmpl │ ├── vault_radar_integration_jira_subscription.md.tmpl │ ├── vault_radar_integration_slack_connection.md.tmpl │ ├── vault_radar_integration_slack_subscription.md.tmpl │ ├── vault_radar_source_github_cloud.md.tmpl │ ├── vault_radar_source_github_enterprise.md.tmpl │ ├── vault_secrets_app.md.tmpl │ ├── vault_secrets_app_iam_binding.md.tmpl │ ├── vault_secrets_app_iam_policy.md.tmpl │ ├── vault_secrets_dynamic_secret.md.tmpl │ ├── vault_secrets_integration.md.tmpl │ ├── vault_secrets_integration_aws.md.tmpl │ ├── vault_secrets_integration_azure.md.tmpl │ ├── vault_secrets_integration_confluent.md.tmpl │ ├── vault_secrets_integration_gcp.md.tmpl │ ├── vault_secrets_integration_mongodbatlas.md.tmpl │ ├── vault_secrets_integration_twilio.md.tmpl │ ├── vault_secrets_rotating_secret.md.tmpl │ ├── vault_secrets_secret.md.tmpl │ ├── vault_secrets_sync.md.tmpl │ ├── waypoint_action.md.tmpl │ ├── waypoint_add_on.md.tmpl │ ├── waypoint_add_on_definition.md.tmpl │ ├── waypoint_application.md.tmpl │ ├── waypoint_template.md.tmpl │ └── waypoint_tfc_config.md.tmpl ├── terraform-registry-manifest.json ├── tools └── tools.go └── version └── version.go /.changelog/1052.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Waypoint resources for templates and add-on definitions no longer require setting 3 | a `terraform_cloud_workspace_details` resource, and instead can be set by the 4 | `terraform_project_id` param. 5 | ``` 6 | -------------------------------------------------------------------------------- /.changelog/1053.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Allow authenticating the provider using Workload Identity Federation via a 3 | direct token in the provider configuration. 4 | ``` 5 | -------------------------------------------------------------------------------- /.changelog/1066.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Updated documentation to communicate the APIs the provider leverages during usage. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1078.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | add vault_secrets_integration_aws resource 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1080.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | update hcp-sdk-go 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1081.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | add vault_secrets_integration_twilio resource 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1084.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | add vault_secrets_integration_mongodbatlas resource 3 | ``` -------------------------------------------------------------------------------- /.changelog/1085.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | add vault_secrets_integration_gcp resource 3 | ``` -------------------------------------------------------------------------------- /.changelog/1089.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Added the `version` attribute(s) to `hcp_boundary_cluster` resource and data sources. 3 | ``` -------------------------------------------------------------------------------- /.changelog/1092.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add preview of vault_radar_source_github_enterprise resource. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1093.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Waypoint: fix where using the deprecated terraform_cloud_workspace_details.name field could cause an error. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1094.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | waypoint: Fix `hcp_waypoint_template` and `hcp_waypoint_add_on_definition` data sources. 3 | ``` -------------------------------------------------------------------------------- /.changelog/1097.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | add vault_secrets_dynamic_secret resource 3 | ``` -------------------------------------------------------------------------------- /.changelog/1098.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | waypoint: Add execution mode and agent pool ID configurations to the 3 | `hcp_waypoint_template` and `hcp_waypoint_add_on_definition` resources, and 4 | the `hcp_waypoint_template` and `hcp_waypoint_add_on_definition` data sources. 5 | ``` -------------------------------------------------------------------------------- /.changelog/1099.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Waypoint: New template resource attribute `use_module_readme` allows users to use the associated Terraform module readme in place of providing a seperate readme for the template. 3 | ``` -------------------------------------------------------------------------------- /.changelog/1101.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | add vault_secrets_rotating_secret resource 3 | ``` -------------------------------------------------------------------------------- /.changelog/1102.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update codeowners to include Vault Radar. 3 | ``` -------------------------------------------------------------------------------- /.changelog/1103.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update Vault Radar codeowners patterns. 3 | ``` -------------------------------------------------------------------------------- /.changelog/1109.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add pagination support for vault OpenAppSecrets preview api. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1110.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Upgrade the HCP SDK and fix a breaking change in the Boundary API. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1113.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Upgrade the HCP SDK and fix breaking change w/ Vault Secrets 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1116.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add preview of the following Vault Radar connections and subscriptions: 3 | hcp_vault_radar_integration_jira_connection 4 | hcp_vault_radar_integration_jira_subscription 5 | hcp_vault_radar_integration_slack_connection 6 | hcp_vault_radar_integration_slack_subscription 7 | ``` -------------------------------------------------------------------------------- /.changelog/1118.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Fixed issues where the HVS App resource would behave improperly such as returning an error if using an empty description. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1119.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add preview of vault_radar_source_github_cloud resource. 3 | ``` -------------------------------------------------------------------------------- /.changelog/1120.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | add vault_secrets_integration_confluent resource and add support for confluent secrets to vault_secrets_rotating_secret resource 3 | ``` -------------------------------------------------------------------------------- /.changelog/1122.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Upgrade the HCP SDK for Vault Secrets 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1124.txt: -------------------------------------------------------------------------------- 1 | ```release-note:deprecation 2 | Added a Deprecation message for the following resources: `hcp_consul_cluster`,`hcp_consul_cluster_root_token`,`hcp_consul_snapshot` 3 | ``` 4 | 5 | ```release-note:deprecation 6 | Added a Deprecation message for the following resources: `hcp_consul_agent_helm_config`,`hcp_consul_agent_kubernetes_secret`,`hcp_consul_cluster`,`hcp_consul_versions` 7 | ``` -------------------------------------------------------------------------------- /.changelog/1126.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | creating a mongodb rotating secret should create a mongodb rotating secret not a twilio one 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1129.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | HCP Vault Radar resource documents did not have the subcategory set correctly. 3 | ``` -------------------------------------------------------------------------------- /.changelog/1131.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Retry billing service update call when creating a project 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1133.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Enable updates to Vault Radar integration connections. 3 | ``` -------------------------------------------------------------------------------- /.changelog/1134.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Enable updates to Vault Radar source token. 3 | ``` -------------------------------------------------------------------------------- /.changelog/1139.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Enable updates to Vault Radar integration subscriptions. 3 | ``` -------------------------------------------------------------------------------- /.changelog/1140.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update hcp_group API calls to retry when encountering a 502, 503, or 504 error. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1142.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Upgrade the HCP SDK and update Vault Secrets to use API V2 (stable/2023-11-28) 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1143.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | add vault_secrets_integration_azure resource and add support for azure secrets to vault_secrets_rotating_secret resource 3 | ``` -------------------------------------------------------------------------------- /.changelog/1146.txt: -------------------------------------------------------------------------------- 1 | ```release-note:breaking-change 2 | waypoint: Add new required field for no-code module ID to Waypoint template and 3 | add-on definition resources. 4 | ``` -------------------------------------------------------------------------------- /.changelog/1151.txt: -------------------------------------------------------------------------------- 1 | ```release-note:deprecation 2 | the following resources are deprecated: 3 | - `hcp_vault_secrets_integration_aws` 4 | - `hcp_vault_secrets_integration_azure` 5 | - `hcp_vault_secrets_integration_confluent` 6 | - `hcp_vault_secrets_integration_gcp` 7 | - `hcp_vault_secrets_integration_mongodbatlas` 8 | - 'hcp_vault_secrets_integration_twilio' 9 | ``` 10 | 11 | ```release-note:feature 12 | add 'hcp_vault_secrets_integration' resource as a replacement for the provider-specific resources 13 | ``` -------------------------------------------------------------------------------- /.changelog/1154.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fix a panic when creating HVS app or secret 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1156.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Updating docs with examples for hcp_waypoint_template resource/data-source 3 | ``` -------------------------------------------------------------------------------- /.changelog/1157.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fix a bug where updating an HVS secret name or app name would not recreate the resource as expected 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1161.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update Go version to 1.22. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1162.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | remove 'starter_small' as a valid tier for hcp vault cluster 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1164.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Updating the provider for HCP Boundary to allow for controller configuration settings upon hcp_boundary_cluster resource/data-source 3 | ``` -------------------------------------------------------------------------------- /.changelog/1165.txt: -------------------------------------------------------------------------------- 1 | ```release-note:fix 2 | Fix the category for Azure Resource using a tmpl file 3 | ``` -------------------------------------------------------------------------------- /.changelog/1174.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | hcp_log_streaming_destination: manage resource with Log Streaming Service client 3 | ``` -------------------------------------------------------------------------------- /.changelog/1181.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update hcp_project calls to retry when encountering a 502, 503, or 504 error. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1189.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add support for GitLab integration in HVS. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1196.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add support for sync resource in HCP Vault Secrets 3 | ``` 4 | 5 | ```release-note:improvement 6 | Allow users to assign one or more syncs with an HCP Vault Secrets App 7 | ``` 8 | -------------------------------------------------------------------------------- /.changelog/1207.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | hcp_log_streaming_destination: Generally Available 3 | ``` -------------------------------------------------------------------------------- /.changelog/1208.txt: -------------------------------------------------------------------------------- 1 | ```release-note:deprecation 2 | The following attribute is deprecated for Waypoint the add-on resource and data source: 3 | - `hcp_waypoint_add_on_created_by` 4 | ``` -------------------------------------------------------------------------------- /.changelog/1216.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | diagnostics: Remove statuspage checks 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1218.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Enabling failing HCP Vault Dedicates GHA pipeline tests with fix. 3 | ``` -------------------------------------------------------------------------------- /.changelog/1224.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add way to assign actions to a Waypoint template or application on create or update. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1231.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Upgrade terraform-plugin-go to v0.26.0 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1242.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fixed a bug when `tfe_waypoint_template.variable_options` did not specify `options` list. 3 | ``` 4 | 5 | ```release-note:bug 6 | Fixed a bug for `hcp_waypoint_add_on_definition.variable_options` which incorrectly required `options`. 7 | ``` -------------------------------------------------------------------------------- /.changelog/1246.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Increase project deletion timeout 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1253.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Added resources that are required for full functionality to the example code for `hcp_aws_transit_gateway_attachment`: , `aws_subnet`, `aws_ec2_transit_gateway_vpc_attachment, and `aws_ `aws_route` pointing back to the HVN attachment. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1260.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Group operations (create, delete, update, update members) now block client-side if an operationID is present in the response. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1269.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fixed Platform Acceptance test failure by making `azurerm_role_definition.name` unique. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/1270.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | update hcp-sdk-go 3 | ``` -------------------------------------------------------------------------------- /.changelog/1297.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | diagnostics: Restore status page check and make it optional via provider config bool skip_status_check or env HCP_SKIP_STATUS_CHECK. 3 | ``` -------------------------------------------------------------------------------- /.changelog/411.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Set up auto release capability 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/418.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Bump google.golang.org/grpc from 1.50.1 to 1.51.0 3 | ``` -------------------------------------------------------------------------------- /.changelog/419.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Automatically update docs on auto release 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/421.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add E2E tests to auto release pipeline 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/422.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Bumps github.com/go-openapi/runtime from 0.24.2 to 0.25.0 3 | ``` -------------------------------------------------------------------------------- /.changelog/423.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Add check for "v" when compiling changelog 3 | ``` -------------------------------------------------------------------------------- /.changelog/424.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Bump github.com/hashicorp/hcp-sdk-go from 0.24.0 to 0.27.0 3 | ``` -------------------------------------------------------------------------------- /.changelog/425.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | The example usage for `hcp_azure_peering_connection` was missing the `vnet` 3 | resource reference. 4 | ``` 5 | -------------------------------------------------------------------------------- /.changelog/427.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Increase `hcp_consul_cluster` create timeout to 35 minutes 3 | ``` -------------------------------------------------------------------------------- /.changelog/429.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Enable automatic changelog creation for dependabot PRs. 3 | ``` -------------------------------------------------------------------------------- /.changelog/430.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add linting checks to PR and release pipeline. 3 | ``` -------------------------------------------------------------------------------- /.changelog/431.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Bump github.com/hashicorp/hcp-sdk-go from 0.28.0 to 0.29.0 3 | ``` -------------------------------------------------------------------------------- /.changelog/434.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update auth guide. 3 | ``` -------------------------------------------------------------------------------- /.changelog/435.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | New resource `hcp_packer_channel` to create, or update an existing, channel with or without an assigned iteration. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/436.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Automatically sync the public and internal repos. 3 | ``` -------------------------------------------------------------------------------- /.changelog/437.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Use unique clusterIDs in acceptance tests 3 | ``` -------------------------------------------------------------------------------- /.changelog/439.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update hcp_consul_cluster and hcp_consul_cluster_root_token docs 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/440.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fix issue with E2E tests failing 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/441.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Refactor HCP Vault TF acceptance test harness to include test for Azure 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/444.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Bump google.golang.org/grpc from 1.51.0 to 1.52.3 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/445.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Bump github.com/hashicorp/hcp-sdk-go from 0.29.0 to 0.31.0 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/448.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Do not exit acceptance test when provider returns a warning 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/452.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Bump google.golang.org/grpc from 1.52.3 to 1.53.0 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/454.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Enable multi-project at provider level. 3 | ``` -------------------------------------------------------------------------------- /.changelog/455.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | New field `ip_allowlist` for `hcp_consul_cluster` to create, or update allowed IP address ranges (CIDRs) for inbound traffic. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/457.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | resource/hcp_packer_channel: Label resource as public beta 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/458.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Bump github.com/hashicorp/hcp-sdk-go from 0.31.0 to 0.35.0 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/459.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Bump github.com/hashicorp/terraform-plugin-sdk/v2 from 2.24.1 to 2.25.0 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/462.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | resource/hcp_packer_channel: Fix documentation for incorrectly documented attributes 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/465.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add cluster scaling acceptance tests for Azure 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/480.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Update pricing information for vault and consul. 3 | ``` -------------------------------------------------------------------------------- /.changelog/482.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Bump github.com/hashicorp/hcp-sdk-go from 0.35.0 to 0.37.0 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/500.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Adds `maintenenace_window_config` to the `hcp_boundary_cluster` resource to manage the timeframe for cluster upgrades. 3 | ``` -------------------------------------------------------------------------------- /.changelog/502.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update CODEOWNERS 3 | ``` -------------------------------------------------------------------------------- /.changelog/510.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update `hcp-sdk-go` 3 | ``` -------------------------------------------------------------------------------- /.changelog/513.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Documentation: HCP Packer Channel Resource is no longer in beta 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/515.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Update HVN Route validation for `destination_cidr` attribute to allow RFC6598 CIDR range. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/517.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Documentation: Update contributor documentation and resource-specific import examples to reflect multi-project support. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/518.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Documentation: Update HCP Boundary maintenance window documentation to specify that UTC timezone is expected. 3 | ``` -------------------------------------------------------------------------------- /.changelog/519.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Resolve failure to generate apply/destroy plans that include hcp_packer_channel resources that were deleted outside of Terraform [GH-519] 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/520.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update prerelease github action workflow to allow bypassing end-to-end tests via input variable. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/521.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Resolve unintended removal of assigned iteration when `iteration` block is not present on `hcp_packer_channel` 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/524.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | hcp_vault_secrets_app: New data source that allows bulk retrieval of all secret values in a secrets app 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/527.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update the description of the optional `project_id` field in data sources and resources to include details of how project_id is targeted when none is passed in. 3 | ``` -------------------------------------------------------------------------------- /.changelog/531.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Adds read-only `restricted` field to `hcp_packer_channel` resource. 3 | ``` 4 | 5 | ```release-note:feature 6 | Adds `hcp_packer_channel_assignment` resource. 7 | ``` 8 | 9 | ```release-note:deprecation 10 | Setting the `iteration` block on `hcp_packer_channel` is now deprecated in 11 | favor of `hcp_packer_channel_assignment`. 12 | ``` 13 | -------------------------------------------------------------------------------- /.changelog/533.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fixed panic when `hcp_packer_image` points to a channel without an assigned iteration. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/536.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Adds `hcp_packer_bucket_names` data source. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/537.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add "premium" to descriptions about Consul Cluster tier 3 | ``` -------------------------------------------------------------------------------- /.changelog/542.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Capture unknown errors from the HCP Go SDK when getting project or organization, where errors were previously replaced with a static message. 3 | ``` -------------------------------------------------------------------------------- /.changelog/543.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Updated Auth Guide to reflect the impact to the provider when using Project-Level Service Principals; `project_id` within the provider configuration is needed. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/544.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Adds `tier` to the `hcp_boundary_cluster` resource to manage the cluster pricing and feature set. 3 | ``` -------------------------------------------------------------------------------- /.changelog/545.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Resolve panics when Packer API client helpers receive unexpected error formats 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/547.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Adds `hcp_packer_run_task` resource. 3 | ``` 4 | 5 | ```release-note:feature 6 | Adds `hcp_packer_run_task` data source. 7 | ``` 8 | -------------------------------------------------------------------------------- /.changelog/552.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Updated Auth Guide to reflect the impact to the provider when using Project-Level Service Principals; `project_id` within the provider configuration is needed. Fix for previous release in v0.64.0 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/554.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Updated Boundary `Tier` configuration to be case insensitive. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/555.txt: -------------------------------------------------------------------------------- 1 | ```release-note:breaking-change 2 | Removed the `iteration` block from `hcp_packer_channel`, previously deprecated in v0.63.0 3 | ``` 4 | 5 | ```release-note:feature 6 | Channel restriction can now be configured with the `restricted` field of `hcp_packer_channel` 7 | ``` 8 | 9 | ```release-note:improvement 10 | Add support for HCP Packer Managed channels to `hcp_packer_channel`. Also adds a read-only `managed` attribute. 11 | ``` 12 | -------------------------------------------------------------------------------- /.changelog/556.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Upgrade Go to version 1.19 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/565.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update to use the Terraform Multiplexing framework 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/569.txt: -------------------------------------------------------------------------------- 1 | ```release-note:deprecation 2 | The `hcp_packer_image_iteration` data source is now deprecated. 3 | Use the `hcp_packer_image` or `hcp_packer_iteration` data sources instead. 4 | ``` 5 | -------------------------------------------------------------------------------- /.changelog/571.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Adjusted wording in the documentation and error messages for `data.hcp_packer_image`. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/577.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add `proxy_endpoint` field to enable toggling the proxy option on HCP Vault clusters, along with corresponding read-only `vault_proxy_endpoint_url` field. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/579.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add `hcp_vault_plugin` resource 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/580.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add CloudWatch as an observability provider for streaming audit logs and metrics from HCP Vault clusters. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/585.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Updating docs to use sub-categories 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/586.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add ElasticSearch as an observability provider for streaming audit logs and metrics from HCP Vault clusters. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/590.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update semver validation to allow specification of pre-release versions 3 | ``` -------------------------------------------------------------------------------- /.changelog/591.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | update hcp_vault_plugin resource test. remove hard coded values that were used for local testing. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/593.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add resource to create app in Vault Secrets. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/594.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add data source for pulling in a single secret. 3 | ``` -------------------------------------------------------------------------------- /.changelog/604.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | project_id unauthorized issue when using config client secret 3 | ``` -------------------------------------------------------------------------------- /.changelog/609.txt: -------------------------------------------------------------------------------- 1 | ```release-note:breaking-change 2 | Removed the `hcp_packer_image_iteration` data source, previously deprecated in [v0.68.0](https://github.com/hashicorp/terraform-provider-hcp/releases/tag/v0.68.0) 3 | ``` -------------------------------------------------------------------------------- /.changelog/610.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update to Go 1.20 per the [Go support policy](https://go.dev/doc/devel/release#policy). 3 | ``` -------------------------------------------------------------------------------- /.changelog/619.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Prevent crash when a vault_secrets_app resource no longer exists. 3 | ```` -------------------------------------------------------------------------------- /.changelog/620.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fix documentation formatting issue introduced by [#585](https://github.com/hashicorp/terraform-provider-hcp/pull/585) 3 | ``` -------------------------------------------------------------------------------- /.changelog/622.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fix documentation duplicate subcategory issue introduced by [#620](https://github.com/hashicorp/terraform-provider-hcp/pull/620) 3 | ``` -------------------------------------------------------------------------------- /.changelog/625.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add `ip_allowlist` field for HCP Vault clusters to create or update allowed IP address ranges (CIDRs) for inbound traffic. 3 | ``` -------------------------------------------------------------------------------- /.changelog/629.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add `hcp_project` resource. 3 | ``` 4 | 5 | ```release-note:feature 6 | Add `hcp_project` data source. 7 | ``` 8 | 9 | ```release-note:feature 10 | Add `hcp_organization` data source. 11 | ``` 12 | -------------------------------------------------------------------------------- /.changelog/636.txt: -------------------------------------------------------------------------------- 1 | 2 | ```release-note:feature 3 | Add `hcp_service_principal` resource. 4 | ``` 5 | 6 | ```release-note:feature 7 | Add `hcp_service_principal` data source. 8 | ``` 9 | 10 | ```release-note:feature 11 | Add `hcp_service_principal_key` resource. 12 | ``` 13 | -------------------------------------------------------------------------------- /.changelog/637.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Upgrade to Terraform Provider Protocol 6 3 | ``` 4 | 5 | ```release-note:breaking-change 6 | Drops support for Terraform CLI versions prior to v1.1.5, previously deprecated in provider release v0.74.1 7 | ``` 8 | 9 | -------------------------------------------------------------------------------- /.changelog/642.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fix hcp_project import 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/644.txt: -------------------------------------------------------------------------------- 1 | ```release-note:deprecation 2 | An upcoming release will deprecate support for Terraform versions before 1.1.5. 3 | Please upgrade to be able to use the latest releases of the provider. 4 | ``` 5 | -------------------------------------------------------------------------------- /.changelog/647.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add `hcp_iam_workload_identity_provider` resource. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/653.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add NewRelic as an observability provider for streaming audit logs and metrics from HCP Vault clusters. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/656.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Removed unnecessary validation of a trailing slash on the `oidc.issuer_uri` 3 | field for the `hcp_iam_workload_identity_provider` resource. 4 | ``` 5 | -------------------------------------------------------------------------------- /.changelog/657.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fix some documentation mistakes in examples for the `hcp_iam_workload_identity_provider` resource. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/661.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add `hcp_organization_iam_policy` resource. 3 | ``` 4 | 5 | ```release-note:feature 6 | Add `hcp_organization_iam_binding` resource. 7 | ``` 8 | 9 | ```release-note:feature 10 | Add `hcp_project_iam_policy` resource. 11 | ``` 12 | 13 | ```release-note:feature 14 | Add `hcp_project_iam_binding` resource. 15 | ``` 16 | 17 | ```release-note:feature 18 | Add `hcp_iam_policy` data source. 19 | ``` 20 | 21 | ```release-note:improvement 22 | Update to Go 1.21. 23 | ``` 24 | -------------------------------------------------------------------------------- /.changelog/666.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | The new version of the hcp-sdk-go did remove the implicit login on initialization. This change re-introduce the login by explicitly fetching credentials during the client initialization. 3 | ``` 4 | 5 | ```release-note:improvement 6 | The change introduces the ability to provide configuration via environment variables, which will allow credentials to be provided via environment variable (either directly or via a creds file). 7 | ``` -------------------------------------------------------------------------------- /.changelog/671.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add custom http endpoints as an observability provider for streaming audit logs and metrics from HCP Vault clusters. 3 | ``` -------------------------------------------------------------------------------- /.changelog/672.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add support to authenticate the provider using credential files. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/678.txt: -------------------------------------------------------------------------------- 1 | ```release-note:deprecation 2 | The `data.hcp_packer_iteration.incremental_version` attribute is now deprecated and will be removed in a future release. Use the `fingerprint`, `id` or `uuid` attributes to reference iterations instead. 3 | ``` 4 | 5 | ```release-note:deprecation 6 | The `hcp_packer_channel_assignment.iteration_version` attribute is now deprecated and will be removed in a future release. Use the `iteration_fingerprint` attribute to reference iterations instead. 7 | ``` 8 | 9 | ```release-note:deprecation 10 | The `hcp_packer_channel_assignment.iteration_id` attribute is now deprecated and will be removed in a future release. Use the `iteration_fingerprint` attribute to reference iterations instead. 11 | ``` 12 | -------------------------------------------------------------------------------- /.changelog/681.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add optional attribute `allow_forwarded_traffic` to `hcp_azure_peering_connection` resource. 3 | ``` 4 | 5 | ```release-note:feature 6 | Add optional attribute `use_remote_gateways` to `hcp_azure_peering_connection` resource. 7 | ``` 8 | -------------------------------------------------------------------------------- /.changelog/685.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add optional Azure config block for hvn_route resource to support hub and spoke architectures, `azure_config`. 3 | 4 | Add optional `next_hop_type` parameter. 5 | Add optional `next_hop_ip_address` parameter. 6 | 7 | Please see the Microsoft learn guide docs for futher info: 8 | https://learn.microsoft.com/en-us/azure/architecture/reference-architectures/hybrid-networking/hub-spoke 9 | ``` 10 | -------------------------------------------------------------------------------- /.changelog/691.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Allow authenticating the provider using Workload Identity Federation via a 3 | token_file in the provider configuration. 4 | ``` 5 | -------------------------------------------------------------------------------- /.changelog/713.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add `hcp_log_streaming_destination` resource. 3 | ``` -------------------------------------------------------------------------------- /.changelog/723.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add `hcp_notifications_webhook` resource. 3 | ``` -------------------------------------------------------------------------------- /.changelog/735.txt: -------------------------------------------------------------------------------- 1 | ```release-note:deprecation 2 | `data.hcp_packer_image`: This data source will be removed in a future release, and is superseded by `data.hcp_packer_artifact` 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/748.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Do not panic if provider is configured with credentials with no project access. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/749.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update example for `hcp_packer_channel_assignment` resource 3 | ``` -------------------------------------------------------------------------------- /.changelog/750.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fixing the validation rules for HCP Vault Secrets app and secret names to match 3 | what we have on the server side. 4 | ``` 5 | -------------------------------------------------------------------------------- /.changelog/751.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fixing a panic on errors when opening secrets from HCP Vault Secrets. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/757.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add CloudWatch config option for hcp_log_streaming_destination resource. 3 | ``` -------------------------------------------------------------------------------- /.changelog/766.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | New resource: Add `hcp_waypoint_tfc_config` resource for managing the TFC 3 | Configuration used by Waypoint. 4 | ``` 5 | -------------------------------------------------------------------------------- /.changelog/770.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Update Boundary API clients method name to match the latest version 3 | ``` -------------------------------------------------------------------------------- /.changelog/778.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | New resource: Add `hcp_waypoint_application_template` resource for managing Waypoint Application Templates. 3 | New data-source: Add `data.hcp_waypoint_application_template` data-source for Waypoint Application Templates. 4 | ``` 5 | -------------------------------------------------------------------------------- /.changelog/781.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fixed an issue that caused a HTTP audit-log streaming config to fail with allowed values for http_codec are only "JSON" or "NDJSON" 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/785.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | New resource: Add `hcp_waypoint_add_on_definition` resource for managing Waypoint Add-on Definitions. 3 | New data-source: Add `data.hcp_waypoint_add_on_definition` data-source for Waypoint Add-on Definitions. 4 | ``` -------------------------------------------------------------------------------- /.changelog/787.txt: -------------------------------------------------------------------------------- 1 | 2 | ```release-note:feature 3 | New resource: Add `hcp_group` resource for managing HCP groups. 4 | ``` 5 | 6 | ```release-note:feature 7 | New data source: Add `hcp_group` data source for retrieving HCP groups. 8 | ``` 9 | 10 | ```release-note:feature 11 | New data source: Add `hcp_user_principal` data source for retrieving HCP user principals. 12 | ``` 13 | 14 | ```release-note:feature 15 | New resource: Add `hcp_group_members` resource for managing HCP user principals in a group. 16 | ``` 17 | -------------------------------------------------------------------------------- /.changelog/791.txt: -------------------------------------------------------------------------------- 1 | ```release-note:breaking-change 2 | Removed `hcp_packer_iteration` data source, previously deprecated and replaced by `hcp_packer_version` in [v0.82.0](https://github.com/hashicorp/terraform-provider-hcp/releases/tag/v0.82.0). 3 | ``` 4 | 5 | ```release-note:breaking-change 6 | Removed `hcp_packer_image` data source, previously deprecated and replaced by `hcp_packer_artifact` in [v0.82.0](https://github.com/hashicorp/terraform-provider-hcp/releases/tag/v0.82.0). 7 | ``` 8 | 9 | ```release-note:breaking-change 10 | Removed `iteration_fingerprint` attribute from `hcp_packer_channel_assignment` resource, previously deprecated and replaced by `version_fingerprint` in [v0.82.0](https://github.com/hashicorp/terraform-provider-hcp/releases/tag/v0.82.0). 11 | ``` -------------------------------------------------------------------------------- /.changelog/793.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Handle the case when multiple organizations are associated with the configured credentials. Now, it instead prompts an error, requiring users to specify a particular organization in the HCP provider config block. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/794.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | New resource: Add `hcp_waypoint_application` resource for managing Waypoint Application. 3 | New data-source: Add `data.hcp_waypoint_application` data-source for Waypoint Application. 4 | ``` 5 | -------------------------------------------------------------------------------- /.changelog/797.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Documentation: Adjust the subcategory for hcp_user_principal, hcp_group_members, hcp_iam_workload_identity_provider to Cloud Platform 3 | ``` 4 | 5 | ```release-note:bug 6 | Fixes an issue where organization ID was not sent on data.hcp_user_principal lookup 7 | ``` -------------------------------------------------------------------------------- /.changelog/801.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Documentation: Update hcp_iam_policy docs with HCP Vault Secrets Roles App Manager and App Secret Reader 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/802.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add in-place update functionality to `hcp_log_streaming_destination` resource. 3 | ``` -------------------------------------------------------------------------------- /.changelog/803.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add DataDog config option for hcp_log_streaming_destination resource. 3 | ``` -------------------------------------------------------------------------------- /.changelog/807.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | New resource: Add `hcp_waypoint_add_on` resource for managing Waypoint Add-ons. 3 | New data-source: Add `data.hcp_waypoint_add_on` data-source for Waypoint Add-ons. 4 | ``` -------------------------------------------------------------------------------- /.changelog/808.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fixes the case where Vault secret resources ignore provider project changes. 3 | ``` 4 | 5 | ```release-note:improvement 6 | Vault secret resources can now be created with an optional project ID. If project ID is present, the resource will be created within that project. 7 | ``` 8 | -------------------------------------------------------------------------------- /.changelog/810.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add GitHub Action to run identity-specific tests 3 | ``` -------------------------------------------------------------------------------- /.changelog/812.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Documentation: Gracefully handle rate limiting error on `hcp_vault_secrets_secret` resource. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/813.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Return resource name when a Vault Secrets App is created 3 | ``` 4 | 5 | ```release-note:feature 6 | Add `hcp_vault_secrets_app_iam_policy` resource. 7 | ``` 8 | 9 | ```release-note:feature 10 | Add `hcp_vault_secrets_app_iam_binding` resource. 11 | ``` 12 | -------------------------------------------------------------------------------- /.changelog/814.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | CODEOWNERS: Fix vault-secrets resource ownership to @hashicorp/cloud-vault-secrets team. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/815.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | New resource: Add `hcp_waypoint_action_config` resource for managing Waypoint Action Configs. 3 | New data-source: Add `data.hcp_waypoint_action_config` data-source for Waypoint Action Configs. 4 | ``` -------------------------------------------------------------------------------- /.changelog/816.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Support setting variable options in `hcp_waypoint_application_template`. 3 | ``` -------------------------------------------------------------------------------- /.changelog/819.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Support setting variable options in `Support setting variable options in `hcp_waypoint_add_on_definition`. 3 | ``` -------------------------------------------------------------------------------- /.changelog/820.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | CODEOWNERS: Fix the vault-secrets resource ownership to @hashicorp/cloud-vault-secrets team. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/822.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Support retrieving output values in `hcp_waypoint_add_on` 3 | ``` -------------------------------------------------------------------------------- /.changelog/825.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fix documentation of hcp_vault_secrets_app_iam_binding and hcp_vault_secrets_app_iam_policy 3 | 4 | ``` -------------------------------------------------------------------------------- /.changelog/826.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Documentation: call OpenAppSecrets instead of List + Open in hcp_vault_secrets_app data source. This improves an issue with additional unnecessary client API usage. 3 | ``` -------------------------------------------------------------------------------- /.changelog/830.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | resource/hcp_log_streaming_destination: Label resource as public beta 3 | ``` -------------------------------------------------------------------------------- /.changelog/833.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Add support for input variables to `hcp_waypoint_application` resource and 3 | data source. 4 | ``` -------------------------------------------------------------------------------- /.changelog/835.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Added HCP Boundary to statuspage components used to warn about potential issues with HCP. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/838.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fix first apply scenario for hcp_vault_secrets_app_iam_binding and hcp_vault_secrets_app_iam_policy, update docs 3 | 4 | ``` -------------------------------------------------------------------------------- /.changelog/839.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Waypoint: fix issue with importing existing Waypoint resources 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/844.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Cloud Platform: fix issue where hcp_group without a description would cause a state error 3 | -------------------------------------------------------------------------------- /.changelog/846.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Cloud Platform: fix issue where hcp_group description cannot be set to an empty string after it has been set to a non-empty string 3 | -------------------------------------------------------------------------------- /.changelog/847.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Cloud Platform: fix hcp_group_members docs to reference an hcp_user_principal.user_id instead of an hcp_user_principal.id 3 | -------------------------------------------------------------------------------- /.changelog/849.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Cloud Platform: fix issue where hcp_iam_workload_identity_provider without a description would cause a state error 3 | -------------------------------------------------------------------------------- /.changelog/850.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Allows users to fetch rotating secrets using the hcp_vault_secrets_app and hcp_vault_secrets_secret data sources 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/851.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update `hcp-sdk-go` 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/852.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | New resource: Add `hcp_packer_bucket` resource for managing HCP Packer buckets 3 | New Resource: Add `hcp_packer_bucket_iam_policy` resource for assigning a list of policy bindings to multiple principals for a HCP Packer Bucket 4 | New resource: Add `hcp_packer_bucket_iam_binding` resource for assigning a single role to a principal for a HCP Packer Bucket 5 | ``` 6 | -------------------------------------------------------------------------------- /.changelog/854.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | add vault_secrets_rotating_secret data source 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/855.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | Update `hcp-sdk-go` to v0.98.0 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/861.txt: -------------------------------------------------------------------------------- 1 | ```release-note:breaking-change 2 | waypoint: Rename `hcp_waypoint_application_template` resource and data source to 3 | `hcp_waypoint_template`. 4 | ``` -------------------------------------------------------------------------------- /.changelog/864.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | waypoint: Add support for input variables to the `hcp_wapyoint_add_on` resource 3 | and data source. 4 | ``` 5 | -------------------------------------------------------------------------------- /.changelog/865.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | Add `hcp_group_iam_policy` resource. 3 | ``` 4 | 5 | ```release-note:feature 6 | Add `hcp_group_iam_binding` resource. 7 | ``` -------------------------------------------------------------------------------- /.changelog/867.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fix the documentation for hcp_vault_secrets_rotating_secret 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/868.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | add vault_secrets_dynamic_secret data source 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/869.txt: -------------------------------------------------------------------------------- 1 | ```release-note:breaking-change 2 | waypoint: Remove version number from templates and add-on definition resources and data sources. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/870.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fix intermittent conflicts during IAM policy updates 3 | ``` -------------------------------------------------------------------------------- /.changelog/871.txt: -------------------------------------------------------------------------------- 1 | ```release-note:feature 2 | HCP Waypoint Application resource and data source can now read any output values associated with that application 3 | ``` -------------------------------------------------------------------------------- /.changelog/894.txt: -------------------------------------------------------------------------------- 1 | ```release-note:improvement 2 | waypoint: The `readme_markdown_template` attribute for both template and add-on definition resources now accepts unencoded strings as well as base64 encoded strings. 3 | ``` -------------------------------------------------------------------------------- /.changelog/904.txt: -------------------------------------------------------------------------------- 1 | ```release-note:bug 2 | Fix the documentation location for hcp_packer_bucket, hcp_packer_bucket_iam_policy, and hcp_packer_bucket_iam_binding. 3 | ``` 4 | -------------------------------------------------------------------------------- /.changelog/note.tmpl: -------------------------------------------------------------------------------- 1 | {{- define "note" -}} 2 | {{.Body}}{{if not (stringHasPrefix .Issue "_")}} [[GH-{{- .Issue -}}](https://github.com/hashicorp/terraform-provider-hcp/pull/{{- .Issue -}})]{{end}} 3 | {{- end -}} 4 | -------------------------------------------------------------------------------- /.copywrite.hcl: -------------------------------------------------------------------------------- 1 | # Overrides the copywrite config schema version 2 | # Default: 1 3 | schema_version = 1 4 | 5 | project { 6 | # SPDX-compatible license identifier 7 | # Leave blank if you don't wish to license the project 8 | # Default: "MPL-2.0" 9 | # license = "" 10 | 11 | # Represents the year that the project initially began 12 | # Default: 13 | # copyright_year = 0 14 | 15 | # A list of globs that should not have copyright or license headers 16 | # Supports doublestar glob patterns for more flexibility in defining which 17 | # files or folders should be ignored 18 | # Default: [] 19 | header_ignore = [ 20 | "examples/**" 21 | ] 22 | } 23 | -------------------------------------------------------------------------------- /.github/CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Code of Conduct 2 | 3 | HashiCorp Community Guidelines apply to you when interacting with the community here on GitHub and contributing code. 4 | 5 | Please read the full text at https://www.hashicorp.com/community-guidelines 6 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # See GitHub's docs for more information on this file: 2 | # https://docs.github.com/en/free-pro-team@latest/github/administering-a-repository/configuration-options-for-dependency-updates 3 | version: 2 4 | updates: 5 | - package-ecosystem: "github-actions" 6 | directory: "/" 7 | schedule: 8 | interval: "monthly" 9 | labels: 10 | - "pr/no-changelog" 11 | - "github_actions" 12 | 13 | # Maintain dependencies for Go modules 14 | - package-ecosystem: "gomod" 15 | directory: "/" 16 | schedule: 17 | # Check for updates to Go modules every weekday 18 | interval: "daily" 19 | labels: 20 | - "pr/no-changelog" 21 | -------------------------------------------------------------------------------- /.github/workflows/pr-stale.yml: -------------------------------------------------------------------------------- 1 | name: "Close stale PRs" 2 | on: 3 | schedule: 4 | - cron: "0 0 * * *" # end of every day 5 | 6 | jobs: 7 | stale: 8 | runs-on: ubuntu-latest 9 | steps: 10 | - uses: actions/stale@5bef64f19d7facfb25b37b414482c7164d639639 # v9.1.0 11 | with: 12 | ascending: true 13 | operations-per-run: 100 14 | days-before-stale: 15 15 | days-before-close: 7 16 | exempt-all-assignees: true # anything with a assignee won't be closed 17 | stale-pr-message: "This PR is more than 2 weeks old. Please remove the 18 | stale label, update, or comment if this PR is still valid and 19 | relevant, otherwise it will be closed in 7 days." 20 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.dll 2 | *.exe 3 | .DS_Store 4 | example.tf 5 | terraform.tfplan 6 | terraform.tfstate* 7 | .terraform.lock* 8 | bin/ 9 | dist/ 10 | modules-dev/ 11 | /pkg/ 12 | website/.vagrant 13 | website/.bundle 14 | website/build 15 | website/node_modules 16 | .vagrant/ 17 | *.backup 18 | ./*.tfstate 19 | .terraform/ 20 | *.log 21 | *.bak 22 | *~ 23 | .*.swp 24 | .idea 25 | *.iml 26 | *.test 27 | *.iml 28 | .env* 29 | 30 | website/vendor 31 | vendor 32 | 33 | # Test exclusions 34 | !command/test-fixtures/**/*.tfstate 35 | !command/test-fixtures/**/.terraform/ 36 | 37 | # Keep windows files with windows line endings 38 | *.winfile eol=crlf 39 | -------------------------------------------------------------------------------- /.go-version: -------------------------------------------------------------------------------- 1 | 1.22.11 2 | -------------------------------------------------------------------------------- /.release/release-metadata.hcl: -------------------------------------------------------------------------------- 1 | # Copyright (c) HashiCorp, Inc. 2 | # SPDX-License-Identifier: MPL-2.0 3 | 4 | url_source_repository = "https://github.com/hashicorp/terraform-provider-hcp" 5 | url_license = "https://github.com/hashicorp/terraform-provider-hcp/blob/main/LICENSE" 6 | -------------------------------------------------------------------------------- /.tool-versions: -------------------------------------------------------------------------------- 1 | terraform 1.0.11 2 | -------------------------------------------------------------------------------- /META.d/_summary.yaml: -------------------------------------------------------------------------------- 1 | # Copyright (c) HashiCorp, Inc. 2 | # SPDX-License-Identifier: MPL-2.0 3 | 4 | partition: hcp 5 | schema: 1.1 6 | summary: 7 | owner: team-cloud-core-platform 8 | -------------------------------------------------------------------------------- /docs/data-sources/group.md: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "hcp_group Data Source - terraform-provider-hcp" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | The group data source retrieves the given group. 6 | --- 7 | 8 | # hcp_group (Data Source) 9 | 10 | The group data source retrieves the given group. 11 | 12 | ## Example Usage 13 | 14 | ```terraform 15 | data "hcp_group" "example" { 16 | resource_name = var.resource_name 17 | } 18 | ``` 19 | 20 | 21 | ## Schema 22 | 23 | ### Required 24 | 25 | - `resource_name` (String) The group's resource name in format `iam/organization//group/`. The shortened `` version can be used for input. 26 | 27 | ### Read-Only 28 | 29 | - `description` (String) The group's description 30 | - `display_name` (String) The group's display name 31 | - `resource_id` (String) The group's unique identifier 32 | -------------------------------------------------------------------------------- /docs/data-sources/organization.md: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "hcp_organization Data Source - terraform-provider-hcp" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | The organization data source retrieves the HCP organization the provider is configured for. 6 | --- 7 | 8 | # hcp_organization (Data Source) 9 | 10 | The organization data source retrieves the HCP organization the provider is configured for. 11 | 12 | ## Example Usage 13 | 14 | ```terraform 15 | data "hcp_organization" "example" { 16 | } 17 | ``` 18 | 19 | 20 | ## Schema 21 | 22 | ### Read-Only 23 | 24 | - `name` (String) The organization's name. 25 | - `resource_id` (String) The organization's unique identifier 26 | - `resource_name` (String) The organization's resource name in format "organization/" 27 | -------------------------------------------------------------------------------- /docs/data-sources/project.md: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "hcp_project Data Source - terraform-provider-hcp" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | The project data source retrieves the given HCP project. 6 | --- 7 | 8 | # hcp_project (Data Source) 9 | 10 | The project data source retrieves the given HCP project. 11 | 12 | ## Example Usage 13 | 14 | ```terraform 15 | data "hcp_project" "example" { 16 | project = var.project_id 17 | } 18 | ``` 19 | 20 | 21 | ## Schema 22 | 23 | ### Optional 24 | 25 | - `project` (String) The id of the project. May be given as "" or "project/". If not set, the provider project is used. 26 | 27 | ### Read-Only 28 | 29 | - `description` (String) The project's description 30 | - `name` (String) The project's name. 31 | - `resource_id` (String) The project's unique identifier 32 | - `resource_name` (String) The project's resource name in format "project/" 33 | -------------------------------------------------------------------------------- /docs/data-sources/user_principal.md: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "hcp_user_principal Data Source - terraform-provider-hcp" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | The user principal data source retrieves the given user principal. 6 | --- 7 | 8 | # hcp_user_principal (Data Source) 9 | 10 | The user principal data source retrieves the given user principal. 11 | 12 | ## Example Usage 13 | 14 | ```terraform 15 | data "hcp_user_principal" "example" { 16 | user_id = var.example_user_id 17 | } 18 | 19 | data "hcp_user_principal" "example" { 20 | email = var.example_email 21 | } 22 | ``` 23 | 24 | 25 | ## Schema 26 | 27 | ### Optional 28 | 29 | - `email` (String) The user's email. Can not be combined with user_id. 30 | - `user_id` (String) The user's unique identifier. Can not be combined with email. 31 | -------------------------------------------------------------------------------- /examples/README.md: -------------------------------------------------------------------------------- 1 | # Examples 2 | 3 | This directory contains examples that are mostly used for documentation, but can also be run/tested manually via the Terraform CLI. 4 | 5 | The document generation tool looks for files in the following locations by default. All other *.tf files besides the ones mentioned below are ignored by the documentation tool. This is useful for creating examples that can run and/or ar testable even if some parts are not relevant for the documentation. 6 | 7 | * **provider/provider.tf** example file for the provider index page 8 | * **data-sources//data-source.tf** example file for the named data source page 9 | * **resources//resource.tf** example file for the named data source page 10 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_aws_network_peering/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_aws_network_peering" "test" { 2 | hvn_id = var.hvn_id 3 | peering_id = var.peering_id 4 | wait_for_active_state = true 5 | } 6 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_aws_network_peering/variables.tf: -------------------------------------------------------------------------------- 1 | variable "hvn_id" { 2 | description = "The ID of the HashiCorp Virtual Network (HVN)." 3 | type = string 4 | } 5 | 6 | variable "peering_id" { 7 | description = "The ID of the network peering." 8 | type = string 9 | } 10 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_aws_transit_gateway_attachment/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_aws_transit_gateway_attachment" "test" { 2 | hvn_id = var.hvn_id 3 | transit_gateway_attachment_id = var.transit_gateway_attachment_id 4 | } 5 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_aws_transit_gateway_attachment/variables.tf: -------------------------------------------------------------------------------- 1 | variable "hvn_id" { 2 | description = "The ID of the HashiCorp Virtual Network (HVN)." 3 | type = string 4 | } 5 | 6 | variable "transit_gateway_attachment_id" { 7 | description = "The user-settable name of the transit gateway attachment in HCP." 8 | type = string 9 | } 10 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_azure_peering_connection/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_azure_peering_connection" "test" { 2 | hvn_id = var.hvn_id 3 | peering_id = var.peering_id 4 | wait_for_active_state = true 5 | } 6 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_azure_peering_connection/variables.tf: -------------------------------------------------------------------------------- 1 | variable "hvn_id" { 2 | description = "The ID of the HashiCorp Virtual Network (HVN)." 3 | type = string 4 | } 5 | 6 | variable "peering_id" { 7 | description = "The ID of the peering connection." 8 | type = string 9 | } 10 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_boundary_cluster/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_boundary_cluster" "example" { 2 | cluster_id = var.cluster_id 3 | } -------------------------------------------------------------------------------- /examples/data-sources/hcp_consul_agent_helm_config/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_consul_agent_helm_config" "example" { 2 | cluster_id = var.cluster_id 3 | kubernetes_endpoint = var.kubernetes_endpoint 4 | } -------------------------------------------------------------------------------- /examples/data-sources/hcp_consul_agent_helm_config/variables.tf: -------------------------------------------------------------------------------- 1 | variable "cluster_id" { 2 | description = "The ID of the HCP Consul cluster." 3 | type = string 4 | } 5 | 6 | variable "kubernetes_endpoint" { 7 | description = "The FQDN of the Kubernetes API." 8 | type = string 9 | } -------------------------------------------------------------------------------- /examples/data-sources/hcp_consul_agent_kubernetes_secret/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_consul_agent_kubernetes_secret" "test" { 2 | cluster_id = var.cluster_id 3 | } 4 | 5 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_consul_agent_kubernetes_secret/variables.tf: -------------------------------------------------------------------------------- 1 | variable "cluster_id" { 2 | description = "The ID of the HCP Consul cluster." 3 | type = string 4 | } -------------------------------------------------------------------------------- /examples/data-sources/hcp_consul_cluster/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_consul_cluster" "example" { 2 | cluster_id = var.cluster_id 3 | } 4 | 5 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_consul_cluster/variables.tf: -------------------------------------------------------------------------------- 1 | variable "cluster_id" { 2 | description = "The ID of the HCP Consul cluster." 3 | type = string 4 | } 5 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_consul_versions/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_consul_versions" "default" {} -------------------------------------------------------------------------------- /examples/data-sources/hcp_group/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_group" "example" { 2 | resource_name = var.resource_name 3 | } 4 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_hvn/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_hvn" "example" { 2 | hvn_id = var.hvn_id 3 | } 4 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_hvn/variables.tf: -------------------------------------------------------------------------------- 1 | variable "hvn_id" { 2 | description = "The ID of the HCP HVN." 3 | type = string 4 | } -------------------------------------------------------------------------------- /examples/data-sources/hcp_hvn_peering_connection/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_hvn_peering_connection" "test" { 2 | peering_id = var.peering_id 3 | hvn_1 = var.hvn_1 4 | } 5 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_hvn_peering_connection/variables.tf: -------------------------------------------------------------------------------- 1 | variable "peering_id" { 2 | description = "The ID of the HVN peering connection." 3 | type = string 4 | } 5 | 6 | variable "hvn_1" { 7 | description = "The unique URL of one of the HVNs being peered." 8 | type = string 9 | } 10 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_hvn_route/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_hvn_route" "example" { 2 | hvn_link = var.hvn_link 3 | destination_cidr = var.hvn_route_id 4 | } 5 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_hvn_route/variables.tf: -------------------------------------------------------------------------------- 1 | variable "hvn_link" { 2 | description = "The `self_link` of the HashiCorp Virtual Network (HVN)." 3 | type = string 4 | } 5 | 6 | variable "hvn_route_id" { 7 | description = "The ID of the HVN route ID." 8 | type = string 9 | } 10 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_iam_policy/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_iam_policy" "example" { 2 | bindings = [ 3 | { 4 | role = "roles/admin" 5 | principals = [ 6 | "example-user-id-1", 7 | "example-group-id-1", 8 | "example-sp-1" 9 | ] 10 | }, 11 | { 12 | role = "roles/contributor" 13 | principals = [ 14 | "example-user-id-2", 15 | "example-group-id-2", 16 | ] 17 | }, 18 | { 19 | role = "roles/secrets.app-secret-reader" 20 | principals = [ 21 | "example-sp-3" 22 | ] 23 | }, 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_organization/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_organization" "example" { 2 | } 3 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_packer_artifact/data-source-alt.tf: -------------------------------------------------------------------------------- 1 | data "hcp_packer_artifact" "ubuntu-east" { 2 | bucket_name = "hardened-ubuntu-16-04" 3 | channel_name = "production" 4 | platform = "aws" 5 | region = "us-east-1" 6 | } 7 | 8 | output "packer-registry-ubuntu-east-1" { 9 | value = data.hcp_packer_artifact.ubuntu-east.external_identifier 10 | } 11 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_packer_bucket_names/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_packer_bucket_names" "all" {} 2 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_packer_run_task/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_packer_run_task" "registry" {} 2 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_packer_version/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_packer_version" "hardened-source" { 2 | bucket_name = "hardened-ubuntu-16-04" 3 | channel_name = "dev" 4 | } -------------------------------------------------------------------------------- /examples/data-sources/hcp_project/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_project" "example" { 2 | project = var.project_id 3 | } 4 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_service_principal/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_service_principal" "example" { 2 | resource_name = var.service_principal 3 | } 4 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_user_principal/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_user_principal" "example" { 2 | user_id = var.example_user_id 3 | } 4 | 5 | data "hcp_user_principal" "example" { 6 | email = var.example_email 7 | } 8 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_vault_cluster/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_vault_cluster" "example" { 2 | cluster_id = var.cluster_id 3 | } -------------------------------------------------------------------------------- /examples/data-sources/hcp_vault_secrets_app/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_vault_secrets_app" "example" { 2 | app_name = "example-vault-secrets-app" 3 | } 4 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_vault_secrets_dynamic_secret/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_vault_secrets_dynamic_secret" "example" { 2 | app_name = "example-vault-secrets-app" 3 | secret_name = "my_secret" 4 | } 5 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_vault_secrets_rotating_secret/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_vault_secrets_rotating_secret" "example" { 2 | app_name = "example-vault-secrets-app" 3 | secret_name = "my_secret" 4 | } 5 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_vault_secrets_secret/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_vault_secrets_secret" "example" { 2 | app_name = "example-vault-secrets-app" 3 | secret_name = "my_secret" 4 | } 5 | -------------------------------------------------------------------------------- /examples/data-sources/hcp_waypoint_template/data-source.tf: -------------------------------------------------------------------------------- 1 | data "hcp_waypoint_template" "example" { 2 | name = var.waypoint_template 3 | } 4 | -------------------------------------------------------------------------------- /examples/guides/auth/_config.tf: -------------------------------------------------------------------------------- 1 | // Credentials can be set explicitly or via the environment variables HCP_CLIENT_ID and HCP_CLIENT_SECRET 2 | provider "hcp" { 3 | client_id = "service-principal-key-client-id" 4 | client_secret = "service-principal-key-client-secret" 5 | } -------------------------------------------------------------------------------- /examples/guides/auth/_config_no_clients.tf: -------------------------------------------------------------------------------- 1 | // If no credentials are set, a user session can be obtained through browser login. 2 | provider "hcp" {} -------------------------------------------------------------------------------- /examples/guides/consul_cluster_federation/_config.tf: -------------------------------------------------------------------------------- 1 | provider "hcp" {} -------------------------------------------------------------------------------- /examples/guides/consul_cluster_federation/main.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_hvn" "primary" { 2 | hvn_id = var.primary_hvn_id 3 | cloud_provider = var.cloud_provider 4 | region = var.primary_region 5 | } 6 | 7 | resource "hcp_hvn" "secondary" { 8 | hvn_id = var.secondary_hvn_id 9 | cloud_provider = var.cloud_provider 10 | region = var.secondary_region 11 | } 12 | 13 | resource "hcp_consul_cluster" "primary" { 14 | hvn_id = hcp_hvn.primary.hvn_id 15 | cluster_id = var.primary_cluster_id 16 | tier = "development" 17 | } 18 | 19 | resource "hcp_consul_cluster" "secondary" { 20 | hvn_id = hcp_hvn.secondary.hvn_id 21 | cluster_id = var.secondary_cluster_id 22 | tier = "development" 23 | primary_link = hcp_consul_cluster.primary.self_link 24 | auto_hvn_to_hvn_peering = true 25 | } -------------------------------------------------------------------------------- /examples/guides/consul_cluster_root_token/_config.tf: -------------------------------------------------------------------------------- 1 | provider "hcp" {} -------------------------------------------------------------------------------- /examples/guides/consul_cluster_root_token/main.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_hvn" "example" { 2 | hvn_id = var.hvn_id 3 | cloud_provider = "aws" 4 | region = "us-west-2" 5 | } 6 | 7 | // The root_token_accessor_id and root_token_secret_id properties will 8 | // no longer be valid after the new root token is created below 9 | resource "hcp_consul_cluster" "example" { 10 | hvn_id = hcp_hvn.example.hvn_id 11 | cluster_id = var.cluster_id 12 | tier = "development" 13 | } 14 | 15 | // Create a new ACL root token 16 | resource "hcp_consul_cluster_root_token" "example" { 17 | cluster_id = hcp_consul_cluster.example.id 18 | } 19 | -------------------------------------------------------------------------------- /examples/guides/consul_cluster_root_token/variables.tf: -------------------------------------------------------------------------------- 1 | variable "hvn_id" { 2 | description = "The ID of the HCP HVN." 3 | type = string 4 | } 5 | 6 | variable "cluster_id" { 7 | description = "The ID of the HCP Consul cluster." 8 | type = string 9 | } -------------------------------------------------------------------------------- /examples/guides/hvn_route_migration_guide/before-peering.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_hvn" "hvn" { 2 | hvn_id = "prod-hvn" 3 | region = "us-west-2" 4 | cloud_provider = "aws" 5 | } 6 | 7 | resource "hcp_aws_network_peering" "peering" { 8 | hvn_id = hcp_hvn.hvn.hvn_id 9 | peer_vpc_id = "vpc-845f29fc" 10 | peer_account_id = "572816266891" 11 | peer_vpc_region = "us-west-2" 12 | peer_vpc_cidr_block = "172.31.0.0/16" 13 | } -------------------------------------------------------------------------------- /examples/guides/hvn_route_migration_guide/before-tgw.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_hvn" "hvn" { 2 | hvn_id = "prod-hvn" 3 | region = "us-west-2" 4 | cloud_provider = "aws" 5 | } 6 | 7 | resource "hcp_aws_transit_gateway_attachment" "prod" { 8 | hvn_id = hcp_hvn.hvn.hvn_id 9 | transit_gateway_attachment_id = "prod-tgw-attachment" 10 | transit_gateway_id = "tgw-0ee94b1a1167cf89d" 11 | resource_share_arn = "arn:aws:ram:us-west-2:..." 12 | destination_cidrs = ["10.1.0.0/24", "10.2.0.0/24"] 13 | } -------------------------------------------------------------------------------- /examples/guides/multi_project_migration_guide/no-project.tf: -------------------------------------------------------------------------------- 1 | provider "hcp" {} 2 | 3 | resource "hcp_hvn" "test" { 4 | hvn_id = "test-hvn" 5 | cloud_provider = "aws" 6 | region = "us-west-2" 7 | } 8 | -------------------------------------------------------------------------------- /examples/guides/multi_project_migration_guide/project-on-provider.tf: -------------------------------------------------------------------------------- 1 | provider "hcp" { 2 | project_id = "f709ec73-55d4-46d8-897d-816ebba28778" 3 | } 4 | 5 | resource "hcp_hvn" "test" { 6 | hvn_id = "test-hvn" 7 | cloud_provider = "aws" 8 | region = "us-west-2" 9 | } 10 | -------------------------------------------------------------------------------- /examples/guides/multi_project_migration_guide/project-on-resource.tf: -------------------------------------------------------------------------------- 1 | provider "hcp" {} 2 | 3 | resource "hcp_hvn" "test" { 4 | hvn_id = "test-hvn" 5 | project_id = "f709ec73-55d4-46d8-897d-816ebba28778" 6 | cloud_provider = "aws" 7 | region = "us-west-2" 8 | } 9 | 10 | resource "hcp_consul_cluster" "consul_cluster" { 11 | cluster_id = "test-cluster" 12 | hvn_id = hcp_hvn.test.hvn_id 13 | project_id = "0f8c263e-8eb4-4a7f-a0cc-7e476afb9fd2" 14 | tier = "development" 15 | } -------------------------------------------------------------------------------- /examples/guides/multi_project_migration_guide/resource-override-provider.tf: -------------------------------------------------------------------------------- 1 | provider "hcp" { 2 | project_id = "f709ec73-55d4-46d8-897d-816ebba28778" 3 | } 4 | 5 | # This HVN will be created in the project "0f8c263e-8eb4-4a7f-a0cc-7e476afb9fd2" 6 | resource "hcp_hvn" "test" { 7 | hvn_id = "test-hvn" 8 | project_id = "0f8c263e-8eb4-4a7f-a0cc-7e476afb9fd2" 9 | cloud_provider = "aws" 10 | region = "us-west-2" 11 | } 12 | -------------------------------------------------------------------------------- /examples/guides/packer_bucket_rbac/iam_binding_resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_service_principal" "my-sp" { 2 | name = "my-sp" 3 | } 4 | 5 | resource "hcp_packer_bucket" "production" { 6 | name = "production" 7 | } 8 | 9 | resource "hcp_packer_bucket_iam_binding" "example" { 10 | resource_name = hcp_packer_bucket.production.resource_name 11 | principal_id = hcp_service_principal.my-sp.resource_id 12 | role = "roles/contributor" 13 | } 14 | -------------------------------------------------------------------------------- /examples/guides/packer_bucket_rbac/iam_policy_resource.tf: -------------------------------------------------------------------------------- 1 | data "hcp_iam_policy" "mypolicy" { 2 | bindings = [ 3 | { 4 | role = "roles/contributor" 5 | principals = [ 6 | "user-principal-id-1", 7 | "service-principal-id-1", 8 | ] 9 | }, 10 | ] 11 | } 12 | 13 | resource "hcp_packer_bucket" "production" { 14 | name = "production" 15 | } 16 | 17 | resource "hcp_packer_bucket_iam_policy" "example" { 18 | resource_name = hcp_packer_bucket.production.resource_name 19 | policy_data = data.hcp_iam_policy.mypolicy.policy_data 20 | } 21 | -------------------------------------------------------------------------------- /examples/guides/packer_channel_management/assign_latest.tf: -------------------------------------------------------------------------------- 1 | data "hcp_packer_version" "alpine_latest" { 2 | bucket_name = "alpine" 3 | channel_name = "latest" 4 | } 5 | 6 | resource "hcp_packer_channel" "alpine_advanced" { 7 | name = "advanced" 8 | bucket_name = data.hcp_packer_version.alpine_latest.bucket_name 9 | } 10 | 11 | resource "hcp_packer_channel_assignment" "alpine_advanced" { 12 | bucket_name = hcp_packer_channel.alpine_advanced.bucket_name 13 | channel_name = hcp_packer_channel.alpine_advanced.name 14 | version_fingerprint = data.hcp_packer_version.alpine_latest.fingerprint 15 | } 16 | -------------------------------------------------------------------------------- /examples/guides/packer_channel_management/bucket_names/main.tf: -------------------------------------------------------------------------------- 1 | data "hcp_packer_bucket_names" "all" {} 2 | 3 | resource "hcp_packer_channel" "release" { 4 | for_each = data.hcp_packer_bucket_names.all.names 5 | 6 | name = "release" 7 | bucket_name = each.key 8 | } 9 | -------------------------------------------------------------------------------- /examples/guides/packer_channel_management/main.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_packer_channel" "advanced" { 2 | name = "advanced" 3 | bucket_name = "alpine" 4 | } 5 | 6 | resource "hcp_packer_channel_assignment" "advanced" { 7 | bucket_name = hcp_packer_channel.advanced.bucket_name 8 | channel_name = hcp_packer_channel.advanced.name 9 | version_fingerprint = "01H1ZMW0Q2W6FT4FK27FQJCFG7" 10 | } 11 | -------------------------------------------------------------------------------- /examples/guides/packer_run_tasks_with_terraform/data.tf: -------------------------------------------------------------------------------- 1 | data "hcp_packer_run_task" "registry" {} 2 | 3 | resource "tfe_organization_run_task" "hcp_packer" { 4 | name = "HCP_Packer" 5 | description = "Ensure usage of compliant images from HCP Packer." 6 | enabled = true 7 | 8 | url = data.hcp_packer_run_task.registry.endpoint_url 9 | hmac_key = data.hcp_packer_run_task.registry.hmac_key 10 | } -------------------------------------------------------------------------------- /examples/guides/packer_run_tasks_with_terraform/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_packer_run_task" "registry" { 2 | regenerate_hmac = false 3 | } 4 | 5 | resource "tfe_organization_run_task" "hcp_packer" { 6 | name = "HCP_Packer" 7 | description = "Ensure usage of compliant images from HCP Packer." 8 | enabled = true 9 | 10 | url = hcp_packer_run_task.registry.endpoint_url 11 | hmac_key = hcp_packer_run_task.registry.hmac_key 12 | } -------------------------------------------------------------------------------- /examples/guides/peering_aws/_config.tf: -------------------------------------------------------------------------------- 1 | provider "hcp" {} 2 | 3 | provider "aws" { 4 | region = var.peer_vpc_region 5 | } 6 | -------------------------------------------------------------------------------- /examples/guides/peering_aws/variables.tf: -------------------------------------------------------------------------------- 1 | variable "hvn_id" { 2 | description = "The ID of the HCP HVN." 3 | type = string 4 | } 5 | 6 | variable "cluster_id" { 7 | description = "The ID of the HCP Consul cluster." 8 | type = string 9 | } 10 | 11 | variable "region" { 12 | description = "The region of the HCP HVN and peer VPC." 13 | type = string 14 | } 15 | 16 | variable "peer_id" { 17 | description = "The ID to use for the HCP network peering." 18 | type = string 19 | } 20 | 21 | variable "route_id" { 22 | description = "The ID to use for the HCP HVN route." 23 | type = string 24 | } 25 | -------------------------------------------------------------------------------- /examples/guides/peering_azure/_config.tf: -------------------------------------------------------------------------------- 1 | provider "azurerm" { 2 | features {} 3 | } 4 | 5 | provider "azuread" {} 6 | 7 | provider "hcp" {} 8 | -------------------------------------------------------------------------------- /examples/guides/peering_azure_gateway/_config.tf: -------------------------------------------------------------------------------- 1 | provider "azurerm" { 2 | features {} 3 | } 4 | 5 | provider "azuread" {} 6 | 7 | provider "hcp" {} 8 | -------------------------------------------------------------------------------- /examples/guides/peering_azure_nva/_config.tf: -------------------------------------------------------------------------------- 1 | provider "azurerm" { 2 | features {} 3 | } 4 | 5 | provider "azuread" {} 6 | 7 | provider "hcp" {} 8 | -------------------------------------------------------------------------------- /examples/guides/scaling/dev-init.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_hvn" "example" { 2 | hvn_id = "hvn" 3 | cloud_provider = "aws" 4 | region = "us-west-2" 5 | cidr_block = "172.25.16.0/20" 6 | } 7 | 8 | resource "hcp_vault_cluster" "example" { 9 | cluster_id = "vault-cluster" 10 | hvn_id = hcp_hvn.example.hvn_id 11 | # default tier is “dev” 12 | } 13 | -------------------------------------------------------------------------------- /examples/guides/scaling/scale-to-standard.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_hvn" "example" { 2 | hvn_id = "hvn" 3 | cloud_provider = "aws" 4 | region = "us-west-2" 5 | cidr_block = "172.25.16.0/20" 6 | } 7 | 8 | resource "hcp_vault_cluster" "example" { 9 | cluster_id = "vault-cluster" 10 | hvn_id = hcp_hvn.example.hvn_id 11 | tier = "standard_medium" 12 | } 13 | -------------------------------------------------------------------------------- /examples/guides/snapshots/_config.tf: -------------------------------------------------------------------------------- 1 | provider "hcp" {} -------------------------------------------------------------------------------- /examples/guides/snapshots/main.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_hvn" "example" { 2 | hvn_id = var.hvn_id 3 | cloud_provider = var.cloud_provider 4 | region = var.region 5 | } 6 | 7 | resource "hcp_consul_cluster" "example" { 8 | hvn_id = hcp_hvn.example.hvn_id 9 | cluster_id = var.cluster_id 10 | tier = "development" 11 | } 12 | 13 | resource "hcp_consul_snapshot" "example" { 14 | cluster_id = hcp_consul_cluster.example.cluster_id 15 | snapshot_name = var.snapshot_name 16 | } -------------------------------------------------------------------------------- /examples/guides/snapshots/variables.tf: -------------------------------------------------------------------------------- 1 | variable "hvn_id" { 2 | description = "The ID of the HCP HVN." 3 | type = string 4 | } 5 | 6 | variable "cluster_id" { 7 | description = "The ID of the HCP Consul cluster." 8 | type = string 9 | } 10 | 11 | variable "region" { 12 | description = "The region of the HCP HVN and Consul cluster." 13 | type = string 14 | } 15 | 16 | variable "cloud_provider" { 17 | description = "The cloud provider of the HCP HVN and Consul cluster." 18 | type = string 19 | } 20 | 21 | variable "snapshot_name" { 22 | description = "The name of the Consul snapshot." 23 | type = string 24 | } -------------------------------------------------------------------------------- /examples/guides/vault_cluster_admin_token/main.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_vault_cluster" "example_vault_cluster" { 2 | hvn_id = hcp_hvn.example_hvn.hvn_id 3 | cluster_id = "hcp-tf-example-vault-cluster" 4 | } 5 | 6 | resource "hcp_vault_cluster_admin_token" "example_vault_admin_token" { 7 | cluster_id = hcp_vault_cluster.example_vault_cluster.cluster_id 8 | } -------------------------------------------------------------------------------- /examples/guides/vault_perf_replication/replication.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_hvn" "primary_network" { 2 | hvn_id = "hvn1" 3 | cloud_provider = "aws" 4 | region = "us-west-2" 5 | cidr_block = "172.25.16.0/20" 6 | } 7 | 8 | resource "hcp_vault_cluster" "primary" { 9 | cluster_id = "vault-cluster" 10 | hvn_id = hcp_hvn.primary_network.hvn_id 11 | tier = "plus_medium" 12 | } 13 | 14 | resource "hcp_hvn" "secondary_network" { 15 | hvn_id = "hvn2" 16 | cloud_provider = "aws" 17 | region = "eu-central-1" 18 | cidr_block = "172.26.16.0/20" 19 | } 20 | 21 | resource "hcp_vault_cluster" "secondary" { 22 | cluster_id = "vault-cluster" 23 | hvn_id = hcp_hvn.secondary_network.hvn_id 24 | tier = hcp_vault_cluster.primary.tier 25 | primary_link = hcp_vault_cluster.primary.self_link 26 | paths_filter = ["path/a", "path/b"] 27 | } 28 | -------------------------------------------------------------------------------- /examples/guides/vault_secrets/data_source_vault_secrets_app.tf: -------------------------------------------------------------------------------- 1 | data "hcp_vault_secrets_app" "my_app" { 2 | app_name = "example-vault-secrets-app" 3 | } 4 | 5 | resource "example_resource" "example" { 6 | example_attr = data.hcp_vault_secrets_app.my_app.secrets["my_secret_key"] 7 | } 8 | 9 | -------------------------------------------------------------------------------- /examples/guides/vault_secrets/data_source_vault_secrets_rotating_secret.tf: -------------------------------------------------------------------------------- 1 | data "hcp_vault_secrets_rotating_secret" "secret_data" { 2 | app_name = "example-vault-secrets-app" 3 | secret_name = "my_secret" 4 | } 5 | 6 | resource "example_resource" "example" { 7 | example_attr1 = data.hcp_vault_secrets_rotating_secret.secret_data.secret_values["username"] 8 | example_attr2 = data.hcp_vault_secrets_rotating_secret.secret_data.secret_values["password"] 9 | } 10 | 11 | -------------------------------------------------------------------------------- /examples/guides/vault_secrets/data_source_vault_secrets_secret.tf: -------------------------------------------------------------------------------- 1 | data "hcp_vault_secrets_secret" "secret_data" { 2 | app_name = "example-vault-secrets-app" 3 | secret_name = "my_secret" 4 | } 5 | 6 | resource "example_resource" "example" { 7 | example_attr = data.hcp_vault_secrets_secret.secret_data.secret_value 8 | } 9 | 10 | -------------------------------------------------------------------------------- /examples/guides/vault_secrets/resourceapp.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_vault_secrets_app" "example" { 2 | app_name = "example-app-name" 3 | description = "My new app!" 4 | } -------------------------------------------------------------------------------- /examples/guides/vault_secrets/resources.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_vault_secrets_app" "example" { 2 | app_name = "example-app-name" 3 | description = "My new app!" 4 | } 5 | resource "hcp_vault_secrets_secret" "secret-example" { 6 | app_name = hcp.hcp_vault_secrets_app.example.app_name 7 | secret_name = "a-new-secret" 8 | secret_value = "a test secret" 9 | } -------------------------------------------------------------------------------- /examples/provider/variables.tf: -------------------------------------------------------------------------------- 1 | variable "region" { 2 | description = "The region of the HCP HVN and AWS VPC." 3 | type = string 4 | } 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_aws_network_peering/import.sh: -------------------------------------------------------------------------------- 1 | # Using an explicit project ID, the import ID is: 2 | # {project_id}:{hvn_id}:{peering_id} 3 | terraform import hcp_aws_network_peering.peer f709ec73-55d4-46d8-897d-816ebba28778:main-hvn:11eb60b3-d4ec-5eed-aacc-0242ac120015 4 | # Using the provider-default project ID, the import ID is: 5 | # {hvn_id}:{peering_id} 6 | terraform import hcp_aws_network_peering.peer main-hvn:11eb60b3-d4ec-5eed-aacc-0242ac120015 7 | -------------------------------------------------------------------------------- /examples/resources/hcp_aws_transit_gateway_attachment/import.sh: -------------------------------------------------------------------------------- 1 | # Using an explicit project ID, the import ID is: 2 | # {project_id}:{hvn_id}:{transit_gateway_attachment_id} 3 | terraform import hcp_aws_transit_gateway_attachment.example f709ec73-55d4-46d8-897d-816ebba28778:main-hvn:example-tgw-attachment 4 | # Using the provider-default project ID, the import ID is: 5 | # {hvn_id}:{transit_gateway_attachment_id} 6 | terraform import hcp_aws_transit_gateway_attachment.example main-hvn:example-tgw-attachment 7 | -------------------------------------------------------------------------------- /examples/resources/hcp_azure_peering_connection/import.sh: -------------------------------------------------------------------------------- 1 | # Using an explicit project ID, the import ID is: 2 | # {project_id}:{hvn_id}:{peering_id} 3 | terraform import hcp_azure_peering_connection.peer f709ec73-55d4-46d8-897d-816ebba28778:main-hvn:199e7e96-4d5f-4456-91f3-b6cc71f1e561 4 | # Using the provider-default project ID, the import ID is: 5 | # {hvn_id}:{peering_id} 6 | terraform import hcp_azure_peering_connection.peer main-hvn:199e7e96-4d5f-4456-91f3-b6cc71f1e561 7 | -------------------------------------------------------------------------------- /examples/resources/hcp_boundary_cluster/import.sh: -------------------------------------------------------------------------------- 1 | # Using an explicit project ID, the import ID is: 2 | # {project_id}:{cluster_id} 3 | terraform import hcp_boundary_cluster.example f709ec73-55d4-46d8-897d-816ebba28778:boundary-cluster 4 | # Using the provider-default project ID, the import ID is: 5 | # {cluster_id} 6 | terraform import hcp_boundary_cluster.example boundary-cluster 7 | -------------------------------------------------------------------------------- /examples/resources/hcp_boundary_cluster/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_boundary_cluster" "example" { 2 | cluster_id = "boundary-cluster" 3 | username = "test-user" 4 | password = "Password123!" 5 | maintenance_window_config { 6 | day = "TUESDAY" 7 | start = 2 8 | end = 12 9 | upgrade_type = "SCHEDULED" 10 | } 11 | auth_token_time_to_live = "36h0m0s" 12 | auth_token_time_to_stale = "12h0m0s" 13 | } 14 | -------------------------------------------------------------------------------- /examples/resources/hcp_consul_cluster/import.sh: -------------------------------------------------------------------------------- 1 | # Using an explicit project ID, the import ID is: 2 | # {project_id}:{cluster_id} 3 | terraform import hcp_consul_cluster.example f709ec73-55d4-46d8-897d-816ebba28778:consul-cluster 4 | # Using the provider-default project ID, the import ID is: 5 | # {cluster_id} 6 | terraform import hcp_consul_cluster.example consul-cluster 7 | -------------------------------------------------------------------------------- /examples/resources/hcp_consul_cluster/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_hvn" "example" { 2 | hvn_id = "hvn" 3 | cloud_provider = "aws" 4 | region = "us-west-2" 5 | cidr_block = "172.25.16.0/20" 6 | } 7 | 8 | resource "hcp_consul_cluster" "example" { 9 | cluster_id = "consul-cluster" 10 | hvn_id = hcp_hvn.example.hvn_id 11 | tier = "development" 12 | } 13 | 14 | -------------------------------------------------------------------------------- /examples/resources/hcp_consul_cluster_root_token/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_consul_cluster_root_token" "example" { 2 | cluster_id = "consul-cluster" 3 | } -------------------------------------------------------------------------------- /examples/resources/hcp_consul_snapshot/resource.tf: -------------------------------------------------------------------------------- 1 | // Note: Snapshots currently have a retention policy of 30 days. After that time, any Terraform 2 | // state refresh will note that a new snapshot resource will be created. 3 | resource "hcp_consul_snapshot" "example" { 4 | cluster_id = "consul-cluster" 5 | snapshot_name = "my-snapshot" 6 | } -------------------------------------------------------------------------------- /examples/resources/hcp_group/import.sh: -------------------------------------------------------------------------------- 1 | # Group can be imported by specifying the group resource name 2 | terraform import hcp_group.example "iam/organization/org_id/group/group-name" 3 | -------------------------------------------------------------------------------- /examples/resources/hcp_group/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_group" "example" { 2 | display_name = "example-group" 3 | description = "My new group!" 4 | } 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_group_iam_binding/resource.tf: -------------------------------------------------------------------------------- 1 | # Fetch a user from HCP 2 | data "hcp_user_principal" "example" { 3 | email = "user@example.com" 4 | } 5 | 6 | # Lookup an existing group in HCP 7 | data "hcp_group" "example" { 8 | resource_name = "group-name" 9 | } 10 | 11 | # Add members to the group 12 | resource "hcp_group_members" "example" { 13 | group = data.hcp_group.example.resource_name 14 | members = [ 15 | data.hcp_user_principal.example.user_id 16 | ] 17 | } 18 | 19 | # Add an IAM binding to a group 20 | resource "hcp_group_iam_binding" "example" { 21 | name = data.hcp_group.example.resource_name 22 | principal_id = data.hcp_user_principal.example.user_id 23 | role = "roles/iam.group-manager" 24 | } -------------------------------------------------------------------------------- /examples/resources/hcp_group_iam_policy/import.sh: -------------------------------------------------------------------------------- 1 | # A Group's IAM Policy can be imported by specifying the group's resource name 2 | terraform import hcp_group_iam_policy.example existing-group 3 | -------------------------------------------------------------------------------- /examples/resources/hcp_group_members/import.sh: -------------------------------------------------------------------------------- 1 | # Group Members can be imported by specifying the group resource name 2 | terraform import hcp_group_members.example "iam/organization/org_id/group/group-name" 3 | -------------------------------------------------------------------------------- /examples/resources/hcp_group_members/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_group_members" "example" { 2 | group = hcp_group.example.resource_name 3 | members = [ 4 | hcp_user_principal.example1.user_id, 5 | hcp_user_principal.example2.user_id, 6 | ] 7 | } 8 | -------------------------------------------------------------------------------- /examples/resources/hcp_hvn/import.sh: -------------------------------------------------------------------------------- 1 | # Using an explicit project ID, the import ID is: 2 | # {project_id}:{hvn_id} 3 | terraform import hcp_hvn.example f709ec73-55d4-46d8-897d-816ebba28778:main-hvn 4 | # Using the provider-default project ID, the import ID is: 5 | # {hvn_id} 6 | terraform import hcp_hvn.example main-hvn 7 | -------------------------------------------------------------------------------- /examples/resources/hcp_hvn/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_hvn" "example" { 2 | hvn_id = "main-hvn" 3 | cloud_provider = "aws" 4 | region = "us-west-2" 5 | cidr_block = "172.25.16.0/20" 6 | } 7 | -------------------------------------------------------------------------------- /examples/resources/hcp_hvn_peering_connection/import.sh: -------------------------------------------------------------------------------- 1 | # Only the first HVN ID is required (hvn_1_id), HVN 2 will be populated after import. 2 | 3 | # Using an explicit project ID, the import ID is: 4 | # {project_id}:{hvn_1_id}:{peering_id} 5 | terraform import hcp_hvn_peering_connection.peer_1 f709ec73-55d4-46d8-897d-816ebba28778:hvn-1:peer-1 6 | # Using the provider-default project ID, the import ID is: 7 | # {hvn_1_id}:{peering_id} 8 | terraform import hcp_hvn_peering_connection.peer_1 hvn-1:peer-1 9 | -------------------------------------------------------------------------------- /examples/resources/hcp_hvn_peering_connection/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_hvn" "hvn_1" { 2 | hvn_id = "hvn-1" 3 | cloud_provider = "aws" 4 | region = "us-west-2" 5 | cidr_block = "172.25.16.0/20" 6 | } 7 | 8 | resource "hcp_hvn" "hvn_2" { 9 | hvn_id = "hvn-2" 10 | cloud_provider = "aws" 11 | region = "us-west-2" 12 | cidr_block = "172.18.16.0/20" 13 | } 14 | 15 | resource "hcp_hvn_peering_connection" "peer_1" { 16 | hvn_1 = hcp_hvn.hvn_1.self_link 17 | hvn_2 = hcp_hvn.hvn_2.self_link 18 | } 19 | -------------------------------------------------------------------------------- /examples/resources/hcp_hvn_route/import.sh: -------------------------------------------------------------------------------- 1 | # Using an explicit project ID, the import ID is: 2 | # {project_id}:{hvn_id}:{hvn_route_id} 3 | terraform import hcp_hvn_route.example f709ec73-55d4-46d8-897d-816ebba28778:main-hvn:example-hvn-route 4 | # Using the provider-default project ID, the import ID is: 5 | # {hvn_id}:{hvn_route_id} 6 | terraform import hcp_hvn_route.example main-hvn:example-hvn-route 7 | -------------------------------------------------------------------------------- /examples/resources/hcp_iam_workload_identity_provider/import.sh: -------------------------------------------------------------------------------- 1 | # Workload identity providers can be imported by specifying the resource name 2 | terraform import hcp_iam_workload_identity_provider.example iam/project/840e3701-55b6-4f86-8c17-b1fe397303c5/service-principal/my-app-runtime/workload-identity-provider/aws 3 | -------------------------------------------------------------------------------- /examples/resources/hcp_iam_workload_identity_provider/resource_aws.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_service_principal" "workload_sp" { 2 | name = "my-app-runtime" 3 | } 4 | 5 | resource "hcp_iam_workload_identity_provider" "example" { 6 | name = "aws-example" 7 | service_principal = hcp_service_principal.workload_sp.resource_name 8 | description = "Allow my-app on AWS to act as my-app-runtime service principal" 9 | 10 | aws { 11 | # Only allow workloads from this AWS Account to exchange identity 12 | account_id = "123456789012" 13 | } 14 | 15 | # Only allow workload's running with the correct AWS IAM Role 16 | conditional_access = "aws.arn matches `^arn:aws:sts::123456789012:assumed-role/my-app-role`" 17 | } 18 | -------------------------------------------------------------------------------- /examples/resources/hcp_iam_workload_identity_provider/resource_gcp.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_service_principal" "workload_sp" { 2 | name = "my-app-runtime" 3 | } 4 | 5 | resource "hcp_iam_workload_identity_provider" "example" { 6 | name = "gcp-example" 7 | service_principal = hcp_service_principal.workload_sp.resource_name 8 | description = "Allow my-app on GCP to act as my-app-runtime service principal" 9 | 10 | oidc { 11 | issuer_uri = "https://accounts.google.com" 12 | } 13 | 14 | # Only allow workload's that are assigned the expected service account ID 15 | # GCP will set the subject to that of the service account associated with the 16 | # workload. 17 | conditional_access = "jwt_claims.sub == `107517467455664443766`" 18 | } 19 | -------------------------------------------------------------------------------- /examples/resources/hcp_log_streaming_destination/resource_cloudwatch.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_log_streaming_destination" "example_cloudwatch" { 2 | name = "example_cloudwatch" 3 | cloudwatch = { 4 | external_id = "an-external-id" 5 | region = "us-east-1" 6 | role_arn = "arn:aws:iam::111111111:role/hcp-log-streaming" 7 | log_group_name = "a-log-group-name" 8 | } 9 | } -------------------------------------------------------------------------------- /examples/resources/hcp_log_streaming_destination/resource_datadog.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_log_streaming_destination" "example_datadog" { 2 | name = "example_datadog" 3 | datadog = { 4 | endpoint = "https://datadog-api.com" 5 | api_key = "API_KEY_VALUE_HERE" 6 | application_key = "APPLICATION_VALUE_HERE" 7 | } 8 | } -------------------------------------------------------------------------------- /examples/resources/hcp_log_streaming_destination/resource_splunk_cloud.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_log_streaming_destination" "example_splunk_cloud" { 2 | name = "example_splunk_cloud" 3 | splunk_cloud = { 4 | endpoint = "https://http-inputs-tenant.splunkcloud.com:443/services/collector/event" 5 | token = "someSuperSecretToken" 6 | } 7 | } -------------------------------------------------------------------------------- /examples/resources/hcp_notifications_webhook/import.sh: -------------------------------------------------------------------------------- 1 | # HCP Webhook can be imported by specifying the webhook resource name 2 | # The webhook resource name is in the format webhook/project/{project_id}/geo/us/webhook/{webhook_name} 3 | terraform import hcp_notifications_webhook.example webhook/project/840e3701-55b6-4f86-8c17-b1fe397303c5/geo/us/webhook/example-webhook 4 | 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_notifications_webhook/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_notifications_webhook" "example" { 2 | name = "example-webhook" 3 | description = "Notify for all of the events for all Packer artifact versions existing in the project." 4 | 5 | config = { 6 | url = "https://example.com" 7 | } 8 | 9 | subscriptions = [ 10 | { 11 | events = [ 12 | { 13 | actions = ["*"] 14 | source = "hashicorp.packer.version" 15 | } 16 | ] 17 | } 18 | ] 19 | } -------------------------------------------------------------------------------- /examples/resources/hcp_organization_iam_binding/resource.tf: -------------------------------------------------------------------------------- 1 | data "hcp_organization" "example_org" {} 2 | 3 | resource "hcp_service_principal" "sp" { 4 | name = "example-sp" 5 | parent = data.hcp_organization.example_org.resource_name 6 | } 7 | 8 | resource "hcp_organization_iam_binding" "example" { 9 | principal_id = hcp_service_principal.sp.resource_id 10 | role = "roles/contributor" 11 | } 12 | -------------------------------------------------------------------------------- /examples/resources/hcp_organization_iam_policy/import.sh: -------------------------------------------------------------------------------- 1 | # No import ID is needed. The organization is determined by the provider 2 | # configuration. 3 | terraform import hcp_organization_iam_policy.example "" 4 | -------------------------------------------------------------------------------- /examples/resources/hcp_organization_iam_policy/resource.tf: -------------------------------------------------------------------------------- 1 | data "hcp_iam_policy" "example" { 2 | bindings = [ 3 | { 4 | role = "roles/owner" 5 | principals = [ 6 | "example-user-id-1", 7 | ] 8 | }, 9 | { 10 | role = "roles/admin" 11 | principals = [ 12 | "example-group-id-1", 13 | "example-sp-1" 14 | ] 15 | }, 16 | ] 17 | } 18 | 19 | resource "hcp_organization_iam_policy" "org_policy" { 20 | policy_data = data.hcp_iam_policy.example.policy_data 21 | } 22 | -------------------------------------------------------------------------------- /examples/resources/hcp_packer_bucket/import.sh: -------------------------------------------------------------------------------- 1 | # Using a HCP Packer Bucket Resource Name 2 | # packer/project/{project_id}/bucket/{bucket_name} 3 | terraform import hcp_packer_bucket.alpine packer/project/f709ec73-55d4-46d8-897d-816ebba28778/bucket/alpine 4 | 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_packer_bucket/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_packer_bucket" "staging" { 2 | name = "alpine" 3 | } 4 | -------------------------------------------------------------------------------- /examples/resources/hcp_packer_bucket_iam_binding/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_service_principal" "my-sp" { 2 | name = "my-sp" 3 | } 4 | 5 | resource "hcp_packer_bucket" "production" { 6 | name = "production" 7 | } 8 | 9 | resource "hcp_packer_bucket_iam_binding" "example" { 10 | resource_name = hcp_packer_bucket.production.resource_name 11 | principal_id = hcp_service_principal.my-sp.resource_id 12 | role = "roles/contributor" 13 | } 14 | -------------------------------------------------------------------------------- /examples/resources/hcp_packer_bucket_iam_policy/import.sh: -------------------------------------------------------------------------------- 1 | # Using a HCP Packer Bucket Resource Name 2 | # packer/project/{project_id}/bucket/{bucket_name} 3 | terraform import hcp_packer_bucket.alpine packer/project/f709ec73-55d4-46d8-897d-816ebba28778/bucket/alpine 4 | 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_packer_bucket_iam_policy/resource.tf: -------------------------------------------------------------------------------- 1 | data "hcp_iam_policy" "mypolicy" { 2 | bindings = [ 3 | { 4 | role = "roles/contributor" 5 | principals = [ 6 | "user-principal-id-1", 7 | "service-principal-id-1", 8 | ] 9 | }, 10 | ] 11 | } 12 | 13 | resource "hcp_packer_bucket" "production" { 14 | name = "production" 15 | } 16 | 17 | resource "hcp_packer_bucket_iam_policy" "example" { 18 | resource_name = hcp_packer_bucket.production.resource_name 19 | policy_data = data.hcp_iam_policy.mypolicy.policy_data 20 | } 21 | -------------------------------------------------------------------------------- /examples/resources/hcp_packer_channel/import.sh: -------------------------------------------------------------------------------- 1 | # Using an explicit project ID, the import ID is: 2 | # {project_id}:{bucket_name}:{channel_name} 3 | terraform import hcp_packer_channel.staging f709ec73-55d4-46d8-897d-816ebba28778:alpine:staging 4 | # Using the provider-default project ID, the import ID is: 5 | # {bucket_name}:{channel_name} 6 | terraform import hcp_packer_channel.staging alpine:staging 7 | -------------------------------------------------------------------------------- /examples/resources/hcp_packer_channel/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_packer_channel" "staging" { 2 | name = "staging" 3 | bucket_name = "alpine" 4 | } 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_packer_channel_assignment/import.sh: -------------------------------------------------------------------------------- 1 | # Using an explicit project ID, the import ID is: 2 | # {project_id}:{bucket_name}:{channel_name} 3 | terraform import hcp_packer_channel_assignment.staging f709ec73-55d4-46d8-897d-816ebba28778:alpine:staging 4 | # Using the provider-default project ID, the import ID is: 5 | # {bucket_name}:{channel_name} 6 | terraform import hcp_packer_channel_assignment.staging alpine:staging 7 | -------------------------------------------------------------------------------- /examples/resources/hcp_packer_channel_assignment/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_packer_channel_assignment" "staging" { 2 | bucket_name = "alpine" 3 | channel_name = "staging" 4 | version_fingerprint = "01H1ZMW0Q2W6FT4FK27FQJCFG7" 5 | } 6 | 7 | # To set the channel to have no assignment, use "none" as the version_fingerprint value. 8 | resource "hcp_packer_channel_assignment" "staging" { 9 | bucket_name = "alpine" 10 | channel_name = "staging" 11 | version_fingerprint = "none" 12 | } 13 | -------------------------------------------------------------------------------- /examples/resources/hcp_packer_run_task/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_packer_run_task" "registry" {} 2 | 3 | # Configuring the HMAC Key to regenerate on apply 4 | # NOTE: While `regenerate_hmac` is set to `true` the key will be regenerated on every apply. 5 | resource "hcp_packer_run_task" "registry" { 6 | regenerate_hmac = true 7 | } 8 | -------------------------------------------------------------------------------- /examples/resources/hcp_project/import.sh: -------------------------------------------------------------------------------- 1 | # Project can be imported by specifying the project id 2 | terraform import hcp_project.example 840e3701-55b6-4f86-8c17-b1fe397303c5 3 | -------------------------------------------------------------------------------- /examples/resources/hcp_project/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_project" "example" { 2 | name = "example-project" 3 | description = "My new project!" 4 | } 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_project_iam_binding/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_project" "example" { 2 | name = "example" 3 | } 4 | 5 | resource "hcp_service_principal" "sp" { 6 | name = "example-sp" 7 | parent = hcp_project.example.resource_name 8 | } 9 | 10 | resource "hcp_project_iam_binding" "example" { 11 | project_id = hcp_project.example.resource_id 12 | principal_id = hcp_service_principal.sp.resource_id 13 | role = "roles/contributor" 14 | } 15 | -------------------------------------------------------------------------------- /examples/resources/hcp_project_iam_policy/import.sh: -------------------------------------------------------------------------------- 1 | # Project IAM Policy can be imported by specifying the project id 2 | terraform import hcp_project_iam_policy.example 840e3701-55b6-4f86-8c17-b1fe397303c5 3 | -------------------------------------------------------------------------------- /examples/resources/hcp_project_iam_policy/resource.tf: -------------------------------------------------------------------------------- 1 | data "hcp_iam_policy" "example" { 2 | bindings = [ 3 | { 4 | role = "roles/contributor" 5 | principals = [ 6 | "example-user-id-1", 7 | "example-group-id-1", 8 | "example-sp-1" 9 | ] 10 | }, 11 | ] 12 | } 13 | 14 | resource "hcp_project" "my_project" { 15 | name = "example" 16 | } 17 | 18 | resource "hcp_project_iam_policy" "project_policy" { 19 | project_id = hcp_project.my_project.resource_id 20 | policy_data = data.hcp_iam_policy.example.policy_data 21 | } 22 | -------------------------------------------------------------------------------- /examples/resources/hcp_service_principal/import.sh: -------------------------------------------------------------------------------- 1 | # Service Principals can be imported by specifying the resource name 2 | terraform import hcp_service_principal.example iam/project/840e3701-55b6-4f86-8c17-b1fe397303c5/service-principal/my-sp 3 | 4 | -------------------------------------------------------------------------------- /examples/resources/hcp_service_principal/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_service_principal" "example" { 2 | name = "example-sp" 3 | } 4 | -------------------------------------------------------------------------------- /examples/resources/hcp_service_principal/resource_new_project.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_project" "my_proj" { 2 | name = "example" 3 | } 4 | 5 | resource "hcp_service_principal" "example" { 6 | name = "example-sp" 7 | parent = hcp_project.my_proj.resource_name 8 | } 9 | -------------------------------------------------------------------------------- /examples/resources/hcp_service_principal/resource_organization.tf: -------------------------------------------------------------------------------- 1 | data "hcp_organization" "my_org" { 2 | } 3 | 4 | resource "hcp_service_principal" "example" { 5 | name = "example-sp" 6 | parent = data.hcp_organization.my_org.resource_name 7 | } 8 | -------------------------------------------------------------------------------- /examples/resources/hcp_service_principal_key/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_service_principal" "example" { 2 | name = "example-sp" 3 | } 4 | 5 | resource "hcp_service_principal_key" "key" { 6 | service_principal = hcp_service_principal.example.resource_name 7 | } 8 | -------------------------------------------------------------------------------- /examples/resources/hcp_service_principal_key/resource_rotation.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_service_principal" "example" { 2 | name = "example-sp" 3 | } 4 | 5 | # Note this requires the Terraform to be run regularly 6 | resource "time_rotating" "key_rotation" { 7 | rotation_days = 14 8 | } 9 | 10 | resource "hcp_service_principal_key" "key" { 11 | service_principal = hcp_service_principal.example.resource_name 12 | rotation_triggers { 13 | rotation_time = time_rotating.key_rotation.rotation_rfc3339 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_cluster/import.sh: -------------------------------------------------------------------------------- 1 | # Using an explicit project ID, the import ID is: 2 | # {project_id}:{cluster_id} 3 | terraform import hcp_vault_cluster.example f709ec73-55d4-46d8-897d-816ebba28778:vault-cluster 4 | # Using the provider-default project ID, the import ID is: 5 | # {cluster_id} 6 | terraform import hcp_vault_cluster.example vault-cluster 7 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_cluster/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_hvn" "example" { 2 | hvn_id = "hvn" 3 | cloud_provider = "aws" 4 | region = "us-west-2" 5 | cidr_block = "172.25.16.0/20" 6 | } 7 | 8 | resource "hcp_vault_cluster" "example" { 9 | cluster_id = "vault-cluster" 10 | hvn_id = hcp_hvn.example.hvn_id 11 | tier = "standard_large" 12 | metrics_config { 13 | datadog_api_key = "test_datadog" 14 | datadog_region = "us1" 15 | } 16 | audit_log_config { 17 | datadog_api_key = "test_datadog" 18 | datadog_region = "us1" 19 | } 20 | lifecycle { 21 | prevent_destroy = true 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_cluster_admin_token/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_vault_cluster_admin_token" "example" { 2 | cluster_id = "test-vault-cluster" 3 | } 4 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_radar_integration_jira_connection/resource.tf: -------------------------------------------------------------------------------- 1 | variable "jira_token" { 2 | type = string 3 | sensitive = true 4 | } 5 | 6 | resource "hcp_vault_radar_integration_jira_connection" "jira_connection" { 7 | name = "example connection to jira" 8 | email = "jane.smith@example.com" 9 | token = var.jira_token 10 | base_url = "https://example.atlassian.net" 11 | } -------------------------------------------------------------------------------- /examples/resources/hcp_vault_radar_integration_jira_subscription/resource.tf: -------------------------------------------------------------------------------- 1 | variable "jira_token" { 2 | type = string 3 | sensitive = true 4 | } 5 | 6 | # A Jira subscription requires a Jira connection. 7 | resource "hcp_vault_radar_integration_jira_connection" "jira_connection" { 8 | name = "example integration jira connection" 9 | email = "jane.smith@example.com" 10 | token = var.jira_token 11 | base_url = "https://example.atlassian.net" 12 | } 13 | 14 | resource "hcp_vault_radar_integration_jira_subscription" "jira_subscription" { 15 | name = "example integration jira subscription" 16 | connection_id = hcp_vault_radar_integration_jira_connection.jira_connection.id 17 | jira_project_key = "SEC" 18 | issue_type = "Task" 19 | assignee = "71509:11bb945b-c0de-4bac-9d57-9f09db2f7bc9" 20 | message = "Example message" 21 | } -------------------------------------------------------------------------------- /examples/resources/hcp_vault_radar_integration_slack_connection/resource.tf: -------------------------------------------------------------------------------- 1 | variable "slack_token" { 2 | type = string 3 | sensitive = true 4 | } 5 | 6 | resource "hcp_vault_radar_integration_slack_connection" "slack_connection" { 7 | name = "example connection to slack" 8 | token = var.slack_token 9 | } 10 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_radar_integration_slack_subscription/resource.tf: -------------------------------------------------------------------------------- 1 | variable "slack_token" { 2 | type = string 3 | sensitive = true 4 | } 5 | 6 | # A Slack subscription requires a Slack connection. 7 | resource "hcp_vault_radar_integration_slack_connection" "slack_connection" { 8 | name = "example connection to slack" 9 | token = var.slack_token 10 | } 11 | 12 | resource "hcp_vault_radar_integration_slack_subscription" "slack_subscription" { 13 | name = "example integration slack subscription" 14 | connection_id = hcp_vault_radar_integration_slack_connection.slack_connection.id 15 | channel = "sec-ops-team" 16 | } -------------------------------------------------------------------------------- /examples/resources/hcp_vault_radar_source_github_cloud/resource.tf: -------------------------------------------------------------------------------- 1 | variable "github_cloud_token" { 2 | type = string 3 | sensitive = true 4 | } 5 | 6 | resource "hcp_vault_radar_source_github_cloud" "example" { 7 | github_organization = "my-github-org" 8 | token = var.github_cloud_token 9 | project_id = "my-project-id" 10 | } -------------------------------------------------------------------------------- /examples/resources/hcp_vault_radar_source_github_enterprise/resource.tf: -------------------------------------------------------------------------------- 1 | variable "github_enterprise_token" { 2 | type = string 3 | sensitive = true 4 | } 5 | 6 | resource "hcp_vault_radar_source_github_enterprise" "example" { 7 | domain_name = "myserver.acme.com" 8 | github_organization = "my-github-org" 9 | token = var.github_enterprise_token 10 | project_id = "my-project-id" 11 | } -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_app/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_vault_secrets_app" "example" { 2 | app_name = "example-app-name" 3 | description = "My new app!" 4 | } -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_app_iam_binding/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_service_principal" "sp" { 2 | name = "example-sp" 3 | } 4 | 5 | resource "hcp_vault_secrets_app" "example" { 6 | app_name = "example-app-name" 7 | description = "My new app!" 8 | } 9 | 10 | resource "hcp_vault_secrets_app_iam_binding" "example" { 11 | resource_name = hcp_vault_secrets_app.example.resource_name 12 | principal_id = hcp_service_principal.sp.resource_id 13 | role = "roles/secrets.app-secret-reader" 14 | } 15 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_app_iam_policy/import.sh: -------------------------------------------------------------------------------- 1 | # Vault Secrets App IAM Policy can be imported by specifying the resource name of the app 2 | terraform import hcp_vault_secrets_app_iam_policy.example secrets/project/41d107a7-eea6-4b5e-8481-508ab29e2b07/app/example-app-name 3 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_app_iam_policy/resource.tf: -------------------------------------------------------------------------------- 1 | data "hcp_iam_policy" "example" { 2 | bindings = [ 3 | { 4 | role = "roles/secrets.app-secret-reader" 5 | principals = [ 6 | "example-user-id-1", 7 | "example-group-id-1", 8 | "example-sp-1" 9 | ] 10 | }, 11 | ] 12 | } 13 | 14 | 15 | resource "hcp_vault_secrets_app" "example" { 16 | app_name = "example-app-name" 17 | description = "My new app!" 18 | } 19 | 20 | resource "hcp_vault_secrets_app_iam_policy" "example" { 21 | resource_name = hcp_vault_secrets_app.example.resource_name 22 | policy_data = data.hcp_iam_policy.example.policy_data 23 | } 24 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_dynamic_secret/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_vault_secrets_dynamic_secret" "example_aws" { 2 | app_name = "my-app-1" 3 | secret_provider = "aws" 4 | name = "my_aws_1" 5 | integration_name = "my-integration-1" 6 | default_ttl = "900s" 7 | aws_assume_role = { 8 | iam_role_arn = "arn:aws:iam:::role/" 9 | } 10 | } 11 | 12 | resource "hcp_vault_secrets_dynamic_secret" "example_gcp" { 13 | app_name = "my-app-1" 14 | secret_provider = "gcp" 15 | name = "my_gcp_1" 16 | integration_name = "my-integration-1" 17 | default_ttl = "900s" 18 | gcp_impersonate_service_account = { 19 | service_account_email = "@.iam.gserviceaccount.com" 20 | } 21 | } -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_integration/import.sh: -------------------------------------------------------------------------------- 1 | # Vault Secrets Integration can be imported by specifying the name of the integration 2 | # Note that since sensitive information are never returned on the Vault Secrets API, 3 | # the next plan or apply will show a diff for sensitive fields. 4 | terraform import hcp_vault_secrets_integration.example my-integration-name 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_integration_aws/import.sh: -------------------------------------------------------------------------------- 1 | # Vault Secrets AWS Integration can be imported by specifying the name of the integration 2 | # Note that since the AWS secret access key is never returned on the Vault Secrets API, 3 | # the next plan or apply will show a diff for that field if using the access keys authentication method. 4 | terraform import hcp_vault_secrets_integration_aws.example my-aws-1 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_integration_aws/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_vault_secrets_integration_aws" "example_with_access_keys" { 2 | name = "my-aws-1" 3 | capabilities = ["DYNAMIC", "ROTATION"] 4 | access_keys = { 5 | access_key_id = "AKIA..." 6 | secret_access_key = "rgUK..." 7 | } 8 | } 9 | 10 | resource "hcp_vault_secrets_integration_aws" "example_with_identity_federation" { 11 | name = "my-aws-1" 12 | capabilities = ["DYNAMIC", "ROTATION"] 13 | federated_workload_identity = { 14 | role_arn = "arn:aws:iam:::role/>" 15 | audience = "" 16 | } 17 | } -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_integration_azure/import.sh: -------------------------------------------------------------------------------- 1 | # Vault Secrets Azure Integration can be imported by specifying the name of the integration 2 | # Note that since the client secret is never returned on the Vault Secrets API, 3 | # the next plan or apply will show a diff for that field. 4 | terraform import hcp_vault_secrets_integration_azure.example my-azure-1 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_integration_azure/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_vault_secrets_integration_azure" "example" { 2 | name = "my-azure-1" 3 | capabilities = ["ROTATION"] 4 | client_secret = { 5 | "tenant_id" = "7eb3...", 6 | "client_id" = "9de0...", 7 | "client_secret" = "WZk8..." 8 | } 9 | } -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_integration_confluent/import.sh: -------------------------------------------------------------------------------- 1 | # Vault Secrets Confluent Integration can be imported by specifying the name of the integration 2 | # Note that since the Api Key secret is never returned on the Vault Secrets API, 3 | # the next plan or apply will show a diff for that field. 4 | terraform import hcp_vault_secrets_integration_confluent.example my-confluent-1 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_integration_confluent/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_vault_secrets_integration_confluent" "example" { 2 | name = "my-confluent-1" 3 | capabilities = ["ROTATION"] 4 | static_credential_details = { 5 | cloud_api_key_id = "TKa..." 6 | cloud_api_secret = "6aG..." 7 | } 8 | } -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_integration_gcp/import.sh: -------------------------------------------------------------------------------- 1 | # Vault Secrets GCP Integration can be imported by specifying the name of the integration 2 | # Note that since the service account credentials are never returned on the Vault Secrets API, 3 | # the next plan or apply will show a diff for that field if using the service account key authentication method. 4 | terraform import hcp_vault_secrets_integration_gcp.example my-gcp-1 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_integration_mongodbatlas/import.sh: -------------------------------------------------------------------------------- 1 | # Vault Secrets Mongo DB Atlas Integration can be imported by specifying the name of the integration 2 | # Note that since the API private key is never returned on the Vault Secrets API, 3 | # the next plan or apply will show a diff for that field. 4 | terraform import hcp_vault_secrets_integration_mongodbatlas.example my-mongodbatlas-1 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_integration_mongodbatlas/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_vault_secrets_integration_mongodbatlas" "example" { 2 | name = "my-mongodbatlas-1" 3 | capabilities = ["ROTATION"] 4 | static_credential_details = { 5 | api_private_key = "12345678-1234-1234-1234-12345678" 6 | api_public_key = "abcdefgh" 7 | } 8 | } -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_integration_twilio/import.sh: -------------------------------------------------------------------------------- 1 | # Vault Secrets Twilio Integration can be imported by specifying the name of the integration 2 | # Note that since the Api Key secret is never returned on the Vault Secrets API, 3 | # the next plan or apply will show a diff for that field. 4 | terraform import hcp_vault_secrets_integration_twilio.example my-twilio-1 5 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_integration_twilio/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_vault_secrets_integration_twilio" "example" { 2 | name = "my-twilio-1" 3 | capabilities = ["ROTATION"] 4 | static_credential_details = { 5 | account_sid = "AC7..." 6 | api_key_sid = "TKa..." 7 | api_key_secret = "6aG..." 8 | } 9 | } -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_secret/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_vault_secrets_secret" "example" { 2 | app_name = "example-app-name" 3 | secret_name = "example_secret" 4 | secret_value = "hashi123" 5 | } -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_sync/import.sh: -------------------------------------------------------------------------------- 1 | # Vault Secrets Integration can be imported by specifying the name of the integration 2 | terraform import hcp_vault_secrets_sync.example_gitlab_project_sync gitlab-proj-sync 3 | -------------------------------------------------------------------------------- /examples/resources/hcp_vault_secrets_sync/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_vault_secrets_integration" "example_gitlab_integration" { 2 | name = "gitlab-integration" 3 | capabilities = ["SYNC"] 4 | provider_type = "gitlab" 5 | gitlab_access = { 6 | token = "myaccesstoken" 7 | } 8 | } 9 | 10 | resource "hcp_vault_secrets_sync" "example_gitlab_project_sync" { 11 | name = "gitlab-proj-sync" 12 | integration_name = hcp_vault_secrets_integration.example_gitlab_integration.name 13 | gitlab_config = { 14 | scope = "PROJECT" 15 | project_id = "123456" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /examples/resources/hcp_waypoint_add_on_definition/resource.tf: -------------------------------------------------------------------------------- 1 | resource "hcp_waypoint_add_on_definition" "add_on_definition" { 2 | name = "postgres" 3 | summary = "An add-on that provisions a PostgreSQL database." 4 | description = < Checking that code complies with gofmt requirements..." 8 | gofmt_files=$(gofmt -l `find ./internal -name '*.go'`) 9 | if [[ -n ${gofmt_files} ]]; then 10 | echo 'gofmt needs running on the following files:' 11 | echo "${gofmt_files}" 12 | echo "You can use the command: 'make fmt' to reformat code." 13 | exit 1 14 | fi 15 | 16 | exit 0 17 | -------------------------------------------------------------------------------- /templates/data-sources/aws_network_peering.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HashiCorp Virtual Networks" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | The AWS network peering data source provides information about an existing network peering between an HVN and a peer AWS VPC. 11 | 12 | ## Example Usage 13 | 14 | ```terraform 15 | data "hcp_aws_network_peering" "test" { 16 | hvn_id = var.hvn_id 17 | peering_id = var.peering_id 18 | wait_for_active_state = true 19 | } 20 | ``` 21 | 22 | {{ .SchemaMarkdown | trimspace }} 23 | -------------------------------------------------------------------------------- /templates/data-sources/aws_transit_gateway_attachment.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HashiCorp Virtual Networks" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | ```terraform 15 | data "hcp_aws_transit_gateway_attachment" "test" { 16 | hvn_id = var.hvn_id 17 | transit_gateway_attachment_id = var.transit_gateway_attachment_id 18 | } 19 | ``` 20 | 21 | {{ .SchemaMarkdown | trimspace }} 22 | -------------------------------------------------------------------------------- /templates/data-sources/azure_peering_connection.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HashiCorp Virtual Networks" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | -> **Note:** This data source is currently in public beta. 11 | 12 | {{ .Description | trimspace }} 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/data-sources/hcp_azure_peering_connection/data-source.tf" }} 17 | 18 | {{ .SchemaMarkdown | trimspace }} 19 | -------------------------------------------------------------------------------- /templates/data-sources/boundary_cluster.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Boundary" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_boundary_cluster/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/consul_agent_helm_config.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Consul" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_consul_agent_helm_config/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/consul_agent_kubernetes_secret.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Consul" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_consul_agent_kubernetes_secret/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/consul_cluster.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Consul" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_consul_cluster/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/consul_versions.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Consul" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_consul_versions/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/group.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_group/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/hvn.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HashiCorp Virtual Networks" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_hvn/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/hvn_peering_connection.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HashiCorp Virtual Networks" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_hvn_peering_connection/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/hvn_route.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HashiCorp Virtual Networks" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_hvn_route/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/organization.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_organization/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/packer_bucket_names.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Packer" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_packer_bucket_names/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/packer_run_task.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Packer" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | -> **Note:** This data source is currently in public beta. 11 | 12 | -> **Note:** Use of this data source in the same workspace as an 13 | `hcp_packer_run_task` resource (pointing to the same HCP Project) is 14 | discouraged. If this is not possible (ex: using a module containing the data 15 | source in the same workspace as a copy of the resource), use the `depends_on` 16 | meta-argument to mark the data source as dependent on the resource. 17 | 18 | {{ .Description | trimspace }} 19 | 20 | ## Example Usage 21 | 22 | {{ tffile "examples/data-sources/hcp_packer_run_task/data-source.tf" }} 23 | 24 | {{ .SchemaMarkdown | trimspace }} 25 | -------------------------------------------------------------------------------- /templates/data-sources/packer_version.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Packer" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_packer_version/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/project.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_project/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/service_principal.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_service_principal/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/user_principal.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_user_principal/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/vault_cluster.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_vault_cluster/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/vault_plugin.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | {{ .SchemaMarkdown | trimspace }} 13 | -------------------------------------------------------------------------------- /templates/data-sources/vault_secrets_app.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_vault_secrets_app/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/vault_secrets_dynamic_secret.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_vault_secrets_dynamic_secret/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/vault_secrets_rotating_secret.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_vault_secrets_rotating_secret/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/vault_secrets_secret.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/data-sources/hcp_vault_secrets_secret/data-source.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/data-sources/waypoint_action.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Waypoint" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} `{{.Type}}` 9 | 10 | -> **Note:** HCP Waypoint actions is currently in beta. 11 | 12 | {{ .Description | trimspace }} 13 | 14 | {{ .SchemaMarkdown | trimspace }} -------------------------------------------------------------------------------- /templates/data-sources/waypoint_add_on.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Waypoint" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} `{{.Type}}` 9 | 10 | 11 | 12 | {{ .Description | trimspace }} 13 | 14 | {{ .SchemaMarkdown | trimspace }} -------------------------------------------------------------------------------- /templates/data-sources/waypoint_add_on_definition.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Waypoint" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} `{{.Type}}` 9 | 10 | 11 | 12 | {{ .Description | trimspace }} 13 | 14 | {{ .SchemaMarkdown | trimspace }} 15 | -------------------------------------------------------------------------------- /templates/data-sources/waypoint_application.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Waypoint" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} `{{.Type}}` 9 | 10 | 11 | 12 | {{ .Description | trimspace }} 13 | 14 | {{ .SchemaMarkdown | trimspace }} 15 | -------------------------------------------------------------------------------- /templates/data-sources/waypoint_template.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Waypoint" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} `{{.Type}}` 9 | 10 | 11 | 12 | {{ .Description | trimspace }} 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/data-sources/hcp_waypoint_template/data-source.tf" }} 17 | {{ .SchemaMarkdown | trimspace }} 18 | -------------------------------------------------------------------------------- /templates/guides/consul-root-token.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | subcategory: "" 3 | page_title: "Create a new ACL root token" 4 | description: |- 5 | An example of creating a new ACL root token. 6 | --- 7 | 8 | # Create a new Consul ACL root token 9 | 10 | Creating a new root token is useful if your HCP Consul cluster has been imported into Terraform 11 | or is managed outside of Terraform. It is important to note that when creating a new root token, 12 | the existing root token will be invalidated. 13 | 14 | {{ tffile "examples/guides/consul_cluster_root_token/main.tf" }} 15 | 16 | The secret ID of this root token can be used to configure the Consul provider. 17 | 18 | ``` 19 | provider "consul" { 20 | address = "example.consul.io:80" 21 | token = hcp_consul_cluster_root_token.example.secret_id 22 | } 23 | ``` 24 | -------------------------------------------------------------------------------- /templates/guides/consul-snapshots.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | subcategory: "" 3 | page_title: "Create Consul cluster snapshots in HCP" 4 | description: |- 5 | An example of creating an HCP Consul cluster snapshot. 6 | --- 7 | 8 | # Create Consul cluster snapshots 9 | 10 | The snapshot resource allows users to manage Consul snapshots of an HCP cluster. Snapshots currently have a retention policy of 30 days. 11 | 12 | Restoring snapshots via Terraform is not supported. If you would like to restore a snapshot for your Consul cluster, navigate to the snapshots page via the HCP UI. 13 | 14 | This can be done by navigating from the Consul list page to the cluster detail page and then in turn the snapshots tab within that view. 15 | {{ tffile "examples/guides/snapshots/main.tf" }} 16 | -------------------------------------------------------------------------------- /templates/guides/vault-admin-token.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | subcategory: "" 3 | page_title: "Create a Vault cluster and admin token" 4 | description: |- 5 | An example of creating a Vault cluster and admin token. 6 | --- 7 | 8 | # Create a new Vault cluster and an admin token 9 | 10 | Once you have an HVN, HCP Vault enables you to quickly deploy a Vault Enterprise cluster in AWS across a variety of environments while offloading the operations burden to the SRE experts at HashiCorp. 11 | The cluster's admin token grants its bearer administrator access to the Vault cluster. This admin token is valid for six hours. On subsequent reads after creation, 12 | the resource will check if the admin token is close to expiration or expired and automatically refresh as needed. 13 | 14 | {{ tffile "examples/guides/vault_cluster_admin_token/main.tf" }} 15 | -------------------------------------------------------------------------------- /templates/guides/vault-secrets-resources.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | subcategory: "" 3 | page_title: "Manage apps and secrets with Vault Secrets" 4 | description: |- 5 | Manage Vault Secrets apps and resources. 6 | --- 7 | 8 | The HCP Provider allows you to manage your Vault Secrets apps and secrets. 9 | 10 | The Vault Secrets app resource allows you to manage your application through the following configuration: 11 | 12 | {{ tffile "examples/guides/vault_secrets/resourceapp.tf" }} 13 | 14 | We can also use this to create secrets based off our new application. 15 | 16 | {{ tffile "examples/guides/vault_secrets/resources.tf" }} 17 | 18 | -> **Note:** The secret value is considered sensitive and will be masked with any output. However, the secret value will be written to your state file and we recommend treating the [state file as sensitive](https://developer.hashicorp.com/terraform/language/state/sensitive-data) 19 | -------------------------------------------------------------------------------- /templates/resources/aws_network_peering.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HashiCorp Virtual Networks" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_aws_network_peering/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | 18 | ## Import 19 | 20 | Import is supported using the following syntax: 21 | 22 | {{ codefile "shell" "examples/resources/hcp_aws_network_peering/import.sh" }} 23 | -------------------------------------------------------------------------------- /templates/resources/azure_peering_connection.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HashiCorp Virtual Networks" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_azure_peering_connection/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | 18 | ## Import 19 | 20 | Import is supported using the following syntax: 21 | 22 | {{ codefile "shell" "examples/resources/hcp_azure_peering_connection/import.sh" }} 23 | -------------------------------------------------------------------------------- /templates/resources/boundary_cluster.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Boundary" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_boundary_cluster/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | 18 | ## Import 19 | 20 | Import is supported using the following syntax: 21 | 22 | {{ codefile "shell" "examples/resources/hcp_boundary_cluster/import.sh" }} 23 | -------------------------------------------------------------------------------- /templates/resources/consul_cluster.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Consul" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | Consul on Azure is available. See the [Get started with end-to-end deployment configuration](https://developer.hashicorp.com/consul/tutorials/cloud-deploy-automation/consul-end-to-end-overview) tutorial. 11 | {{ .Description | trimspace }} 12 | 13 | ## Example Usage 14 | 15 | {{ tffile "examples/resources/hcp_consul_cluster/resource.tf" }} 16 | 17 | {{ .SchemaMarkdown | trimspace }} 18 | 19 | ## Import 20 | 21 | Import is supported using the following syntax: 22 | 23 | {{ codefile "shell" "examples/resources/hcp_consul_cluster/import.sh" }} 24 | -------------------------------------------------------------------------------- /templates/resources/consul_cluster_root_token.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Consul" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | ~> **Security Notice:** Please see this [list of recommendations](https://www.terraform.io/docs/language/state/sensitive-data.html) for storing sensitive information in Terraform. 11 | 12 | {{ .Description | trimspace }} 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_consul_cluster_root_token/resource.tf" }} 17 | 18 | {{ .SchemaMarkdown | trimspace }} 19 | -------------------------------------------------------------------------------- /templates/resources/consul_snapshot.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Consul" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_consul_snapshot/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/resources/group.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_group/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | 18 | ## Import 19 | 20 | Import is supported using the following syntax: 21 | 22 | {{ codefile "shell" "examples/resources/hcp_group/import.sh" }} 23 | -------------------------------------------------------------------------------- /templates/resources/group_iam_binding.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ~> **Note:** `hcp_group_iam_policy` can not be used in conjunction with 13 | `hcp_group_iam_binding`. 14 | 15 | ## Example Usage 16 | 17 | {{ tffile "examples/resources/hcp_group_iam_binding/resource.tf" }} 18 | 19 | {{ .SchemaMarkdown | trimspace }} 20 | -------------------------------------------------------------------------------- /templates/resources/group_iam_policy.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ~> **Note:** `hcp_group_iam_policy` can not be used in conjunction with 13 | `hcp_group_iam_binding`. 14 | 15 | ## Example Usage 16 | 17 | {{ tffile "examples/resources/hcp_group_iam_policy/resource.tf" }} 18 | 19 | {{ .SchemaMarkdown | trimspace }} 20 | 21 | ## Import 22 | 23 | Import is supported using the following syntax: 24 | 25 | {{ codefile "shell" "examples/resources/hcp_group_iam_policy/import.sh" }} 26 | -------------------------------------------------------------------------------- /templates/resources/group_members.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_group_members/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | 18 | ## Import 19 | 20 | Import is supported using the following syntax: 21 | 22 | {{codefile "shell" "examples/resources/hcp_group_members/import.sh" }} 23 | -------------------------------------------------------------------------------- /templates/resources/hvn_peering_connection.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HashiCorp Virtual Networks" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_hvn_peering_connection/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | 18 | ## Import 19 | 20 | Import is supported using the following syntax: 21 | 22 | {{ codefile "shell" "examples/resources/hcp_hvn_peering_connection/import.sh" }} 23 | -------------------------------------------------------------------------------- /templates/resources/iam_workload_identity_provider.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "Cloud IAM" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage: AWS 13 | 14 | {{ tffile "examples/resources/hcp_iam_workload_identity_provider/resource_aws.tf" }} 15 | 16 | ## Example Usage: Azure 17 | 18 | {{ tffile "examples/resources/hcp_iam_workload_identity_provider/resource_azure.tf" }} 19 | 20 | ## Example Usage: GCP 21 | 22 | {{ tffile "examples/resources/hcp_iam_workload_identity_provider/resource_gcp.tf" }} 23 | 24 | {{ .SchemaMarkdown | trimspace }} 25 | 26 | ## Import 27 | 28 | Import is supported using the following syntax: 29 | 30 | {{ codefile "shell" "examples/resources/hcp_iam_workload_identity_provider/import.sh" }} 31 | -------------------------------------------------------------------------------- /templates/resources/log_streaming_destination.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Log Streaming" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | To manage destinations, you must authenticate with an organization-level service principal with 13 | the `contributor` or `admin` role. 14 | 15 | ## Example Usage: CloudWatch 16 | 17 | {{ tffile "examples/resources/hcp_log_streaming_destination/resource_cloudwatch.tf" }} 18 | 19 | ## Example Usage: DataDog 20 | 21 | {{ tffile "examples/resources/hcp_log_streaming_destination/resource_datadog.tf" }} 22 | 23 | ## Example Usage: SplunkCloud 24 | 25 | {{ tffile "examples/resources/hcp_log_streaming_destination/resource_splunk_cloud.tf" }} 26 | 27 | {{ .SchemaMarkdown | trimspace }} 28 | -------------------------------------------------------------------------------- /templates/resources/notifications_webhook.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_notifications_webhook/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | 18 | ## Import 19 | 20 | Import is supported using the following syntax: 21 | 22 | {{ codefile "shell" "examples/resources/hcp_notifications_webhook/import.sh" }} 23 | -------------------------------------------------------------------------------- /templates/resources/organization_iam_binding.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ~> **Note:** `hcp_organization_iam_binding` can not be used in conjunction with 13 | `hcp_organization_iam_policy`. 14 | 15 | ## Example Usage 16 | 17 | {{ tffile "examples/resources/hcp_organization_iam_binding/resource.tf" }} 18 | 19 | {{ .SchemaMarkdown | trimspace }} 20 | -------------------------------------------------------------------------------- /templates/resources/packer_bucket.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Packer" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_packer_bucket/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | 18 | ## Import 19 | 20 | Import is supported using the following syntax: 21 | 22 | {{ codefile "shell" "examples/resources/hcp_packer_bucket/import.sh" }} 23 | -------------------------------------------------------------------------------- /templates/resources/packer_bucket_iam_binding.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Packer" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ~> **Note:** `hcp_packer_bucket_iam_binding` cannot be used in conjunction with 13 | `hcp_packer_bucket_iam_policy`. 14 | 15 | ## Example Usage 16 | 17 | {{ tffile "examples/resources/hcp_packer_bucket_iam_binding/resource.tf" }} 18 | 19 | {{ .SchemaMarkdown | trimspace }} 20 | -------------------------------------------------------------------------------- /templates/resources/packer_bucket_iam_policy.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Packer" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ~> **Note:** `hcp_packer_bucket_iam_policy` can not be used in conjunction with 13 | `hcp_packer_bucket_iam_binding`. 14 | 15 | ## Example Usage 16 | 17 | {{ tffile "examples/resources/hcp_packer_bucket_iam_policy/resource.tf" }} 18 | 19 | {{ .SchemaMarkdown | trimspace }} 20 | 21 | ## Import 22 | 23 | Import is supported using the following syntax: 24 | 25 | {{ codefile "shell" "examples/resources/hcp_packer_bucket_iam_policy/import.sh" }} -------------------------------------------------------------------------------- /templates/resources/packer_channel.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Packer" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_packer_channel/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | 18 | ## Import 19 | 20 | Import is supported using the following syntax: 21 | 22 | {{ codefile "shell" "examples/resources/hcp_packer_channel/import.sh" }} 23 | -------------------------------------------------------------------------------- /templates/resources/packer_channel_assignment.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Packer" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_packer_channel_assignment/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | 18 | ## Import 19 | 20 | Import is supported using the following syntax: 21 | 22 | {{ codefile "shell" "examples/resources/hcp_packer_channel_assignment/import.sh" }} 23 | -------------------------------------------------------------------------------- /templates/resources/packer_run_task.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Packer" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | -> **Note:** This resource is currently in public beta. 11 | 12 | {{ .Description | trimspace }} 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_packer_run_task/resource.tf" }} 17 | 18 | {{ .SchemaMarkdown | trimspace }} 19 | -------------------------------------------------------------------------------- /templates/resources/project.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_project/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | 18 | ## Import 19 | 20 | Import is supported using the following syntax: 21 | 22 | {{ codefile "shell" "examples/resources/hcp_project/import.sh" }} 23 | -------------------------------------------------------------------------------- /templates/resources/project_iam_binding.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ~> **Note:** `hcp_project_iam_binding` can not be used in conjunction with 13 | `hcp_project_iam_policy`. 14 | 15 | ## Example Usage 16 | 17 | {{ tffile "examples/resources/hcp_project_iam_binding/resource.tf" }} 18 | 19 | {{ .SchemaMarkdown | trimspace }} 20 | -------------------------------------------------------------------------------- /templates/resources/service_principal.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage: Create in provider configured project 13 | 14 | {{ tffile "examples/resources/hcp_service_principal/resource.tf" }} 15 | 16 | ## Example Usage: Create in new project 17 | 18 | {{ tffile "examples/resources/hcp_service_principal/resource_new_project.tf" }} 19 | 20 | ## Example Usage: Create organization service principal 21 | 22 | {{ tffile "examples/resources/hcp_service_principal/resource_organization.tf" }} 23 | 24 | {{ .SchemaMarkdown | trimspace }} 25 | 26 | ## Import 27 | 28 | Import is supported using the following syntax: 29 | 30 | {{ codefile "shell" "examples/resources/hcp_service_principal/import.sh" }} 31 | -------------------------------------------------------------------------------- /templates/resources/service_principal_key.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "Cloud Platform" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage: Creating a new key 13 | 14 | {{ tffile "examples/resources/hcp_service_principal_key/resource.tf" }} 15 | 16 | ## Example Usage: Creating and regularly rotating a key 17 | 18 | {{ tffile "examples/resources/hcp_service_principal_key/resource_rotation.tf" }} 19 | 20 | {{ .SchemaMarkdown | trimspace }} 21 | -------------------------------------------------------------------------------- /templates/resources/vault_plugin.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | {{ .SchemaMarkdown | trimspace }} 13 | -------------------------------------------------------------------------------- /templates/resources/vault_radar_integration_jira_connection.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Radar" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | -> **Note:** This feature is currently in private beta. 11 | 12 | {{ .Description | trimspace }} 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_vault_radar_integration_jira_connection/resource.tf" }} 17 | 18 | 19 | {{ .SchemaMarkdown | trimspace }} 20 | -------------------------------------------------------------------------------- /templates/resources/vault_radar_integration_jira_subscription.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Radar" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | -> **Note:** This feature is currently in private beta. 11 | 12 | {{ .Description | trimspace }} 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_vault_radar_integration_jira_subscription/resource.tf" }} 17 | 18 | 19 | {{ .SchemaMarkdown | trimspace }} 20 | -------------------------------------------------------------------------------- /templates/resources/vault_radar_integration_slack_connection.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Radar" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | -> **Note:** This feature is currently in private beta. 11 | 12 | {{ .Description | trimspace }} 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_vault_radar_integration_slack_connection/resource.tf" }} 17 | 18 | 19 | {{ .SchemaMarkdown | trimspace }} 20 | -------------------------------------------------------------------------------- /templates/resources/vault_radar_integration_slack_subscription.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Radar" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | -> **Note:** This feature is currently in private beta. 11 | 12 | {{ .Description | trimspace }} 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_vault_radar_integration_slack_subscription/resource.tf" }} 17 | 18 | 19 | {{ .SchemaMarkdown | trimspace }} 20 | -------------------------------------------------------------------------------- /templates/resources/vault_radar_source_github_cloud.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Radar" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | -> **Note:** This feature is currently in private beta. 11 | 12 | {{ .Description | trimspace }} 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_vault_radar_source_github_cloud/resource.tf" }} 17 | 18 | 19 | {{ .SchemaMarkdown | trimspace }} 20 | -------------------------------------------------------------------------------- /templates/resources/vault_radar_source_github_enterprise.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Radar" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | -> **Note:** This feature is currently in private beta. 11 | 12 | {{ .Description | trimspace }} 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_vault_radar_source_github_enterprise/resource.tf" }} 17 | 18 | 19 | {{ .SchemaMarkdown | trimspace }} 20 | -------------------------------------------------------------------------------- /templates/resources/vault_secrets_app.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_vault_secrets_app/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/resources/vault_secrets_app_iam_binding.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ~> **Note:** `hcp_vault_secrets_app_iam_binding` cannot be used in conjunction with 13 | `hcp_vault_secrets_app_iam_policy`. 14 | 15 | ## Example Usage 16 | 17 | {{ tffile "examples/resources/hcp_vault_secrets_app_iam_binding/resource.tf" }} 18 | 19 | {{ .SchemaMarkdown | trimspace }} 20 | -------------------------------------------------------------------------------- /templates/resources/vault_secrets_dynamic_secret.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_vault_secrets_dynamic_secret/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/resources/vault_secrets_integration.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_vault_secrets_integration/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | 18 | ## Import 19 | 20 | Import is supported using the following syntax: 21 | 22 | {{ codefile "shell" "examples/resources/hcp_vault_secrets_integration/import.sh" }} 23 | -------------------------------------------------------------------------------- /templates/resources/vault_secrets_integration_aws.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ~> **Note:** This resource is deprecated, please use `hcp_vault_secrets_integration` instead. 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_vault_secrets_integration_aws/resource.tf" }} 17 | 18 | {{ .SchemaMarkdown | trimspace }} 19 | 20 | ## Import 21 | 22 | Import is supported using the following syntax: 23 | 24 | {{ codefile "shell" "examples/resources/hcp_vault_secrets_integration_aws/import.sh" }} 25 | -------------------------------------------------------------------------------- /templates/resources/vault_secrets_integration_azure.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ~> **Note:** This resource is deprecated, please use `hcp_vault_secrets_integration` instead. 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_vault_secrets_integration_azure/resource.tf" }} 17 | 18 | {{ .SchemaMarkdown | trimspace }} 19 | 20 | ## Import 21 | 22 | Import is supported using the following syntax: 23 | 24 | {{ codefile "shell" "examples/resources/hcp_vault_secrets_integration_azure/import.sh" }} 25 | -------------------------------------------------------------------------------- /templates/resources/vault_secrets_integration_confluent.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ~> **Note:** This resource is deprecated, please use `hcp_vault_secrets_integration` instead. 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_vault_secrets_integration_confluent/resource.tf" }} 17 | 18 | {{ .SchemaMarkdown | trimspace }} 19 | 20 | ## Import 21 | 22 | Import is supported using the following syntax: 23 | 24 | {{ codefile "shell" "examples/resources/hcp_vault_secrets_integration_confluent/import.sh" }} 25 | -------------------------------------------------------------------------------- /templates/resources/vault_secrets_integration_gcp.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ~> **Note:** This resource is deprecated, please use `hcp_vault_secrets_integration` instead. 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_vault_secrets_integration_gcp/resource.tf" }} 17 | 18 | {{ .SchemaMarkdown | trimspace }} 19 | 20 | ## Import 21 | 22 | Import is supported using the following syntax: 23 | 24 | {{ codefile "shell" "examples/resources/hcp_vault_secrets_integration_gcp/import.sh" }} 25 | -------------------------------------------------------------------------------- /templates/resources/vault_secrets_integration_mongodbatlas.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ~> **Note:** This resource is deprecated, please use `hcp_vault_secrets_integration` instead. 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_vault_secrets_integration_mongodbatlas/resource.tf" }} 17 | 18 | {{ .SchemaMarkdown | trimspace }} 19 | 20 | ## Import 21 | 22 | Import is supported using the following syntax: 23 | 24 | {{ codefile "shell" "examples/resources/hcp_vault_secrets_integration_mongodbatlas/import.sh" }} 25 | -------------------------------------------------------------------------------- /templates/resources/vault_secrets_integration_twilio.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ~> **Note:** This resource is deprecated, please use `hcp_vault_secrets_integration` instead. 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_vault_secrets_integration_twilio/resource.tf" }} 17 | 18 | {{ .SchemaMarkdown | trimspace }} 19 | 20 | ## Import 21 | 22 | Import is supported using the following syntax: 23 | 24 | {{ codefile "shell" "examples/resources/hcp_vault_secrets_integration_twilio/import.sh" }} 25 | -------------------------------------------------------------------------------- /templates/resources/vault_secrets_rotating_secret.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_vault_secrets_rotating_secret/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | -------------------------------------------------------------------------------- /templates/resources/vault_secrets_secret.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}} - {{.ProviderName}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | -> **Note:** Please treat your state file as sensitive when using this resource. 11 | 12 | {{ .Description | trimspace }} 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_vault_secrets_secret/resource.tf" }} 17 | 18 | {{ .SchemaMarkdown | trimspace }} 19 | -------------------------------------------------------------------------------- /templates/resources/vault_secrets_sync.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Type}} {{.Name}}" 3 | subcategory: "HCP Vault Secrets" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} ({{.Type}}) 9 | 10 | {{ .Description | trimspace }} 11 | 12 | ## Example Usage 13 | 14 | {{ tffile "examples/resources/hcp_vault_secrets_sync/resource.tf" }} 15 | 16 | {{ .SchemaMarkdown | trimspace }} 17 | 18 | ## Import 19 | 20 | Import is supported using the following syntax: 21 | 22 | {{ codefile "shell" "examples/resources/hcp_vault_secrets_sync/import.sh" }} 23 | -------------------------------------------------------------------------------- /templates/resources/waypoint_action.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Waypoint" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} `{{.Type}}` 9 | 10 | -> **Note:** HCP Waypoint actions is currently in beta. 11 | 12 | {{ .Description | trimspace }} 13 | 14 | {{ .SchemaMarkdown | trimspace }} -------------------------------------------------------------------------------- /templates/resources/waypoint_add_on.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Waypoint" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} `{{.Type}}` 9 | 10 | 11 | 12 | {{ .Description | trimspace }} 13 | 14 | {{ .SchemaMarkdown | trimspace }} -------------------------------------------------------------------------------- /templates/resources/waypoint_add_on_definition.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Waypoint" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} `{{.Type}}` 9 | 10 | 11 | 12 | {{ .Description | trimspace }} 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_waypoint_add_on_definition/resource.tf" }} 17 | 18 | {{ .SchemaMarkdown | trimspace }} 19 | -------------------------------------------------------------------------------- /templates/resources/waypoint_application.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Waypoint" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} `{{.Type}}` 9 | 10 | 11 | 12 | {{ .Description | trimspace }} 13 | 14 | {{ .SchemaMarkdown | trimspace }} 15 | -------------------------------------------------------------------------------- /templates/resources/waypoint_template.md.tmpl: -------------------------------------------------------------------------------- 1 | --- 2 | page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" 3 | subcategory: "HCP Waypoint" 4 | description: |- 5 | {{ .Description | plainmarkdown | trimspace | prefixlines " " }} 6 | --- 7 | 8 | # {{.Name}} `{{.Type}}` 9 | 10 | 11 | 12 | {{ .Description | trimspace }} 13 | 14 | ## Example Usage 15 | 16 | {{ tffile "examples/resources/hcp_waypoint_template/resource.tf" }} 17 | 18 | {{ .SchemaMarkdown | trimspace }} 19 | -------------------------------------------------------------------------------- /terraform-registry-manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "metadata": { 4 | "protocol_versions": [ 5 | "6.0" 6 | ] 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /tools/tools.go: -------------------------------------------------------------------------------- 1 | // Copyright (c) HashiCorp, Inc. 2 | // SPDX-License-Identifier: MPL-2.0 3 | 4 | // +build tools 5 | 6 | package tools 7 | 8 | import ( 9 | // document generation 10 | _ "github.com/hashicorp/terraform-plugin-docs/cmd/tfplugindocs" 11 | ) 12 | -------------------------------------------------------------------------------- /version/version.go: -------------------------------------------------------------------------------- 1 | // Copyright (c) HashiCorp, Inc. 2 | // SPDX-License-Identifier: MPL-2.0 3 | 4 | package version 5 | 6 | // ProviderVersion is set during the release process to the release version of the binary 7 | var ProviderVersion = "dev" 8 | --------------------------------------------------------------------------------