terraform-provider-aws icon indicating copy to clipboard operation
terraform-provider-aws copied to clipboard

New Feature Request: Support for Workmail

Open ghost opened this issue 6 years ago • 24 comments

This issue was originally opened by @ruzin as hashicorp/terraform#19346. It was migrated here as a result of the provider split. The original body of the issue is below.


Current Terraform Version

Terraform v0.11.10
...

Use-cases

Add Workmail Resource to AWS Provider so that one is able to create, update, read and delete a workmail user.

Hey guys,

I think it'd useful to extend the provider to include the workmail service. I'm learning go atm with the view to create a PR to add workmail. However, workmail is quite a broad resource in that it includes creation of the resource itself and sub resources. Is there any useful material/recommended reading? Thanks!

ghost avatar Nov 11 '18 10:11 ghost

The main use case behind this is to fully automate the creation of AWS accounts under AWS organizations. I built a half terraform/half boto3 solution (https://github.com/ruzin/muppet) which can be called as a terraform module to do this but it would be better to have it all in terraform.

ruzin avatar Nov 11 '18 16:11 ruzin

@bflad I tried to open a PR to start working on this issue. But I couldn't push up my local branch. This is my first time contributing to an open source project. So any help appreciated? Thanks

ruzin avatar Nov 25 '18 16:11 ruzin

Hi @ruzin 👋 Very exciting!

If you are unfamiliar with social coding on GitHub, I would recommend checking out GitHub Guides. In particular to your problem, the one on Forking might be useful. There's also GitHub Help pages as well: https://help.github.com/articles/fork-a-repo/

Essentially you'll create a "personal copy" of the codebase on GitHub, push up the change to your fork, then submit the change as a pull request back to the main codebase. Hope this gets you started.

bflad avatar Nov 26 '18 00:11 bflad

@bflad Ah I see! I was wondering why there were so few branches but so many PRs. makes sense. Thank you, ill try that.

ruzin avatar Nov 26 '18 08:11 ruzin

@ruzin are you still working on this feature?

Jeeppler avatar Feb 07 '19 16:02 Jeeppler

Hi guys, let me know if you need any help with this. I can help contribute. Looking forward to this feature!

cicdguy avatar Jun 18 '19 00:06 cicdguy

Same here!

OGProgrammer avatar Jun 18 '19 21:06 OGProgrammer

+1! Would love to be able tie off the account creation process

andy-hammond avatar Aug 19 '19 21:08 andy-hammond

hey guys! I haven't been working on this, sorry got sidetracked. please feel free to pick this up!

ruzin avatar Oct 01 '19 10:10 ruzin

Is anyone working on this? I would love to automate our company email and calendars with terraform.

sklemmer avatar Jan 25 '20 13:01 sklemmer

I see a pr was merged, but for some reason I'm not seeing docs....?

  • https://github.com/terraform-providers/terraform-provider-aws/pull/11958

lorengordon avatar Apr 28 '20 00:04 lorengordon

Can someone possibly give an update to the lack of documentation?

nathantfrank avatar May 17 '20 03:05 nathantfrank

I would be happy to implement this. I think the first thing that needs to be done is figure out which resources need to be created.

Looking at the SDK documentation (https://docs.aws.amazon.com/sdk-for-go/api/service/workmail/) I think that we would probably want to create the following resources:

  • aws_workmail_alias
  • aws_workmail_group
  • aws_workmail_resource
  • aws_workmail_user

And the parameters for each of those would probably closely match the input arguments:

  • https://docs.aws.amazon.com/sdk-for-go/api/service/workmail/#CreateAliasInput
  • https://docs.aws.amazon.com/sdk-for-go/api/service/workmail/#CreateGroupInput
  • https://docs.aws.amazon.com/sdk-for-go/api/service/workmail/#CreateResourceInput
  • https://docs.aws.amazon.com/sdk-for-go/api/service/workmail/#CreateUserInput

If someone from hashicorp or a maintainer for this provider could tell me if I am going in the right direction for this I would be keen to implement something and create a PR.

kurtmc avatar May 18 '20 21:05 kurtmc

Something that's blocking this from progressing is that there is no API/SDK support for creating WorkMail organizations. If anyone has some influence at AWS I would appreciate to see it added to the API and SDK.

Edit:

If you want to help bump this up the AWS priority can you please go to https://console.aws.amazon.com/workmail/v2/home?region=us-east-1#/ and hit the feedback button in the bottom left corner and submit a feature request asking for API support for creating AWS WorkMail organizations.

kurtmc avatar Aug 23 '20 01:08 kurtmc

@kurtmc There is an API for work mail now and supports organizations. https://awscli.amazonaws.com/v2/documentation/api/latest/reference/workmail/index.html https://docs.aws.amazon.com/workmail/latest/APIReference/workmail-api.pdf

Hope that helps

siteopsio avatar Jan 02 '21 00:01 siteopsio

@kurtmc Any updates?

sachin-101 avatar Mar 17 '21 09:03 sachin-101

@sachin-101 API support is looking good now, and I see it's in the SDK: https://docs.aws.amazon.com/sdk-for-go/api/service/workmail/#WorkMail.CreateOrganization

I try implement some of it this weekend.

kurtmc avatar Mar 17 '21 09:03 kurtmc

@kurtmc Yeah I did find it in boto3 (Python SDK) docs as well. https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/workmail.html#WorkMail.Client.create_organization

But it's only in the docs, and while using the SDK, it says AttributeError: 'WorkMail' object has no attribute 'create_organization'.

sachin-101 avatar Mar 17 '21 10:03 sachin-101

@kurtmc let me know if you need any help with this, I can at least test it 😄

Ikana avatar Apr 15 '21 20:04 Ikana

The SDK supports a significant number of new methods since @ruzin opened the original ticket. Yesterday saw AWS add API support for mail domains:

https://awsapichanges.info/archive/changes/818967-workmail.html

The SDK already supports these, and many other, methods:

https://docs.aws.amazon.com/sdk-for-go/api/service/workmail/

Is there a guide for how to implement these things?

robmoss2k avatar Oct 15 '21 10:10 robmoss2k

For anyone who came here initially because they had to verify AWS SES sender email. Email verifications is now via DKIM record

Domain verification in Amazon SES is now based on DomainKeys Identified Mail (DKIM), an email authentication standard that receiving mail servers use to validate an email’s authenticity. Configuring DKIM in your domain’s DNS settings confirms to SES that you’re the identity owner, eliminating the need for TXT records. Domain identities that were verified using TXT records do not need to be reverified; however, we still recommend enabling DKIM signatures to enhance the deliverability of your mail with DKIM-compliant email providers. To access your legacy TXT records, download the record set as a .csv .

nikskiz avatar Dec 02 '21 03:12 nikskiz

@kurtmc happy to take a look and help as well

sidcarter avatar Feb 26 '22 19:02 sidcarter

I started with a PR above. I would love some help on the testing side of things and any other feedback/review/edits that I need to do. I'd love to work on this and have this merged once it's in a good shape.

khadersyed avatar Mar 02 '22 16:03 khadersyed

Not so much interest from the community for this one, huh?

lucasff avatar Sep 21 '22 09:09 lucasff

I have been following this ticket over time and noticed it has been 4 years now and I still don't see any terraform support for creating Workmail organizations. As others stated, this would be highly useful to automate the full creation of accounts under AWS Organizations. The AWS CLI supports WorkMail Organization creation: https://docs.aws.amazon.com/cli/latest/reference/workmail/create-organization.html

DanielViglione avatar Nov 16 '22 04:11 DanielViglione

It would be handy if Terraform provider had support of AWS WorkMail.

sahaqaa avatar May 24 '23 08:05 sahaqaa

push.

kschoenberger avatar Jun 06 '23 08:06 kschoenberger

+1 . It would be nice to have support to AWS Workmail

aleonsan avatar Aug 31 '23 07:08 aleonsan

+1, hoping this issue go further

Losty17 avatar Sep 06 '23 15:09 Losty17

+1 :pray:

g-getsov avatar Sep 30 '23 12:09 g-getsov