I am trying an AWS eks example from https://github.com/aws-samples/aws-cdk-k8s-dotnet-todo . I had to update to cdk2.0. Here are the updated files
main.py
#!/usr/bin/env python
from constructs import Construct
from cdk8s import App, Chart
from imports import k8s
from webservice import WebService
class MyChart(Chart):
def __init__(self, scope: Construct, ns: str):
super().__init__(scope, ns)
# define resources here
WebService(self, 'todo-app', image='xxxxxxxxxx.dkr.ecr.us-west-2.amazonaws.com/todo-app:latest', replicas=1)
app = App()
MyChart(app, "cdk8s")
app.synth()
webservice.py
from constructs import Construct, Node
import typing
#from imports import k8s
#from k8s.client import NotFound
from k8s.models.common import ObjectMeta
from k8s.models.service import Service, ServicePort, ServiceSpec
from k8s.models.deployment import Deployment, DeploymentSpec, LabelSelector, RollingUpdateDeployment, \
DeploymentStrategy
from k8s.models.pod import ContainerPort, Container, LocalObjectReference, Probe, HTTPGetAction, TCPSocketAction, \
PodTemplateSpec, PodSpec
class WebService(Construct):
def __init__(self, scope: Construct, ns: str, *,
image: str,
replicas: int = 1,
port: int = 80,
container_port: int = 8080):
super().__init__(scope, ns)
label = {'app': 'sandbox'}
svcmetadata = ObjectMeta(name="service", labels=label)
Service(metadata=svcmetadata,
spec=ServiceSpec(
type='LoadBalancer',
ports=[ServicePort(port=port, targetPort=container_port)],
selector=label))
depmetadata = ObjectMeta(name="deployment", labels=label)
container_port = ContainerPort(name="http8080", containerPort=container_port)
Deployment(metadata=depmetadata,
spec=DeploymentSpec(
replicas=replicas,
selector=LabelSelector(matchLabels=label),
template=PodTemplateSpec(
metadata=ObjectMeta(labels=label),
spec=PodSpec(
containers=[
Container(
name='app',
image=image,
ports=[container_port])]))))
I was able to run the cdk8s synth command. It does not give me any errors. However, it does not produce any output.
I would like the cdk8s synth to either error out or produce the results. Is there anything I can do to show me errors or generate the output? Any help would be appreciated.