public Stack()

in src/main/java/com/myorg/springbootdeploy/aws/Stack.java [16:48]


    public Stack(@NotNull Construct scope, @NotNull String id) {
        super(scope, id);

        DockerImageAsset image = new DockerImageAsset(this, "Image", DockerImageAssetProps.builder()
                .directory("image")
                .build());

        Cluster cluster = new Cluster(this, "Cluster", ClusterProps.builder()
                .version(KubernetesVersion.V1_21)
                .albController(AlbControllerOptions.builder()
                        .version(AlbControllerVersion.V2_3_0)
                        .build())
                .build());

        Nodegroup nodeGroup = cluster.getDefaultNodegroup();

        if (nodeGroup != null) {
            image.getRepository().grantPull(cluster.getDefaultNodegroup().getRole());
        }

        Manifest manifest = new Manifest(new App(), "SpringBoot", image.getImageUri());
        cluster.addCdk8sChart("manifest", manifest, KubernetesManifestOptions.builder()
                .ingressAlb(true)
                .ingressAlbScheme(AlbScheme.INTERNET_FACING)
                .build());

        String lbAddress = cluster.getIngressLoadBalancerAddress(manifest.getIngress().getName());

        new CfnOutput(this, "LBAddressValue", CfnOutputProps.builder()
                .value(lbAddress + "/greeting")
                .build());

    }