Skip to content

Commit

Permalink
chore(glue): add missing connection types (#32600)
Browse files Browse the repository at this point in the history
### Issue # (if applicable)

N/A

### Reason for this change

Missing Glue connection types.

Ref: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-connectiontype

```
VIEW_VALIDATION_REDSHIFT - Designates a connection used for view validation by Amazon Redshift.
VIEW_VALIDATION_ATHENA - Designates a connection used for view validation by Amazon Athena.
...
FACEBOOKADS - Designates a connection to Facebook Ads.
GOOGLEADS - Designates a connection to Google Ads.
GOOGLESHEETS - Designates a connection to Google Sheets.
GOOGLEANALYTICS4 - Designates a connection to Google Analytics 4.
HUBSPOT - Designates a connection to HubSpot.
INSTAGRAMADS - Designates a connection to Instagram Ads.
INTERCOM - Designates a connection to Intercom.
JIRACLOUD - Designates a connection to Jira Cloud.
MARKETO - Designates a connection to Adobe Marketo Engage.
NETSUITEERP - Designates a connection to Oracle NetSuite.
SALESFORCE - Designates a connection to Salesforce using OAuth authentication.
SALESFORCEMARKETINGCLOUD - Designates a connection to Salesforce Marketing Cloud.
SALESFORCEPARDOT - Designates a connection to Salesforce Marketing Cloud Account Engagement (MCAE).
SAPODATA - Designates a connection to SAP OData.
SERVICENOW - Designates a connection to ServiceNow.
SLACK - Designates a connection to Slack.
SNAPCHATADS - Designates a connection to Snapchat Ads.
STRIPE - Designates a connection to Stripe.
ZENDESK - Designates a connection to Zendesk.
ZOHOCRM - Designates a connection to Zoho CRM.
```


### Description of changes
Add enums.


### Describe any new or updated permissions being added
Nothing.
<!— What new or updated IAM permissions are needed to support the changes being introduced ? -->


### Description of how you validated changes
Just add enums, so I've not added a test.


### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
  • Loading branch information
mazyu36 authored Dec 24, 2024
1 parent 61626dc commit 44360cc
Showing 1 changed file with 112 additions and 2 deletions.
114 changes: 112 additions & 2 deletions packages/@aws-cdk/aws-glue-alpha/lib/connection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,16 @@ export class ConnectionType {
*/
public static readonly MONGODB = new ConnectionType('MONGODB');

/**
* Designates a connection used for view validation by Amazon Redshift.
*/
public static readonly VIEW_VALIDATION_REDSHIFT = new ConnectionType('VIEW_VALIDATION_REDSHIFT');

/**
* Designates a connection used for view validation by Amazon Athena.
*/
public static readonly VIEW_VALIDATION_ATHENA = new ConnectionType('VIEW_VALIDATION_ATHENA');

/**
* Designates a network connection to a data source within an Amazon Virtual Private Cloud environment (Amazon VPC).
*/
Expand All @@ -45,6 +55,106 @@ export class ConnectionType {
*/
public static readonly CUSTOM = new ConnectionType('CUSTOM');

/**
* Designates a connection to Facebook Ads.
*/
public static readonly FACEBOOKADS = new ConnectionType('FACEBOOKADS');

/**
* Designates a connection to Google Ads.
*/
public static readonly GOOGLEADS = new ConnectionType('GOOGLEADS');

/**
* Designates a connection to Google Sheets.
*/
public static readonly GOOGLESHEETS = new ConnectionType('GOOGLESHEETS');

/**
* Designates a connection to Google Analytics 4.
*/
public static readonly GOOGLEANALYTICS4 = new ConnectionType('GOOGLEANALYTICS4');

/**
* Designates a connection to HubSpot.
*/
public static readonly HUBSPOT = new ConnectionType('HUBSPOT');

/**
* Designates a connection to Instagram Ads.
*/
public static readonly INSTAGRAMADS = new ConnectionType('INSTAGRAMADS');

/**
* Designates a connection to Intercom.
*/
public static readonly INTERCOM = new ConnectionType('INTERCOM');

/**
* Designates a connection to Jira Cloud.
*/
public static readonly JIRACLOUD = new ConnectionType('JIRACLOUD');

/**
* Designates a connection to Adobe Marketo Engage.
*/
public static readonly MARKETO = new ConnectionType('MARKETO');

/**
* Designates a connection to Oracle NetSuite.
*/
public static readonly NETSUITEERP = new ConnectionType('NETSUITEERP');

/**
* Designates a connection to Salesforce using OAuth authentication.
*/
public static readonly SALESFORCE = new ConnectionType('SALESFORCE');

/**
* Designates a connection to Salesforce Marketing Cloud.
*/
public static readonly SALESFORCEMARKETINGCLOUD = new ConnectionType('SALESFORCEMARKETINGCLOUD');

/**
* Designates a connection to Salesforce Marketing Cloud Account Engagement (MCAE).
*/
public static readonly SALESFORCEPARDOT = new ConnectionType('SALESFORCEPARDOT');

/**
* Designates a connection to SAP OData.
*/
public static readonly SAPODATA = new ConnectionType('SAPODATA');

/**
* Designates a connection to ServiceNow.
*/
public static readonly SERVICENOW = new ConnectionType('SERVICENOW');

/**
* Designates a connection to Slack.
*/
public static readonly SLACK = new ConnectionType('SLACK');

/**
* Designates a connection to Snapchat Ads.
*/
public static readonly SNAPCHATADS = new ConnectionType('SNAPCHATADS');

/**
* Designates a connection to Stripe.
*/
public static readonly STRIPE = new ConnectionType('STRIPE');

/**
* Designates a connection to Zendesk.
*/
public static readonly ZENDESK = new ConnectionType('ZENDESK');

/**
* Designates a connection to Zoho CRM.
*/
public static readonly ZOHOCRM = new ConnectionType('ZOHOCRM');

/**
* The name of this ConnectionType, as expected by Connection resource.
*/
Expand Down Expand Up @@ -169,7 +279,7 @@ export class Connection extends cdk.Resource implements IConnection {
return new Import(scope, id);
}

private static buildConnectionArn(scope: constructs.Construct, connectionName: string) : string {
private static buildConnectionArn(scope: constructs.Construct, connectionName: string): string {
return cdk.Stack.of(scope).formatArn({
service: 'glue',
resource: 'connection',
Expand All @@ -187,7 +297,7 @@ export class Connection extends cdk.Resource implements IConnection {
*/
public readonly connectionName: string;

private readonly properties: {[key: string]: string};
private readonly properties: { [key: string]: string };

constructor(scope: constructs.Construct, id: string, props: ConnectionProps) {
super(scope, id, {
Expand Down

0 comments on commit 44360cc

Please sign in to comment.