-
Notifications
You must be signed in to change notification settings - Fork 17
/
BaseServiceProps.go
69 lines (66 loc) · 2.47 KB
/
BaseServiceProps.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package awsservicediscovery
// Basic props needed to create a service in a given namespace.
//
// Used by HttpNamespace.createService
//
// Example:
// import "github.com/aws/aws-cdk-go/awscdk"
// import "github.com/aws/aws-cdk-go/awscdk"
//
// app := cdk.NewApp()
// stack := cdk.NewStack(app, jsii.String("aws-servicediscovery-integ"))
//
// namespace := servicediscovery.NewHttpNamespace(stack, jsii.String("MyNamespace"), &HttpNamespaceProps{
// Name: jsii.String("MyHTTPNamespace"),
// })
//
// service1 := namespace.CreateService(jsii.String("NonIpService"), &BaseServiceProps{
// Description: jsii.String("service registering non-ip instances"),
// })
//
// service1.RegisterNonIpInstance(jsii.String("NonIpInstance"), &NonIpInstanceBaseProps{
// CustomAttributes: map[string]*string{
// "arn": jsii.String("arn:aws:s3:::mybucket"),
// },
// })
//
// service2 := namespace.CreateService(jsii.String("IpService"), &BaseServiceProps{
// Description: jsii.String("service registering ip instances"),
// HealthCheck: &HealthCheckConfig{
// Type: servicediscovery.HealthCheckType_HTTP,
// ResourcePath: jsii.String("/check"),
// },
// })
//
// service2.RegisterIpInstance(jsii.String("IpInstance"), &IpInstanceBaseProps{
// Ipv4: jsii.String("54.239.25.192"),
// })
//
// app.Synth()
//
type BaseServiceProps struct {
// Structure containing failure threshold for a custom health checker.
//
// Only one of healthCheckConfig or healthCheckCustomConfig can be specified.
// See: https://docs.aws.amazon.com/cloud-map/latest/api/API_HealthCheckCustomConfig.html
// Default: none.
//
CustomHealthCheck *HealthCheckCustomConfig `field:"optional" json:"customHealthCheck" yaml:"customHealthCheck"`
// A description of the service.
// Default: none.
//
Description *string `field:"optional" json:"description" yaml:"description"`
// Settings for an optional health check.
//
// If you specify health check settings, AWS Cloud Map associates the health
// check with the records that you specify in DnsConfig. Only one of healthCheckConfig or healthCheckCustomConfig can
// be specified. Not valid for PrivateDnsNamespaces. If you use healthCheck, you can only register IP instances to
// this service.
// Default: none.
//
HealthCheck *HealthCheckConfig `field:"optional" json:"healthCheck" yaml:"healthCheck"`
// A name for the Service.
// Default: CloudFormation-generated name.
//
Name *string `field:"optional" json:"name" yaml:"name"`
}