sparse-intern-71089
09/20/2021, 4:53 PMprehistoric-activity-61023
09/20/2021, 5:04 PMpulumi_kubernetes.networking.v1.outputs
prehistoric-activity-61023
09/20/2021, 5:04 PMTypeError: __init__() takes 1 positional argument but 2 positional arguments (and 2 keyword-only arguments) were given
prehistoric-activity-61023
09/20/2021, 5:05 PMprehistoric-activity-61023
09/20/2021, 5:13 PMimport pulumi
from pulumi_kubernetes.apps.v1 import Deployment, DeploymentSpecArgs
from pulumi_kubernetes.core.v1 import (
ContainerArgs,
PodSpecArgs,
PodTemplateSpecArgs,
Service,
ServicePortArgs,
ServiceSpecArgs,
)
from pulumi_kubernetes.meta.v1 import LabelSelectorArgs, ObjectMetaArgs
from pulumi_kubernetes.networking.v1 import (
HTTPIngressPathArgs,
HTTPIngressRuleValueArgs,
Ingress,
IngressBackendArgs,
IngressRuleArgs,
IngressServiceBackendArgs,
IngressSpecArgs,
ServiceBackendPortArgs,
)
app_labels = {"app": "strapi"}
deployment = Deployment(
"strapi",
spec=DeploymentSpecArgs(
selector=LabelSelectorArgs(match_labels=app_labels),
replicas=2,
template=PodTemplateSpecArgs(
metadata=ObjectMetaArgs(labels=app_labels),
spec=PodSpecArgs(
containers=[ContainerArgs(name="nginx", image="strapi/strapi")]
),
),
),
)
pulumi.export("name", deployment.metadata["name"])
strapiService = Service(
"strapiService",
api_version="v1",
kind="Service",
metadata=ObjectMetaArgs(
name="strapi",
),
spec=ServiceSpecArgs(
selector=app_labels,
ports=[
ServicePortArgs(
protocol="TCP",
port=80,
target_port=1337,
)
],
),
)
ingress = Ingress(
"strapi",
metadata=ObjectMetaArgs(
name="strapi",
),
spec=IngressSpecArgs(
ingress_class_name="nginx",
rules=[
IngressRuleArgs(
host="strapi.test.cluster",
http=HTTPIngressRuleValueArgs(
paths=[
HTTPIngressPathArgs(
backend=IngressBackendArgs(
service=IngressServiceBackendArgs(
name="strapi",
port=ServiceBackendPortArgs(
name="http", number="80"
),
)
),
path_type="Prefix",
path="/",
)
]
),
)
],
),
)
prehistoric-activity-61023
09/20/2021, 5:13 PMprehistoric-activity-61023
09/20/2021, 5:13 PMfrom X import *
, it might be evil as you’ve already checked
• you had 2 small extra issues:
◦ rules
definition; it’s supposed to be a list, not a single object
◦ same for paths
billowy-army-68599
from X import *
syntax, I prefer to use the more canonical imports, see here:
https://github.com/jaxxstorm/pulumi-nginx-demo/blob/main/nginx-ingress/app.pyprehistoric-activity-61023
09/20/2021, 5:15 PMprehistoric-activity-61023
09/20/2021, 5:16 PMimport pulumi_kubernetes as k8s
billowy-army-68599
prehistoric-activity-61023
09/20/2021, 5:17 PMbillowy-army-68599
prehistoric-activity-61023
09/20/2021, 5:17 PMprehistoric-activity-61023
09/20/2021, 5:18 PMred-kangaroo-44125
09/21/2021, 10:57 AM