Interface BaseServiceProps

All Superinterfaces:
BaseServiceOptions, software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
BaseServiceProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.104.0 (build e79254c)", date="2024-12-11T23:26:32.647Z") @Stability(Stable) public interface BaseServiceProps extends software.amazon.jsii.JsiiSerializable, BaseServiceOptions
Complete base service properties that are required to be supplied by the implementation of the BaseService class.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.*;
 import software.amazon.awscdk.services.ecs.*;
 import software.amazon.awscdk.services.servicediscovery.*;
 Cluster cluster;
 ContainerDefinition containerDefinition;
 LogDriver logDriver;
 INamespace namespace;
 ServiceManagedVolume serviceManagedVolume;
 TaskDefinitionRevision taskDefinitionRevision;
 BaseServiceProps baseServiceProps = BaseServiceProps.builder()
         .cluster(cluster)
         .launchType(LaunchType.EC2)
         // the properties below are optional
         .capacityProviderStrategies(List.of(CapacityProviderStrategy.builder()
                 .capacityProvider("capacityProvider")
                 // the properties below are optional
                 .base(123)
                 .weight(123)
                 .build()))
         .circuitBreaker(DeploymentCircuitBreaker.builder()
                 .enable(false)
                 .rollback(false)
                 .build())
         .cloudMapOptions(CloudMapOptions.builder()
                 .cloudMapNamespace(namespace)
                 .container(containerDefinition)
                 .containerPort(123)
                 .dnsRecordType(DnsRecordType.A)
                 .dnsTtl(Duration.minutes(30))
                 .failureThreshold(123)
                 .name("name")
                 .build())
         .deploymentAlarms(DeploymentAlarmConfig.builder()
                 .alarmNames(List.of("alarmNames"))
                 // the properties below are optional
                 .behavior(AlarmBehavior.ROLLBACK_ON_ALARM)
                 .build())
         .deploymentController(DeploymentController.builder()
                 .type(DeploymentControllerType.ECS)
                 .build())
         .desiredCount(123)
         .enableECSManagedTags(false)
         .enableExecuteCommand(false)
         .healthCheckGracePeriod(Duration.minutes(30))
         .maxHealthyPercent(123)
         .minHealthyPercent(123)
         .propagateTags(PropagatedTagSource.SERVICE)
         .serviceConnectConfiguration(ServiceConnectProps.builder()
                 .logDriver(logDriver)
                 .namespace("namespace")
                 .services(List.of(ServiceConnectService.builder()
                         .portMappingName("portMappingName")
                         // the properties below are optional
                         .discoveryName("discoveryName")
                         .dnsName("dnsName")
                         .idleTimeout(Duration.minutes(30))
                         .ingressPortOverride(123)
                         .perRequestTimeout(Duration.minutes(30))
                         .port(123)
                         .build()))
                 .build())
         .serviceName("serviceName")
         .taskDefinitionRevision(taskDefinitionRevision)
         .volumeConfigurations(List.of(serviceManagedVolume))
         .build();