Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Community::Support::SupportLevel #44

Open
OlafConijn opened this issue Dec 3, 2020 · 0 comments
Open

Community::Support::SupportLevel #44

OlafConijn opened this issue Dec 3, 2020 · 0 comments
Labels
enhancement New feature or request

Comments

@OlafConijn
Copy link
Member

OlafConijn commented Dec 3, 2020

Resource should allow settings the SupportLevel for an Account within the organization through a support ticket.

This because it is currently not possible to automate this process. org-formation, but also ADF use this mechanism to automate setting support level on new member-accounts.

Type: Community::Support::SupportLevel
Properties: 
  SupportLevel: 'developer' | 'business' | 'enterprise'
  AccountId: String # \d{12}
  CCEmailAddresses: List<String> # list of emailaddresses need to be included on the support case.

Type must be deployed to master account, where the support case will be created as follows:
The Support API is only supported on AWS Accounts that have business or enterprise support enabled. Resource will expect to fail if the support level is less.

 const createCaseRequest: CreateCaseRequest = {
    subject: `Enable ${resource.supportLevel} Support for account: ${accountId}`,
    communicationBody: `Hi AWS,
Please enable ${resource.supportLevel} on account ${accountId}.
This case was created automatically - please resolve when done.

Thank you!
    `,
    serviceCode: 'customer-account',
    categoryCode: 'other-account-issues',
    severityCode: 'low',
    issueType: 'customer-service',
    ccEmailAddresses: [resource.rootEmail],
};

Intended use using org-formation syntax:

DevelopmentAccountsHaveDeveloperSupport:
  Type: Community::Support::SupportLevel
  OrganizationBinding: !Ref masterAccountBinding
  ForeachAccount: !Ref developmentAccountsBinding
  Properties: 
    SupportLevel: 'developer'
    AccountId: !Ref CurrentAccount
    CCEmailAdresses: 
    - [email protected]
    - !GetAtt CurrentAccount.RootEmail

ProductionsAccountsHaveBusinessSupport:
  Type: Community::Support::SupportLevel
  OrganizationBinding: !Ref masterAccountBinding
  ForeachAccount: !Ref productionAccountsBinding
  Properties: 
    SupportLevel: 'business'
    AccountId: !Ref CurrentAccount
    CCEmailAdresses: 
    - [email protected]
    - !GetAtt CurrentAccount.RootEmail
@OlafConijn OlafConijn added the enhancement New feature or request label Dec 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant