From 8324c67d3b4dddb75d6b21038ace181579708afb Mon Sep 17 00:00:00 2001 From: Krystian Panek Date: Mon, 28 Oct 2024 10:11:31 +0100 Subject: [PATCH 1/3] Doc --- README.md | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/README.md b/README.md index 3206d05..2a3d694 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,55 @@ The main purpose of this provider is to enable users to: - Seamless integration with Terraform for infrastructure provisioning - Based on the powerful [AEM Compose](https://github.com/wttech/aemc) tool +## Overview + +Provides an AEM instance resource to set up one or more AEM instances on virtual machines in the cloud or bare metal machines. +Below configuration is a generic example of how to use the provider: + +```hcl +resource "aem_instance" "single" { + depends_on = [] // for example: [aws_instance.aem_single, aws_volume_attachment.aem_single_data] + + // see available connection types: https://github.com/wttech/terraform-provider-aem/blob/main/internal/client/client_manager.go + client { + type = "" // 'aws-ssm' or 'ssh' + settings = { + // type-specific values goes here + } + credentials = { + // type-specific values goes here + } + } + + system { + bootstrap = { + inline = [ + // commands to execute only once on the machine (not idempotent) + ] + } + } + + compose { + create = { + inline = [ + // commands to execute before launching AEM instances (idempotent) + // for downloading AEM files, etc. + ] + } + configure = { + inline = [ + // commands to execute after launching AEM instances (idempotent) + // for provisioning AEM instances: setting replication agents, installing packages, etc. + ] + } + } +} + +output "aem_instances" { + value = aem_instance.single.instances +} +``` + ## Quickstart The easiest way to get started is to review, copy and adapt provided examples: From 54951d5e22704592d373fc4c41dc3520720b8507 Mon Sep 17 00:00:00 2001 From: Krystian Panek Date: Mon, 28 Oct 2024 10:15:32 +0100 Subject: [PATCH 2/3] Doc --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 2a3d694..83b74f2 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,10 @@ It's based on the [AEM Compose](https://github.com/wttech/aemc) tool and aims to Published in [Terraform Registry](https://registry.terraform.io/providers/wttech/aem/latest/docs). +# References + +* Talk at AdaptTo 2024 Conference - [First-ever IaC Providers for AEM](https://adapt.to/2024/schedule/lightning-talks/first-ever-iaac-providers-for-aem) by [Krystian Panek](mailto:krystian.panek@wundermanthompson.com) + ## Purpose The main purpose of this provider is to enable users to: From 393fc018e5a1adb39bd2790f01e640bd30070dce Mon Sep 17 00:00:00 2001 From: Krystian Panek Date: Mon, 28 Oct 2024 10:20:29 +0100 Subject: [PATCH 3/3] Doc --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 83b74f2..872d393 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ Published in [Terraform Registry](https://registry.terraform.io/providers/wttech # References -* Talk at AdaptTo 2024 Conference - [First-ever IaC Providers for AEM](https://adapt.to/2024/schedule/lightning-talks/first-ever-iaac-providers-for-aem) by [Krystian Panek](mailto:krystian.panek@wundermanthompson.com) +* Talk at AdaptTo 2024 Conference - [First-ever IaC Providers for AEM](https://adapt.to/2024/schedule/lightning-talks/first-ever-iaac-providers-for-aem) by [Krystian Panek](mailto:krystian.panek@vml.com) ## Purpose