Six new resources from terraform-provider-dokploy v0.2.0 -- Network, DnsProvider, VaultProvider, Schedule, VolumeBackup and Libsql -- plus the new properties on Domain (`enabled`), Compose (`serviceNetworks`, `createEnvFile`, `icon`) and Application. Verified with `pulumi up` against a live v0.30.2 instance: create, preview-clean, and destroy. The upstream provider also now refuses a volume Mount with no `volumeName`, which Dokploy would otherwise turn into an anonymous Docker volume recreated on every deploy. That surfaces here at preview time, before anything exists. Two things made that fix nearly invisible to Pulumi users, so this commit fixes the second one: the bridge resolves the upstream `docs/` through the Go module cache, where a locally `replace`d dependency never lands, so tfgen was emitting every resource with no description at all. UpstreamRepoPath now points at the checkout and all 445 inputs carry documentation -- with names rendered per language, so Python readers see `volume_name` where TypeScript readers see `volumeName`.
941 lines
45 KiB
Python
Generated
941 lines
45 KiB
Python
Generated
# coding=utf-8
|
|
# *** WARNING: this file was generated by pulumi-language-python. ***
|
|
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
|
|
import builtins as _builtins
|
|
import warnings
|
|
import sys
|
|
import pulumi
|
|
import pulumi.runtime
|
|
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
|
if sys.version_info >= (3, 11):
|
|
from typing import NotRequired, TypedDict, TypeAlias
|
|
else:
|
|
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
|
from . import _utilities
|
|
|
|
__all__ = ['DomainArgs', 'Domain']
|
|
|
|
@pulumi.input_type
|
|
class DomainArgs:
|
|
def __init__(__self__, *,
|
|
host: pulumi.Input[_builtins.str],
|
|
application_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
certificate_type: pulumi.Input[Optional[_builtins.str]] = None,
|
|
compose_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
custom_cert_resolver: pulumi.Input[Optional[_builtins.str]] = None,
|
|
custom_entrypoint: pulumi.Input[Optional[_builtins.str]] = None,
|
|
domain_type: pulumi.Input[Optional[_builtins.str]] = None,
|
|
enabled: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
forward_auth_enabled: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
https: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
internal_path: pulumi.Input[Optional[_builtins.str]] = None,
|
|
middlewares: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
path: pulumi.Input[Optional[_builtins.str]] = None,
|
|
port: pulumi.Input[Optional[_builtins.int]] = None,
|
|
preview_deployment_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
service_name: pulumi.Input[Optional[_builtins.str]] = None,
|
|
strip_path: pulumi.Input[Optional[_builtins.bool]] = None):
|
|
"""
|
|
The set of arguments for constructing a Domain resource.
|
|
|
|
:param pulumi.Input[_builtins.str] host: Fully-qualified hostname, for example `api.example.com`.
|
|
:param pulumi.Input[_builtins.str] application_id: Application this domain routes to.
|
|
:param pulumi.Input[_builtins.str] certificate_type: How TLS certificates are obtained. Use `letsencrypt` for automatic certificates. Valid values: `letsencrypt`, `none`, `custom`.
|
|
:param pulumi.Input[_builtins.str] compose_id: Compose stack this domain routes to.
|
|
:param pulumi.Input[_builtins.str] custom_cert_resolver: Traefik certificate resolver name, when `certificate_type` is `custom`.
|
|
:param pulumi.Input[_builtins.str] custom_entrypoint: Traefik entrypoint to bind, when not using the defaults.
|
|
:param pulumi.Input[_builtins.str] domain_type: What kind of target this domain points at. Valid values: `compose`, `application`, `preview`.
|
|
:param pulumi.Input[_builtins.bool] enabled: Whether the domain is served. Setting this to `false` removes the route from Traefik but keeps the certificate, path and middleware configuration intact, so the domain can be brought back without reconfiguring it.
|
|
:param pulumi.Input[_builtins.bool] forward_auth_enabled: Protect this domain with Dokploy's forward auth.
|
|
:param pulumi.Input[_builtins.bool] https: Serve the domain over HTTPS and redirect HTTP traffic to it.
|
|
:param pulumi.Input[_builtins.str] internal_path: Path the request is rewritten to before it reaches the container, defaults to `/`.
|
|
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] middlewares: Names of Traefik middlewares to apply.
|
|
:param pulumi.Input[_builtins.str] path: Path prefix this domain routes, defaults to `/`.
|
|
:param pulumi.Input[_builtins.int] port: Container port that receives the traffic, defaults to `3000`.
|
|
:param pulumi.Input[_builtins.str] preview_deployment_id: Preview deployment this domain routes to.
|
|
:param pulumi.Input[_builtins.str] service_name: Name of the service inside a Compose stack that receives the traffic. Required when `compose_id` is set.
|
|
:param pulumi.Input[_builtins.bool] strip_path: Strip `path` from the request before forwarding it.
|
|
"""
|
|
pulumi.set(__self__, "host", host)
|
|
if application_id is not None:
|
|
pulumi.set(__self__, "application_id", application_id)
|
|
if certificate_type is not None:
|
|
pulumi.set(__self__, "certificate_type", certificate_type)
|
|
if compose_id is not None:
|
|
pulumi.set(__self__, "compose_id", compose_id)
|
|
if custom_cert_resolver is not None:
|
|
pulumi.set(__self__, "custom_cert_resolver", custom_cert_resolver)
|
|
if custom_entrypoint is not None:
|
|
pulumi.set(__self__, "custom_entrypoint", custom_entrypoint)
|
|
if domain_type is not None:
|
|
pulumi.set(__self__, "domain_type", domain_type)
|
|
if enabled is not None:
|
|
pulumi.set(__self__, "enabled", enabled)
|
|
if forward_auth_enabled is not None:
|
|
pulumi.set(__self__, "forward_auth_enabled", forward_auth_enabled)
|
|
if https is not None:
|
|
pulumi.set(__self__, "https", https)
|
|
if internal_path is not None:
|
|
pulumi.set(__self__, "internal_path", internal_path)
|
|
if middlewares is not None:
|
|
pulumi.set(__self__, "middlewares", middlewares)
|
|
if path is not None:
|
|
pulumi.set(__self__, "path", path)
|
|
if port is not None:
|
|
pulumi.set(__self__, "port", port)
|
|
if preview_deployment_id is not None:
|
|
pulumi.set(__self__, "preview_deployment_id", preview_deployment_id)
|
|
if service_name is not None:
|
|
pulumi.set(__self__, "service_name", service_name)
|
|
if strip_path is not None:
|
|
pulumi.set(__self__, "strip_path", strip_path)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def host(self) -> pulumi.Input[_builtins.str]:
|
|
"""
|
|
Fully-qualified hostname, for example `api.example.com`.
|
|
"""
|
|
return pulumi.get(self, "host")
|
|
|
|
@host.setter
|
|
def host(self, value: pulumi.Input[_builtins.str]):
|
|
pulumi.set(self, "host", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="applicationId")
|
|
def application_id(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Application this domain routes to.
|
|
"""
|
|
return pulumi.get(self, "application_id")
|
|
|
|
@application_id.setter
|
|
def application_id(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "application_id", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="certificateType")
|
|
def certificate_type(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
How TLS certificates are obtained. Use `letsencrypt` for automatic certificates. Valid values: `letsencrypt`, `none`, `custom`.
|
|
"""
|
|
return pulumi.get(self, "certificate_type")
|
|
|
|
@certificate_type.setter
|
|
def certificate_type(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "certificate_type", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="composeId")
|
|
def compose_id(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Compose stack this domain routes to.
|
|
"""
|
|
return pulumi.get(self, "compose_id")
|
|
|
|
@compose_id.setter
|
|
def compose_id(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "compose_id", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="customCertResolver")
|
|
def custom_cert_resolver(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Traefik certificate resolver name, when `certificate_type` is `custom`.
|
|
"""
|
|
return pulumi.get(self, "custom_cert_resolver")
|
|
|
|
@custom_cert_resolver.setter
|
|
def custom_cert_resolver(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "custom_cert_resolver", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="customEntrypoint")
|
|
def custom_entrypoint(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Traefik entrypoint to bind, when not using the defaults.
|
|
"""
|
|
return pulumi.get(self, "custom_entrypoint")
|
|
|
|
@custom_entrypoint.setter
|
|
def custom_entrypoint(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "custom_entrypoint", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="domainType")
|
|
def domain_type(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
What kind of target this domain points at. Valid values: `compose`, `application`, `preview`.
|
|
"""
|
|
return pulumi.get(self, "domain_type")
|
|
|
|
@domain_type.setter
|
|
def domain_type(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "domain_type", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def enabled(self) -> pulumi.Input[Optional[_builtins.bool]]:
|
|
"""
|
|
Whether the domain is served. Setting this to `false` removes the route from Traefik but keeps the certificate, path and middleware configuration intact, so the domain can be brought back without reconfiguring it.
|
|
"""
|
|
return pulumi.get(self, "enabled")
|
|
|
|
@enabled.setter
|
|
def enabled(self, value: pulumi.Input[Optional[_builtins.bool]]):
|
|
pulumi.set(self, "enabled", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="forwardAuthEnabled")
|
|
def forward_auth_enabled(self) -> pulumi.Input[Optional[_builtins.bool]]:
|
|
"""
|
|
Protect this domain with Dokploy's forward auth.
|
|
"""
|
|
return pulumi.get(self, "forward_auth_enabled")
|
|
|
|
@forward_auth_enabled.setter
|
|
def forward_auth_enabled(self, value: pulumi.Input[Optional[_builtins.bool]]):
|
|
pulumi.set(self, "forward_auth_enabled", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def https(self) -> pulumi.Input[Optional[_builtins.bool]]:
|
|
"""
|
|
Serve the domain over HTTPS and redirect HTTP traffic to it.
|
|
"""
|
|
return pulumi.get(self, "https")
|
|
|
|
@https.setter
|
|
def https(self, value: pulumi.Input[Optional[_builtins.bool]]):
|
|
pulumi.set(self, "https", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="internalPath")
|
|
def internal_path(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Path the request is rewritten to before it reaches the container, defaults to `/`.
|
|
"""
|
|
return pulumi.get(self, "internal_path")
|
|
|
|
@internal_path.setter
|
|
def internal_path(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "internal_path", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def middlewares(self) -> pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]:
|
|
"""
|
|
Names of Traefik middlewares to apply.
|
|
"""
|
|
return pulumi.get(self, "middlewares")
|
|
|
|
@middlewares.setter
|
|
def middlewares(self, value: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]):
|
|
pulumi.set(self, "middlewares", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def path(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Path prefix this domain routes, defaults to `/`.
|
|
"""
|
|
return pulumi.get(self, "path")
|
|
|
|
@path.setter
|
|
def path(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "path", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def port(self) -> pulumi.Input[Optional[_builtins.int]]:
|
|
"""
|
|
Container port that receives the traffic, defaults to `3000`.
|
|
"""
|
|
return pulumi.get(self, "port")
|
|
|
|
@port.setter
|
|
def port(self, value: pulumi.Input[Optional[_builtins.int]]):
|
|
pulumi.set(self, "port", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="previewDeploymentId")
|
|
def preview_deployment_id(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Preview deployment this domain routes to.
|
|
"""
|
|
return pulumi.get(self, "preview_deployment_id")
|
|
|
|
@preview_deployment_id.setter
|
|
def preview_deployment_id(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "preview_deployment_id", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="serviceName")
|
|
def service_name(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Name of the service inside a Compose stack that receives the traffic. Required when `compose_id` is set.
|
|
"""
|
|
return pulumi.get(self, "service_name")
|
|
|
|
@service_name.setter
|
|
def service_name(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "service_name", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="stripPath")
|
|
def strip_path(self) -> pulumi.Input[Optional[_builtins.bool]]:
|
|
"""
|
|
Strip `path` from the request before forwarding it.
|
|
"""
|
|
return pulumi.get(self, "strip_path")
|
|
|
|
@strip_path.setter
|
|
def strip_path(self, value: pulumi.Input[Optional[_builtins.bool]]):
|
|
pulumi.set(self, "strip_path", value)
|
|
|
|
|
|
@pulumi.input_type
|
|
class _DomainState:
|
|
def __init__(__self__, *,
|
|
application_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
certificate_type: pulumi.Input[Optional[_builtins.str]] = None,
|
|
compose_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
created_at: pulumi.Input[Optional[_builtins.str]] = None,
|
|
custom_cert_resolver: pulumi.Input[Optional[_builtins.str]] = None,
|
|
custom_entrypoint: pulumi.Input[Optional[_builtins.str]] = None,
|
|
domain_type: pulumi.Input[Optional[_builtins.str]] = None,
|
|
enabled: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
forward_auth_enabled: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
host: pulumi.Input[Optional[_builtins.str]] = None,
|
|
https: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
internal_path: pulumi.Input[Optional[_builtins.str]] = None,
|
|
middlewares: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
path: pulumi.Input[Optional[_builtins.str]] = None,
|
|
port: pulumi.Input[Optional[_builtins.int]] = None,
|
|
preview_deployment_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
service_name: pulumi.Input[Optional[_builtins.str]] = None,
|
|
strip_path: pulumi.Input[Optional[_builtins.bool]] = None):
|
|
"""
|
|
Input properties used for looking up and filtering Domain resources.
|
|
|
|
:param pulumi.Input[_builtins.str] application_id: Application this domain routes to.
|
|
:param pulumi.Input[_builtins.str] certificate_type: How TLS certificates are obtained. Use `letsencrypt` for automatic certificates. Valid values: `letsencrypt`, `none`, `custom`.
|
|
:param pulumi.Input[_builtins.str] compose_id: Compose stack this domain routes to.
|
|
:param pulumi.Input[_builtins.str] created_at: RFC 3339 timestamp of when the domain was created.
|
|
:param pulumi.Input[_builtins.str] custom_cert_resolver: Traefik certificate resolver name, when `certificate_type` is `custom`.
|
|
:param pulumi.Input[_builtins.str] custom_entrypoint: Traefik entrypoint to bind, when not using the defaults.
|
|
:param pulumi.Input[_builtins.str] domain_type: What kind of target this domain points at. Valid values: `compose`, `application`, `preview`.
|
|
:param pulumi.Input[_builtins.bool] enabled: Whether the domain is served. Setting this to `false` removes the route from Traefik but keeps the certificate, path and middleware configuration intact, so the domain can be brought back without reconfiguring it.
|
|
:param pulumi.Input[_builtins.bool] forward_auth_enabled: Protect this domain with Dokploy's forward auth.
|
|
:param pulumi.Input[_builtins.str] host: Fully-qualified hostname, for example `api.example.com`.
|
|
:param pulumi.Input[_builtins.bool] https: Serve the domain over HTTPS and redirect HTTP traffic to it.
|
|
:param pulumi.Input[_builtins.str] internal_path: Path the request is rewritten to before it reaches the container, defaults to `/`.
|
|
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] middlewares: Names of Traefik middlewares to apply.
|
|
:param pulumi.Input[_builtins.str] path: Path prefix this domain routes, defaults to `/`.
|
|
:param pulumi.Input[_builtins.int] port: Container port that receives the traffic, defaults to `3000`.
|
|
:param pulumi.Input[_builtins.str] preview_deployment_id: Preview deployment this domain routes to.
|
|
:param pulumi.Input[_builtins.str] service_name: Name of the service inside a Compose stack that receives the traffic. Required when `compose_id` is set.
|
|
:param pulumi.Input[_builtins.bool] strip_path: Strip `path` from the request before forwarding it.
|
|
"""
|
|
if application_id is not None:
|
|
pulumi.set(__self__, "application_id", application_id)
|
|
if certificate_type is not None:
|
|
pulumi.set(__self__, "certificate_type", certificate_type)
|
|
if compose_id is not None:
|
|
pulumi.set(__self__, "compose_id", compose_id)
|
|
if created_at is not None:
|
|
pulumi.set(__self__, "created_at", created_at)
|
|
if custom_cert_resolver is not None:
|
|
pulumi.set(__self__, "custom_cert_resolver", custom_cert_resolver)
|
|
if custom_entrypoint is not None:
|
|
pulumi.set(__self__, "custom_entrypoint", custom_entrypoint)
|
|
if domain_type is not None:
|
|
pulumi.set(__self__, "domain_type", domain_type)
|
|
if enabled is not None:
|
|
pulumi.set(__self__, "enabled", enabled)
|
|
if forward_auth_enabled is not None:
|
|
pulumi.set(__self__, "forward_auth_enabled", forward_auth_enabled)
|
|
if host is not None:
|
|
pulumi.set(__self__, "host", host)
|
|
if https is not None:
|
|
pulumi.set(__self__, "https", https)
|
|
if internal_path is not None:
|
|
pulumi.set(__self__, "internal_path", internal_path)
|
|
if middlewares is not None:
|
|
pulumi.set(__self__, "middlewares", middlewares)
|
|
if path is not None:
|
|
pulumi.set(__self__, "path", path)
|
|
if port is not None:
|
|
pulumi.set(__self__, "port", port)
|
|
if preview_deployment_id is not None:
|
|
pulumi.set(__self__, "preview_deployment_id", preview_deployment_id)
|
|
if service_name is not None:
|
|
pulumi.set(__self__, "service_name", service_name)
|
|
if strip_path is not None:
|
|
pulumi.set(__self__, "strip_path", strip_path)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="applicationId")
|
|
def application_id(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Application this domain routes to.
|
|
"""
|
|
return pulumi.get(self, "application_id")
|
|
|
|
@application_id.setter
|
|
def application_id(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "application_id", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="certificateType")
|
|
def certificate_type(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
How TLS certificates are obtained. Use `letsencrypt` for automatic certificates. Valid values: `letsencrypt`, `none`, `custom`.
|
|
"""
|
|
return pulumi.get(self, "certificate_type")
|
|
|
|
@certificate_type.setter
|
|
def certificate_type(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "certificate_type", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="composeId")
|
|
def compose_id(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Compose stack this domain routes to.
|
|
"""
|
|
return pulumi.get(self, "compose_id")
|
|
|
|
@compose_id.setter
|
|
def compose_id(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "compose_id", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="createdAt")
|
|
def created_at(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
RFC 3339 timestamp of when the domain was created.
|
|
"""
|
|
return pulumi.get(self, "created_at")
|
|
|
|
@created_at.setter
|
|
def created_at(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "created_at", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="customCertResolver")
|
|
def custom_cert_resolver(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Traefik certificate resolver name, when `certificate_type` is `custom`.
|
|
"""
|
|
return pulumi.get(self, "custom_cert_resolver")
|
|
|
|
@custom_cert_resolver.setter
|
|
def custom_cert_resolver(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "custom_cert_resolver", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="customEntrypoint")
|
|
def custom_entrypoint(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Traefik entrypoint to bind, when not using the defaults.
|
|
"""
|
|
return pulumi.get(self, "custom_entrypoint")
|
|
|
|
@custom_entrypoint.setter
|
|
def custom_entrypoint(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "custom_entrypoint", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="domainType")
|
|
def domain_type(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
What kind of target this domain points at. Valid values: `compose`, `application`, `preview`.
|
|
"""
|
|
return pulumi.get(self, "domain_type")
|
|
|
|
@domain_type.setter
|
|
def domain_type(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "domain_type", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def enabled(self) -> pulumi.Input[Optional[_builtins.bool]]:
|
|
"""
|
|
Whether the domain is served. Setting this to `false` removes the route from Traefik but keeps the certificate, path and middleware configuration intact, so the domain can be brought back without reconfiguring it.
|
|
"""
|
|
return pulumi.get(self, "enabled")
|
|
|
|
@enabled.setter
|
|
def enabled(self, value: pulumi.Input[Optional[_builtins.bool]]):
|
|
pulumi.set(self, "enabled", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="forwardAuthEnabled")
|
|
def forward_auth_enabled(self) -> pulumi.Input[Optional[_builtins.bool]]:
|
|
"""
|
|
Protect this domain with Dokploy's forward auth.
|
|
"""
|
|
return pulumi.get(self, "forward_auth_enabled")
|
|
|
|
@forward_auth_enabled.setter
|
|
def forward_auth_enabled(self, value: pulumi.Input[Optional[_builtins.bool]]):
|
|
pulumi.set(self, "forward_auth_enabled", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def host(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Fully-qualified hostname, for example `api.example.com`.
|
|
"""
|
|
return pulumi.get(self, "host")
|
|
|
|
@host.setter
|
|
def host(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "host", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def https(self) -> pulumi.Input[Optional[_builtins.bool]]:
|
|
"""
|
|
Serve the domain over HTTPS and redirect HTTP traffic to it.
|
|
"""
|
|
return pulumi.get(self, "https")
|
|
|
|
@https.setter
|
|
def https(self, value: pulumi.Input[Optional[_builtins.bool]]):
|
|
pulumi.set(self, "https", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="internalPath")
|
|
def internal_path(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Path the request is rewritten to before it reaches the container, defaults to `/`.
|
|
"""
|
|
return pulumi.get(self, "internal_path")
|
|
|
|
@internal_path.setter
|
|
def internal_path(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "internal_path", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def middlewares(self) -> pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]:
|
|
"""
|
|
Names of Traefik middlewares to apply.
|
|
"""
|
|
return pulumi.get(self, "middlewares")
|
|
|
|
@middlewares.setter
|
|
def middlewares(self, value: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]):
|
|
pulumi.set(self, "middlewares", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def path(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Path prefix this domain routes, defaults to `/`.
|
|
"""
|
|
return pulumi.get(self, "path")
|
|
|
|
@path.setter
|
|
def path(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "path", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def port(self) -> pulumi.Input[Optional[_builtins.int]]:
|
|
"""
|
|
Container port that receives the traffic, defaults to `3000`.
|
|
"""
|
|
return pulumi.get(self, "port")
|
|
|
|
@port.setter
|
|
def port(self, value: pulumi.Input[Optional[_builtins.int]]):
|
|
pulumi.set(self, "port", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="previewDeploymentId")
|
|
def preview_deployment_id(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Preview deployment this domain routes to.
|
|
"""
|
|
return pulumi.get(self, "preview_deployment_id")
|
|
|
|
@preview_deployment_id.setter
|
|
def preview_deployment_id(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "preview_deployment_id", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="serviceName")
|
|
def service_name(self) -> pulumi.Input[Optional[_builtins.str]]:
|
|
"""
|
|
Name of the service inside a Compose stack that receives the traffic. Required when `compose_id` is set.
|
|
"""
|
|
return pulumi.get(self, "service_name")
|
|
|
|
@service_name.setter
|
|
def service_name(self, value: pulumi.Input[Optional[_builtins.str]]):
|
|
pulumi.set(self, "service_name", value)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="stripPath")
|
|
def strip_path(self) -> pulumi.Input[Optional[_builtins.bool]]:
|
|
"""
|
|
Strip `path` from the request before forwarding it.
|
|
"""
|
|
return pulumi.get(self, "strip_path")
|
|
|
|
@strip_path.setter
|
|
def strip_path(self, value: pulumi.Input[Optional[_builtins.bool]]):
|
|
pulumi.set(self, "strip_path", value)
|
|
|
|
|
|
@pulumi.type_token("dokploy:index/domain:Domain")
|
|
class Domain(pulumi.CustomResource):
|
|
@overload
|
|
def __init__(__self__,
|
|
resource_name: str,
|
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
application_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
certificate_type: pulumi.Input[Optional[_builtins.str]] = None,
|
|
compose_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
custom_cert_resolver: pulumi.Input[Optional[_builtins.str]] = None,
|
|
custom_entrypoint: pulumi.Input[Optional[_builtins.str]] = None,
|
|
domain_type: pulumi.Input[Optional[_builtins.str]] = None,
|
|
enabled: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
forward_auth_enabled: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
host: pulumi.Input[Optional[_builtins.str]] = None,
|
|
https: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
internal_path: pulumi.Input[Optional[_builtins.str]] = None,
|
|
middlewares: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
path: pulumi.Input[Optional[_builtins.str]] = None,
|
|
port: pulumi.Input[Optional[_builtins.int]] = None,
|
|
preview_deployment_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
service_name: pulumi.Input[Optional[_builtins.str]] = None,
|
|
strip_path: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
__props__=None):
|
|
"""
|
|
A domain routed to an application or a Compose service through Dokploy's Traefik instance.
|
|
|
|
Set exactly one of `application_id` or `compose_id`. When targeting a Compose stack, `service_name` selects which service in the stack receives the traffic.
|
|
|
|
|
|
:param str resource_name: The name of the resource.
|
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
:param pulumi.Input[_builtins.str] application_id: Application this domain routes to.
|
|
:param pulumi.Input[_builtins.str] certificate_type: How TLS certificates are obtained. Use `letsencrypt` for automatic certificates. Valid values: `letsencrypt`, `none`, `custom`.
|
|
:param pulumi.Input[_builtins.str] compose_id: Compose stack this domain routes to.
|
|
:param pulumi.Input[_builtins.str] custom_cert_resolver: Traefik certificate resolver name, when `certificate_type` is `custom`.
|
|
:param pulumi.Input[_builtins.str] custom_entrypoint: Traefik entrypoint to bind, when not using the defaults.
|
|
:param pulumi.Input[_builtins.str] domain_type: What kind of target this domain points at. Valid values: `compose`, `application`, `preview`.
|
|
:param pulumi.Input[_builtins.bool] enabled: Whether the domain is served. Setting this to `false` removes the route from Traefik but keeps the certificate, path and middleware configuration intact, so the domain can be brought back without reconfiguring it.
|
|
:param pulumi.Input[_builtins.bool] forward_auth_enabled: Protect this domain with Dokploy's forward auth.
|
|
:param pulumi.Input[_builtins.str] host: Fully-qualified hostname, for example `api.example.com`.
|
|
:param pulumi.Input[_builtins.bool] https: Serve the domain over HTTPS and redirect HTTP traffic to it.
|
|
:param pulumi.Input[_builtins.str] internal_path: Path the request is rewritten to before it reaches the container, defaults to `/`.
|
|
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] middlewares: Names of Traefik middlewares to apply.
|
|
:param pulumi.Input[_builtins.str] path: Path prefix this domain routes, defaults to `/`.
|
|
:param pulumi.Input[_builtins.int] port: Container port that receives the traffic, defaults to `3000`.
|
|
:param pulumi.Input[_builtins.str] preview_deployment_id: Preview deployment this domain routes to.
|
|
:param pulumi.Input[_builtins.str] service_name: Name of the service inside a Compose stack that receives the traffic. Required when `compose_id` is set.
|
|
:param pulumi.Input[_builtins.bool] strip_path: Strip `path` from the request before forwarding it.
|
|
"""
|
|
...
|
|
@overload
|
|
def __init__(__self__,
|
|
resource_name: str,
|
|
args: DomainArgs,
|
|
opts: Optional[pulumi.ResourceOptions] = None):
|
|
"""
|
|
A domain routed to an application or a Compose service through Dokploy's Traefik instance.
|
|
|
|
Set exactly one of `application_id` or `compose_id`. When targeting a Compose stack, `service_name` selects which service in the stack receives the traffic.
|
|
|
|
|
|
:param str resource_name: The name of the resource.
|
|
:param DomainArgs args: The arguments to use to populate this resource's properties.
|
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
"""
|
|
...
|
|
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
resource_args, opts = _utilities.get_resource_args_opts(DomainArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
if resource_args is not None:
|
|
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
else:
|
|
__self__._internal_init(resource_name, *args, **kwargs)
|
|
|
|
def _internal_init(__self__,
|
|
resource_name: str,
|
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
application_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
certificate_type: pulumi.Input[Optional[_builtins.str]] = None,
|
|
compose_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
custom_cert_resolver: pulumi.Input[Optional[_builtins.str]] = None,
|
|
custom_entrypoint: pulumi.Input[Optional[_builtins.str]] = None,
|
|
domain_type: pulumi.Input[Optional[_builtins.str]] = None,
|
|
enabled: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
forward_auth_enabled: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
host: pulumi.Input[Optional[_builtins.str]] = None,
|
|
https: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
internal_path: pulumi.Input[Optional[_builtins.str]] = None,
|
|
middlewares: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
path: pulumi.Input[Optional[_builtins.str]] = None,
|
|
port: pulumi.Input[Optional[_builtins.int]] = None,
|
|
preview_deployment_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
service_name: pulumi.Input[Optional[_builtins.str]] = None,
|
|
strip_path: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
__props__=None):
|
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
if not isinstance(opts, pulumi.ResourceOptions):
|
|
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
if opts.id is None:
|
|
if __props__ is not None:
|
|
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
__props__ = DomainArgs.__new__(DomainArgs)
|
|
|
|
__props__.__dict__["application_id"] = application_id
|
|
__props__.__dict__["certificate_type"] = certificate_type
|
|
__props__.__dict__["compose_id"] = compose_id
|
|
__props__.__dict__["custom_cert_resolver"] = custom_cert_resolver
|
|
__props__.__dict__["custom_entrypoint"] = custom_entrypoint
|
|
__props__.__dict__["domain_type"] = domain_type
|
|
__props__.__dict__["enabled"] = enabled
|
|
__props__.__dict__["forward_auth_enabled"] = forward_auth_enabled
|
|
if host is None and not opts.urn:
|
|
raise TypeError("Missing required property 'host'")
|
|
__props__.__dict__["host"] = host
|
|
__props__.__dict__["https"] = https
|
|
__props__.__dict__["internal_path"] = internal_path
|
|
__props__.__dict__["middlewares"] = middlewares
|
|
__props__.__dict__["path"] = path
|
|
__props__.__dict__["port"] = port
|
|
__props__.__dict__["preview_deployment_id"] = preview_deployment_id
|
|
__props__.__dict__["service_name"] = service_name
|
|
__props__.__dict__["strip_path"] = strip_path
|
|
__props__.__dict__["created_at"] = None
|
|
super(Domain, __self__).__init__(
|
|
'dokploy:index/domain:Domain',
|
|
resource_name,
|
|
__props__,
|
|
opts)
|
|
|
|
@staticmethod
|
|
def get(resource_name: str,
|
|
id: pulumi.Input[str],
|
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
application_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
certificate_type: pulumi.Input[Optional[_builtins.str]] = None,
|
|
compose_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
created_at: pulumi.Input[Optional[_builtins.str]] = None,
|
|
custom_cert_resolver: pulumi.Input[Optional[_builtins.str]] = None,
|
|
custom_entrypoint: pulumi.Input[Optional[_builtins.str]] = None,
|
|
domain_type: pulumi.Input[Optional[_builtins.str]] = None,
|
|
enabled: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
forward_auth_enabled: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
host: pulumi.Input[Optional[_builtins.str]] = None,
|
|
https: pulumi.Input[Optional[_builtins.bool]] = None,
|
|
internal_path: pulumi.Input[Optional[_builtins.str]] = None,
|
|
middlewares: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
path: pulumi.Input[Optional[_builtins.str]] = None,
|
|
port: pulumi.Input[Optional[_builtins.int]] = None,
|
|
preview_deployment_id: pulumi.Input[Optional[_builtins.str]] = None,
|
|
service_name: pulumi.Input[Optional[_builtins.str]] = None,
|
|
strip_path: pulumi.Input[Optional[_builtins.bool]] = None) -> 'Domain':
|
|
"""
|
|
Get an existing Domain resource's state with the given name, id, and optional extra
|
|
properties used to qualify the lookup.
|
|
|
|
:param str resource_name: The unique name of the resulting resource.
|
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
:param pulumi.Input[_builtins.str] application_id: Application this domain routes to.
|
|
:param pulumi.Input[_builtins.str] certificate_type: How TLS certificates are obtained. Use `letsencrypt` for automatic certificates. Valid values: `letsencrypt`, `none`, `custom`.
|
|
:param pulumi.Input[_builtins.str] compose_id: Compose stack this domain routes to.
|
|
:param pulumi.Input[_builtins.str] created_at: RFC 3339 timestamp of when the domain was created.
|
|
:param pulumi.Input[_builtins.str] custom_cert_resolver: Traefik certificate resolver name, when `certificate_type` is `custom`.
|
|
:param pulumi.Input[_builtins.str] custom_entrypoint: Traefik entrypoint to bind, when not using the defaults.
|
|
:param pulumi.Input[_builtins.str] domain_type: What kind of target this domain points at. Valid values: `compose`, `application`, `preview`.
|
|
:param pulumi.Input[_builtins.bool] enabled: Whether the domain is served. Setting this to `false` removes the route from Traefik but keeps the certificate, path and middleware configuration intact, so the domain can be brought back without reconfiguring it.
|
|
:param pulumi.Input[_builtins.bool] forward_auth_enabled: Protect this domain with Dokploy's forward auth.
|
|
:param pulumi.Input[_builtins.str] host: Fully-qualified hostname, for example `api.example.com`.
|
|
:param pulumi.Input[_builtins.bool] https: Serve the domain over HTTPS and redirect HTTP traffic to it.
|
|
:param pulumi.Input[_builtins.str] internal_path: Path the request is rewritten to before it reaches the container, defaults to `/`.
|
|
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] middlewares: Names of Traefik middlewares to apply.
|
|
:param pulumi.Input[_builtins.str] path: Path prefix this domain routes, defaults to `/`.
|
|
:param pulumi.Input[_builtins.int] port: Container port that receives the traffic, defaults to `3000`.
|
|
:param pulumi.Input[_builtins.str] preview_deployment_id: Preview deployment this domain routes to.
|
|
:param pulumi.Input[_builtins.str] service_name: Name of the service inside a Compose stack that receives the traffic. Required when `compose_id` is set.
|
|
:param pulumi.Input[_builtins.bool] strip_path: Strip `path` from the request before forwarding it.
|
|
"""
|
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
|
|
__props__ = _DomainState.__new__(_DomainState)
|
|
|
|
__props__.__dict__["application_id"] = application_id
|
|
__props__.__dict__["certificate_type"] = certificate_type
|
|
__props__.__dict__["compose_id"] = compose_id
|
|
__props__.__dict__["created_at"] = created_at
|
|
__props__.__dict__["custom_cert_resolver"] = custom_cert_resolver
|
|
__props__.__dict__["custom_entrypoint"] = custom_entrypoint
|
|
__props__.__dict__["domain_type"] = domain_type
|
|
__props__.__dict__["enabled"] = enabled
|
|
__props__.__dict__["forward_auth_enabled"] = forward_auth_enabled
|
|
__props__.__dict__["host"] = host
|
|
__props__.__dict__["https"] = https
|
|
__props__.__dict__["internal_path"] = internal_path
|
|
__props__.__dict__["middlewares"] = middlewares
|
|
__props__.__dict__["path"] = path
|
|
__props__.__dict__["port"] = port
|
|
__props__.__dict__["preview_deployment_id"] = preview_deployment_id
|
|
__props__.__dict__["service_name"] = service_name
|
|
__props__.__dict__["strip_path"] = strip_path
|
|
return Domain(resource_name, opts=opts, __props__=__props__)
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="applicationId")
|
|
def application_id(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
"""
|
|
Application this domain routes to.
|
|
"""
|
|
return pulumi.get(self, "application_id")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="certificateType")
|
|
def certificate_type(self) -> pulumi.Output[_builtins.str]:
|
|
"""
|
|
How TLS certificates are obtained. Use `letsencrypt` for automatic certificates. Valid values: `letsencrypt`, `none`, `custom`.
|
|
"""
|
|
return pulumi.get(self, "certificate_type")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="composeId")
|
|
def compose_id(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
"""
|
|
Compose stack this domain routes to.
|
|
"""
|
|
return pulumi.get(self, "compose_id")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="createdAt")
|
|
def created_at(self) -> pulumi.Output[_builtins.str]:
|
|
"""
|
|
RFC 3339 timestamp of when the domain was created.
|
|
"""
|
|
return pulumi.get(self, "created_at")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="customCertResolver")
|
|
def custom_cert_resolver(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
"""
|
|
Traefik certificate resolver name, when `certificate_type` is `custom`.
|
|
"""
|
|
return pulumi.get(self, "custom_cert_resolver")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="customEntrypoint")
|
|
def custom_entrypoint(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
"""
|
|
Traefik entrypoint to bind, when not using the defaults.
|
|
"""
|
|
return pulumi.get(self, "custom_entrypoint")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="domainType")
|
|
def domain_type(self) -> pulumi.Output[_builtins.str]:
|
|
"""
|
|
What kind of target this domain points at. Valid values: `compose`, `application`, `preview`.
|
|
"""
|
|
return pulumi.get(self, "domain_type")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def enabled(self) -> pulumi.Output[_builtins.bool]:
|
|
"""
|
|
Whether the domain is served. Setting this to `false` removes the route from Traefik but keeps the certificate, path and middleware configuration intact, so the domain can be brought back without reconfiguring it.
|
|
"""
|
|
return pulumi.get(self, "enabled")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="forwardAuthEnabled")
|
|
def forward_auth_enabled(self) -> pulumi.Output[_builtins.bool]:
|
|
"""
|
|
Protect this domain with Dokploy's forward auth.
|
|
"""
|
|
return pulumi.get(self, "forward_auth_enabled")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def host(self) -> pulumi.Output[_builtins.str]:
|
|
"""
|
|
Fully-qualified hostname, for example `api.example.com`.
|
|
"""
|
|
return pulumi.get(self, "host")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def https(self) -> pulumi.Output[_builtins.bool]:
|
|
"""
|
|
Serve the domain over HTTPS and redirect HTTP traffic to it.
|
|
"""
|
|
return pulumi.get(self, "https")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="internalPath")
|
|
def internal_path(self) -> pulumi.Output[_builtins.str]:
|
|
"""
|
|
Path the request is rewritten to before it reaches the container, defaults to `/`.
|
|
"""
|
|
return pulumi.get(self, "internal_path")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def middlewares(self) -> pulumi.Output[Sequence[_builtins.str]]:
|
|
"""
|
|
Names of Traefik middlewares to apply.
|
|
"""
|
|
return pulumi.get(self, "middlewares")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def path(self) -> pulumi.Output[_builtins.str]:
|
|
"""
|
|
Path prefix this domain routes, defaults to `/`.
|
|
"""
|
|
return pulumi.get(self, "path")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter
|
|
def port(self) -> pulumi.Output[_builtins.int]:
|
|
"""
|
|
Container port that receives the traffic, defaults to `3000`.
|
|
"""
|
|
return pulumi.get(self, "port")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="previewDeploymentId")
|
|
def preview_deployment_id(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
"""
|
|
Preview deployment this domain routes to.
|
|
"""
|
|
return pulumi.get(self, "preview_deployment_id")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="serviceName")
|
|
def service_name(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
"""
|
|
Name of the service inside a Compose stack that receives the traffic. Required when `compose_id` is set.
|
|
"""
|
|
return pulumi.get(self, "service_name")
|
|
|
|
@_builtins.property
|
|
@pulumi.getter(name="stripPath")
|
|
def strip_path(self) -> pulumi.Output[_builtins.bool]:
|
|
"""
|
|
Strip `path` from the request before forwarding it.
|
|
"""
|
|
return pulumi.get(self, "strip_path")
|
|
|