Синтезатор cdk8s не выдает ошибок, но создает пустой файл dist\cdk8s.k8s.yaml

Я пробую пример AWS eks с https://github.com/aws-samples/aws-cdk-k8s-dotnet-todo . Мне пришлось обновиться до cdk2.0. Вот обновленные файлы

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()

вебсервис.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])]))))

Мне удалось запустить команду синтезатора cdk8s. Это не дает мне никаких ошибок. Однако он не производит никакого вывода.

Я бы хотел, чтобы синтезатор cdk8s либо выдавал ошибку, либо выдавал результаты. Могу ли я что-нибудь сделать, чтобы показать ошибки или сгенерировать выходные данные? Любая помощь будет оценена по достоинству.

0 ответов

Другие вопросы по тегам