Skip to content

Commit 9d532fa

Browse files
chore: kotlin 2.0
1 parent 4a4ef61 commit 9d532fa

File tree

20 files changed

+91
-62
lines changed

20 files changed

+91
-62
lines changed

build.gradle.kts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import com.ncorti.ktfmt.gradle.tasks.KtfmtFormatTask
44
import com.vanniktech.maven.publish.SonatypeHost
55
import org.gradle.api.tasks.testing.logging.TestExceptionFormat
66
import org.gradle.api.tasks.testing.logging.TestLogEvent
7+
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
78
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
89

910
/*
@@ -67,12 +68,12 @@ kotlin {
6768
}
6869

6970
tasks.withType<KotlinCompile>().configureEach {
70-
kotlinOptions {
71-
jvmTarget = "21"
72-
freeCompilerArgs += listOf(
71+
compilerOptions {
72+
jvmTarget = JvmTarget.JVM_21
73+
freeCompilerArgs.addAll( listOf(
7374
"-Xjsr305=strict",
7475
"-Xjdk-release=21"
75-
)
76+
))
7677
}
7778
}
7879

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
version=0.9.4
1+
version=010.0
22
group=io.cloudshiftdev.kotlin-cdk-extensions
33

44
org.gradle.vfs.watch=true

gradle/libs.versions.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Reference: https://docs.gradle.org/current/userguide/platforms.html
22

33
[versions]
4-
kotlin = "1.9.25"
4+
kotlin = "2.0.21"
55

66
[plugins]
77
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
@@ -11,16 +11,16 @@ vanniktech-maven-publish = { id = "com.vanniktech.maven.publish", version = "0.3
1111
ktfmt = { id = "com.ncorti.ktfmt.gradle", version = "0.21.0" }
1212

1313
[libraries]
14-
cloudshift-kotlin-cdk-wrapper = { module = "io.cloudshiftdev.kotlin-cdk-wrapper:kotlin-cdk-wrapper", version = "0.9.0" }
14+
cloudshift-kotlin-cdk-wrapper = { module = "io.cloudshiftdev.kotlin-cdk-wrapper:kotlin-cdk-wrapper", version = "0.10.0" }
1515
pearx-kasechange = { module = "net.pearx.kasechange:kasechange", version = "1.4.1" }
1616
kotlinx-serialization = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json-jvm", version = "1.7.3" }
1717

18-
google-guava = { module = "com.google.guava:guava", version = "33.3.1-jre" }
18+
google-guava = { module = "com.google.guava:guava", version = "33.4.0-jre" }
1919
seancfoley-ipaddress = { module = "com.github.seancfoley:ipaddress", version = "5.5.1" }
2020
jayway-jsonpath= { module = "com.jayway.jsonpath:json-path", version = "2.9.0" }
2121
slf4j-simple = { module = "org.slf4j:slf4j-simple", version = "2.0.16" }
2222

23-
oshai-kotlin-logging = { module = "io.github.oshai:kotlin-logging-jvm", version = "5.1.4" }
23+
oshai-kotlin-logging = { module = "io.github.oshai:kotlin-logging-jvm", version = "7.0.3" }
2424

2525

2626
##### Testing libraries

src/main/kotlin/io/cloudshiftdev/awscdklib/core/Extensions.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ public fun Construct.uniqueId(): String = Names.uniqueId(this)
2323

2424
public inline fun <reified T : CfnResource> Construct.addPropertyOverride(
2525
property: String,
26-
value: String
26+
value: String,
2727
) {
2828
val resource = node().children().filterIsInstance<T>().first()
2929
resource.addPropertyOverride(property, value)
@@ -57,12 +57,12 @@ public fun resourceArn(scope: Construct, block: (ArnComponents.Builder).() -> Un
5757

5858
public inline fun <reified T : Construct> Construct.withSingleton(
5959
id: String,
60-
block: (String) -> T
60+
block: (String) -> T,
6161
): T = node().tryFindChild(id) as? T ?: block(id)
6262

6363
public inline fun <reified T> Construct.withSingleton(
6464
predicate: (T) -> Boolean = { true },
65-
block: () -> T
65+
block: () -> T,
6666
): T {
6767
return allChildren().filterIsInstance<T>().firstOrNull(predicate) ?: block()
6868
}

src/main/kotlin/io/cloudshiftdev/awscdklib/customresource/Extensions.kt

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,9 @@ import io.cloudshiftdev.awscdklib.iam.PolicyStatementsBuilder
99
public fun AwsCustomResource.Builder.policyStatements(block: (PolicyStatementsBuilder).() -> Unit) {
1010
policy(
1111
AwsCustomResourcePolicy.fromStatements(
12-
io.cloudshiftdev.awscdklib.iam.policyStatements(block)))
12+
io.cloudshiftdev.awscdklib.iam.policyStatements(block)
13+
)
14+
)
1315
}
1416

1517
public fun AwsCustomResource.Builder.policyStatement(block: (PolicyStatement.Builder).() -> Unit) {
@@ -19,5 +21,7 @@ public fun AwsCustomResource.Builder.policyStatement(block: (PolicyStatement.Bui
1921
public fun AwsCustomResource.Builder.policyFromSdkCalls(vararg resources: String) {
2022
policy(
2123
AwsCustomResourcePolicy.fromSdkCalls(
22-
SdkCallsPolicyOptions { resources(resources.toList()) }))
24+
SdkCallsPolicyOptions { resources(resources.toList()) }
25+
)
26+
)
2327
}

src/main/kotlin/io/cloudshiftdev/awscdklib/iam/IamExtensions.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public fun PolicyStatement.Builder.resource(arn: String): Unit = resources(arn)
1818

1919
public fun PolicyStatement.Builder.resourceArn(
2020
scope: Construct,
21-
block: (ArnComponents.Builder).() -> Unit
21+
block: (ArnComponents.Builder).() -> Unit,
2222
): Unit = resources(io.cloudshiftdev.awscdklib.core.resourceArn(scope, block))
2323

2424
public fun PolicyStatement.Builder.action(action: String): Unit = actions(action)
@@ -29,7 +29,7 @@ public fun PolicyStatementProps.Builder.resource(arn: String): Unit = resources(
2929

3030
public fun PolicyStatementProps.Builder.resourceArn(
3131
scope: Construct,
32-
block: (ArnComponents.Builder).() -> Unit
32+
block: (ArnComponents.Builder).() -> Unit,
3333
): Unit = resources(io.cloudshiftdev.awscdklib.core.resourceArn(scope, block))
3434

3535
public fun PolicyStatementProps.Builder.action(action: String): Unit = actions(action)

src/main/kotlin/io/cloudshiftdev/awscdklib/network/firewall/NetworkFirewall.kt

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,11 @@ public class FirewallPolicy(
5252
CfnFirewallPolicy.FirewallPolicyProperty {
5353
statelessDefaultActions(statelessDefaultActions.map { it.value })
5454
statelessFragmentDefaultActions(
55-
statelessFragmentDefaultActions.map { it.value })
55+
statelessFragmentDefaultActions.map { it.value }
56+
)
5657
statefulDefaultActions(statefulDefaultActions.map { it.value })
57-
})
58+
}
59+
)
5860
}
5961

6062
firewallPolicyId = policy.attrFirewallPolicyId()
@@ -68,7 +70,7 @@ public class NetworkFirewall(
6870
vpc: Vpc,
6971
subnetMappings: SubnetSelection,
7072
firewallName: String,
71-
firewallPolicy: FirewallPolicy
73+
firewallPolicy: FirewallPolicy,
7274
) : Construct(scope, id) {
7375
public val endpointIds: List<String>
7476
public val firewallArn: String

src/main/kotlin/io/cloudshiftdev/awscdklib/network/securenetwork/RouterProvider.kt

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ internal abstract class BaseRouterProvider(protected val routerSubnet: SubnetSel
2929
internal class NatRouterProvider(
3030
routerSubnet: SubnetSelection,
3131
private val natGatewayCount: Int,
32-
private val natProvider: NatProvider
32+
private val natProvider: NatProvider,
3333
) : BaseRouterProvider(routerSubnet), NatGatewayConfigurer {
3434

3535
override fun configure(props: VpcProps.Builder) {
@@ -58,7 +58,8 @@ internal class EgressNetworkFirewallRouterProvider(
5858
id = "FirewallPolicy",
5959
// TODO: make these configurable
6060
statelessDefaultActions = listOf(StatelessStandardAction.PASS),
61-
statelessFragmentDefaultActions = listOf(StatelessStandardAction.PASS))
61+
statelessFragmentDefaultActions = listOf(StatelessStandardAction.PASS),
62+
)
6263

6364
val firewall =
6465
NetworkFirewall(
@@ -67,7 +68,8 @@ internal class EgressNetworkFirewallRouterProvider(
6768
vpc = vpc,
6869
subnetMappings = routerSubnet,
6970
firewallName = "Firewall",
70-
firewallPolicy = firewallPolicy)
71+
firewallPolicy = firewallPolicy,
72+
)
7173

7274
val protectedSubnets =
7375
egressSubnets.flatMap { vpc.selectSubnets(it).subnets() }.map { it as Subnet }
@@ -78,7 +80,7 @@ internal class EgressNetworkFirewallRouterProvider(
7880
val az: String,
7981
val endpointId: String,
8082
val protectedSubnets: List<Subnet>,
81-
val ingressSubnets: List<Subnet>
83+
val ingressSubnets: List<Subnet>,
8284
)
8385

8486
val azMap = firewall.availabilityZoneEndpointMap
@@ -90,7 +92,8 @@ internal class EgressNetworkFirewallRouterProvider(
9092
endpointId = azEntry.value,
9193
protectedSubnets =
9294
protectedSubnets.filter { it.availabilityZone() == azEntry.key },
93-
ingressSubnets = ingress.filter { it.availabilityZone() == azEntry.key })
95+
ingressSubnets = ingress.filter { it.availabilityZone() == azEntry.key },
96+
)
9497
}
9598
azRouteInfo.forEach { routeInfo ->
9699
routeInfo.protectedSubnets.forEach { protectedSubnet ->
@@ -116,7 +119,9 @@ internal class EgressNetworkFirewallRouterProvider(
116119
mapOf(
117120
"DestinationCidrBlock" to vpc.vpcCidrBlock(),
118121
"RouteTableId" to routeTableId,
119-
"VpcEndpointId" to routeInfo.endpointId))
122+
"VpcEndpointId" to routeInfo.endpointId,
123+
)
124+
)
120125
physicalResourceId(PhysicalResourceId.of(routeTableId))
121126
}
122127
onUpdate {
@@ -126,7 +131,9 @@ internal class EgressNetworkFirewallRouterProvider(
126131
mapOf(
127132
"DestinationCidrBlock" to vpc.vpcCidrBlock(),
128133
"RouteTableId" to routeTableId,
129-
"VpcEndpointId" to routeInfo.endpointId))
134+
"VpcEndpointId" to routeInfo.endpointId,
135+
)
136+
)
130137
physicalResourceId(PhysicalResourceId.of(routeTableId))
131138
}
132139
onDelete {
@@ -136,7 +143,9 @@ internal class EgressNetworkFirewallRouterProvider(
136143
mapOf(
137144
"DestinationCidrBlock" to vpc.vpcCidrBlock(),
138145
"RouteTableId" to routeTableId,
139-
"LocalTarget" to true))
146+
"LocalTarget" to true,
147+
)
148+
)
140149
physicalResourceId(PhysicalResourceId.of(routeTableId))
141150
}
142151
installLatestAwsSdk(false)
@@ -147,8 +156,10 @@ internal class EgressNetworkFirewallRouterProvider(
147156
service("ec2")
148157
resource("route-table")
149158
resourceName(routeTableId)
150-
})
151-
})
159+
}
160+
)
161+
}
162+
)
152163
}
153164
}
154165
}

src/main/kotlin/io/cloudshiftdev/awscdklib/network/securenetwork/SecureNetwork.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,8 @@ public class SecureNetwork(scope: Construct, id: String, block: (SecureNetworkBu
6161
LogFormat.PKT_SRC_AWS_SERVICE,
6262
LogFormat.PKT_DST_AWS_SERVICE,
6363
LogFormat.FLOW_DIRECTION,
64-
LogFormat.TRAFFIC_PATH)
64+
LogFormat.TRAFFIC_PATH,
65+
)
6566
}
6667
}
6768

src/main/kotlin/io/cloudshiftdev/awscdklib/network/securenetwork/SecureNetworkBuilder.kt

Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,8 @@ internal class SecureNetworkBuilderImpl : SecureNetworkBuilder {
8282
defaultInstanceTenancy = this.defaultInstanceTenancy,
8383
createInternetGateway = this.createInternetGateway,
8484
subnetGroups = subnetsBuilder.build(),
85-
routerProviders = routersBuilder.build())
85+
routerProviders = routersBuilder.build(),
86+
)
8687
}
8788

8889
override fun availabilityZones(azs: List<String>) {
@@ -153,64 +154,64 @@ internal data class SecureNetworkProps(
153154
val availabilityZones: List<String>,
154155
val createInternetGateway: Boolean,
155156
val subnetGroups: List<SubnetGroupProps>,
156-
val routerProviders: List<RouterProvider>
157+
val routerProviders: List<RouterProvider>,
157158
)
158159

159160
@NetworkDslMarker
160161
public interface SubnetsBuilder {
161162

162163
public fun publicSubnetGroup(
163164
name: String = "Public",
164-
block: (SubnetGroupBuilder).() -> Unit = {}
165+
block: (SubnetGroupBuilder).() -> Unit = {},
165166
) {
166167
subnetGroup(name, SubnetType.PUBLIC, block)
167168
}
168169

169170
public fun publicSubnetGroup(
170171
name: SubnetGroupName,
171-
block: (SubnetGroupBuilder).() -> Unit = {}
172+
block: (SubnetGroupBuilder).() -> Unit = {},
172173
) {
173174
subnetGroup(name, SubnetType.PUBLIC, block)
174175
}
175176

176177
public fun privateSubnetGroup(
177178
name: String = "Private",
178-
block: (SubnetGroupBuilder).() -> Unit = {}
179+
block: (SubnetGroupBuilder).() -> Unit = {},
179180
) {
180181
subnetGroup(name, SubnetType.PRIVATE_WITH_EGRESS, block)
181182
}
182183

183184
public fun privateSubnetGroup(
184185
name: SubnetGroupName,
185-
block: (SubnetGroupBuilder).() -> Unit = {}
186+
block: (SubnetGroupBuilder).() -> Unit = {},
186187
) {
187188
subnetGroup(name, SubnetType.PRIVATE_WITH_EGRESS, block)
188189
}
189190

190191
public fun isolatedSubnetGroup(
191192
name: String = "Isolated",
192-
block: (SubnetGroupBuilder).() -> Unit = {}
193+
block: (SubnetGroupBuilder).() -> Unit = {},
193194
) {
194195
subnetGroup(name, SubnetType.PRIVATE_ISOLATED, block)
195196
}
196197

197198
public fun isolatedSubnetGroup(
198199
name: SubnetGroupName,
199-
block: (SubnetGroupBuilder).() -> Unit = {}
200+
block: (SubnetGroupBuilder).() -> Unit = {},
200201
) {
201202
subnetGroup(name, SubnetType.PRIVATE_ISOLATED, block)
202203
}
203204

204205
public fun subnetGroup(
205206
name: String,
206207
type: SubnetType,
207-
block: (SubnetGroupBuilder).() -> Unit
208+
block: (SubnetGroupBuilder).() -> Unit,
208209
): Unit = subnetGroup(name.toSubnetGroupName(), type, block)
209210

210211
public fun subnetGroup(
211212
name: SubnetGroupName,
212213
type: SubnetType,
213-
block: (SubnetGroupBuilder).() -> Unit
214+
block: (SubnetGroupBuilder).() -> Unit,
214215
)
215216
}
216217

@@ -222,7 +223,7 @@ internal class SubnetsBuilderImpl : SubnetsBuilder {
222223
override fun subnetGroup(
223224
name: SubnetGroupName,
224225
type: SubnetType,
225-
block: (SubnetGroupBuilder).() -> Unit
226+
block: (SubnetGroupBuilder).() -> Unit,
226227
) {
227228
val effectiveType =
228229
when (type) {
@@ -343,7 +344,8 @@ internal class NatGatewayRouterBuilderImpl : BaseNatRouterBuilder(), NatGatewayR
343344
return NatRouterProvider(
344345
routerSubnet = routerSubnet ?: SubnetPredicates.publicSubnets(),
345346
natGatewayCount = natGateways,
346-
NatProvider.gateway(props))
347+
NatProvider.gateway(props),
348+
)
347349
}
348350
}
349351

@@ -358,7 +360,8 @@ internal class NatInstanceRouterBuilderImpl : BaseNatRouterBuilder(), NatInstanc
358360
return NatRouterProvider(
359361
routerSubnet = routerSubnet ?: SubnetPredicates.publicSubnets(),
360362
natGatewayCount = natGateways,
361-
NatProvider.instanceV2(props))
363+
NatProvider.instanceV2(props),
364+
)
362365
}
363366
}
364367

@@ -368,7 +371,10 @@ internal class NetworkFirewallRouterBuilderImpl :
368371

369372
fun build(): RouterProvider {
370373
return EgressNetworkFirewallRouterProvider(
371-
routerSubnet ?: SubnetPredicates.privateSubnets(), routableSubnets, egressSubnets)
374+
routerSubnet ?: SubnetPredicates.privateSubnets(),
375+
routableSubnets,
376+
egressSubnets,
377+
)
372378
}
373379

374380
override fun egressSubnets(subnetSelections: List<SubnetSelection>) {

0 commit comments

Comments
 (0)