github.com/myhau/pulumi/pkg/v3@v3.70.2-0.20221116134521-f2775972e587/codegen/testing/test/testdata/transpiled_examples/kubernetes-pp/python/kubernetes.py (about)

     1  import pulumi
     2  import pulumi_kubernetes as kubernetes
     3  
     4  config = pulumi.Config()
     5  hostname = config.get("hostname")
     6  if hostname is None:
     7      hostname = "example.com"
     8  nginx_demo = kubernetes.core.v1.Namespace("nginx-demo")
     9  app = kubernetes.apps.v1.Deployment("app",
    10      metadata=kubernetes.meta.v1.ObjectMetaArgs(
    11          namespace=nginx_demo.metadata.name,
    12      ),
    13      spec=kubernetes.apps.v1.DeploymentSpecArgs(
    14          selector=kubernetes.meta.v1.LabelSelectorArgs(
    15              match_labels={
    16                  "app.kubernetes.io/name": "nginx-demo",
    17              },
    18          ),
    19          replicas=1,
    20          template=kubernetes.core.v1.PodTemplateSpecArgs(
    21              metadata=kubernetes.meta.v1.ObjectMetaArgs(
    22                  labels={
    23                      "app.kubernetes.io/name": "nginx-demo",
    24                  },
    25              ),
    26              spec=kubernetes.core.v1.PodSpecArgs(
    27                  containers=[kubernetes.core.v1.ContainerArgs(
    28                      name="app",
    29                      image="nginx:1.15-alpine",
    30                  )],
    31              ),
    32          ),
    33      ))
    34  service = kubernetes.core.v1.Service("service",
    35      metadata=kubernetes.meta.v1.ObjectMetaArgs(
    36          namespace=nginx_demo.metadata.name,
    37          labels={
    38              "app.kubernetes.io/name": "nginx-demo",
    39          },
    40      ),
    41      spec=kubernetes.core.v1.ServiceSpecArgs(
    42          type="ClusterIP",
    43          ports=[kubernetes.core.v1.ServicePortArgs(
    44              port=80,
    45              target_port=80,
    46              protocol="TCP",
    47          )],
    48          selector={
    49              "app.kubernetes.io/name": "nginx-demo",
    50          },
    51      ))
    52  ingress = kubernetes.networking.v1.Ingress("ingress",
    53      metadata=kubernetes.meta.v1.ObjectMetaArgs(
    54          namespace=nginx_demo.metadata.name,
    55      ),
    56      spec=kubernetes.networking.v1.IngressSpecArgs(
    57          rules=[kubernetes.networking.v1.IngressRuleArgs(
    58              host=hostname,
    59              http=kubernetes.networking.v1.HTTPIngressRuleValueArgs(
    60                  paths=[kubernetes.networking.v1.HTTPIngressPathArgs(
    61                      path="/",
    62                      path_type="Prefix",
    63                      backend=kubernetes.networking.v1.IngressBackendArgs(
    64                          service=kubernetes.networking.v1.IngressServiceBackendArgs(
    65                              name=service.metadata.name,
    66                              port=kubernetes.networking.v1.ServiceBackendPortArgs(
    67                                  number=80,
    68                              ),
    69                          ),
    70                      ),
    71                  )],
    72              ),
    73          )],
    74      ))