Documentation
¶
Index ¶
- Constants
- func ECSFargateLinuxContainerDefinition(e config.Env, image string, apiKeySSMParamName pulumi.StringInput, ...) (*ecs.TaskDefinitionContainerDefinitionArgs, ...)
- func ECSFargateWindowsContainerDefinition(e config.Env, image string, apiKeySSMParamName pulumi.StringInput, ...) *ecs.TaskDefinitionContainerDefinitionArgs
- func ECSLinuxDaemonDefinition(e aws.Environment, name string, apiKeySSMParamName pulumi.StringInput, ...) (*ecs.EC2Service, error)
- func GetPackagePath(localPath string, flavor tifos.Flavor, agentFlavor string, ...) (string, error)
- type DockerAgent
- type DockerAgentOutput
- type HelmComponent
- type HelmInstallationArgs
- type HelmValues
- type HostAgent
- type HostAgentOutput
- type KubernetesAgent
- type KubernetesAgentOutput
Constants ¶
const (
HelmVersion = "3.135.4"
)
Variables ¶
This section is empty.
Functions ¶
func ECSFargateLinuxContainerDefinition ¶
func ECSFargateLinuxContainerDefinition(e config.Env, image string, apiKeySSMParamName pulumi.StringInput, fakeintake *fakeintake.Fakeintake, logConfig ecs.TaskDefinitionLogConfigurationPtrInput) (*ecs.TaskDefinitionContainerDefinitionArgs, *ecs.TaskDefinitionContainerDefinitionArgs)
func ECSFargateWindowsContainerDefinition ¶
func ECSFargateWindowsContainerDefinition(e config.Env, image string, apiKeySSMParamName pulumi.StringInput, fakeintake *fakeintake.Fakeintake) *ecs.TaskDefinitionContainerDefinitionArgs
ECSFargateWindowsContainerDefinition returns the container definition for the Windows agent running on ECS Fargate. Firelens is not supported. Logs could be collected if sent to cloudwatch using the `awslogs` driver. See: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/tutorial-deploy-fluentbit-on-windows.html
func ECSLinuxDaemonDefinition ¶
func ECSLinuxDaemonDefinition(e aws.Environment, name string, apiKeySSMParamName pulumi.StringInput, fakeintake *fakeintake.Fakeintake, clusterArn pulumi.StringInput, options ...ecsagentparams.Option) (*ecs.EC2Service, error)
func GetPackagePath ¶
func GetPackagePath(localPath string, flavor tifos.Flavor, agentFlavor string, arch tifos.Architecture, pipelineID string) (string, error)
GetPackagePath retrieve the name of the package that should be installed. It will return the path to the package that should be installed for the given flavor and agent flavor. If the package is not found, it will return an error. If multiple packages are found, it will fail. Args:
- localPath: either a path to a folder or a path to a file if a folder is provided, it should have a structure similar to what the agent CI exposes. pkg/ | -- datadog-agent-<version>-<arch><fips?>.rpm | -- datadog-agent-<version>-<arch><fips?>.deb | -- suse/ | | -- datadog-agent-<version>-<arch><fips?>.rpm
- flavor: the flavor of the host
- agentFlavor: the flavor of the agent
- arch: the architecture of the host
- pipelineID: the ID of the pipeline, if empty will be ignored, mainly used to avoid an issue with the Windows Runners, can be removed once CIEXE-143 is fixed
Returns: - the path to the package that should be installed - an error if the package is not found or if there are multiple packages
Types ¶
type DockerAgent ¶
type DockerAgent struct {
pulumi.ResourceState
components.Component
DockerManager *docker.Manager `pulumi:"dockerManager"`
ContainerName pulumi.StringOutput `pulumi:"containerName"`
FIPSEnabled pulumi.BoolOutput `pulumi:"fipsEnabled"`
}
DockerAgent is a Docker installer on a remote Host
func NewDockerAgent ¶
func NewDockerAgent(e config.Env, vm *remoteComp.Host, manager *docker.Manager, options ...dockeragentparams.Option) (*DockerAgent, error)
func (*DockerAgent) Export ¶
func (h *DockerAgent) Export(ctx *pulumi.Context, out *DockerAgentOutput) error
type DockerAgentOutput ¶
type DockerAgentOutput struct {
components.JSONImporter
DockerManager docker.ManagerOutput `json:"dockerManager"`
ContainerName string `json:"containerName"`
FIPSEnabled bool `json:"fipsEnabled"`
}
type HelmComponent ¶
type HelmComponent struct {
pulumi.ResourceState
LinuxHelmReleaseName pulumi.StringPtrOutput
LinuxHelmReleaseStatus kubeHelm.ReleaseStatusOutput
WindowsHelmReleaseName pulumi.StringPtrOutput
WindowsHelmReleaseStatus kubeHelm.ReleaseStatusOutput
ClusterAgentToken pulumi.StringOutput
}
func NewHelmInstallation ¶
func NewHelmInstallation(e config.Env, args HelmInstallationArgs, opts ...pulumi.ResourceOption) (*HelmComponent, error)
type HelmInstallationArgs ¶
type HelmInstallationArgs struct {
// KubeProvider is the Kubernetes provider to use
KubeProvider *kubernetes.Provider
// Namespace is the namespace in which to install the agent
Namespace string
// ChartPath is the chart name or local chart path.
ChartPath string
// RepoURL is the Helm repository URL to use for the remote chart installation.
RepoURL string
// ValuesYAML is used to provide installation-specific values
ValuesYAML pulumi.AssetOrArchiveArray
// Fakeintake is used to configure the agent to send data to a fake intake
Fakeintake *fakeintake.Fakeintake
// DeployWindows is used to deploy the Windows agent
DeployWindows bool
// AgentFullImagePath is used to specify the full image path for the agent
AgentFullImagePath string
// ClusterAgentFullImagePath is used to specify the full image path for the cluster agent
ClusterAgentFullImagePath string
// DisableLogsContainerCollectAll is used to disable the collection of logs from all containers by default
DisableLogsContainerCollectAll bool
// DualShipping is used to disable dual-shipping
DualShipping bool
// OTelAgent is used to deploy the OTel agent instead of the classic agent
OTelAgent bool
// OTelConfig is used to provide a custom OTel configuration
OTelConfig string
// GKEAutopilot is used to enable the GKE Autopilot mode and keep only compatible values
GKEAutopilot bool
// FIPS is used to deploy the agent with the FIPS agent image
FIPS bool
// JMX is used to deploy the agent with the JMX agent image
JMX bool
}
HelmInstallationArgs is the set of arguments for creating a new HelmInstallation component
type HelmValues ¶
type HostAgent ¶
type HostAgent struct {
pulumi.ResourceState
components.Component
Host *remoteComp.Host `pulumi:"host"`
FIPSEnabled pulumi.BoolOutput `pulumi:"fipsEnabled"`
// contains filtered or unexported fields
}
HostAgent is an installer for the Agent on a remote host
func NewHostAgent ¶
func NewHostAgent(e config.Env, host *remoteComp.Host, options ...agentparams.Option) (*HostAgent, error)
NewHostAgent creates a new instance of a on-host Agent
type HostAgentOutput ¶
type HostAgentOutput struct {
components.JSONImporter
Host remoteComp.HostOutput `json:"host"`
FIPSEnabled bool `json:"fipsEnabled"`
}
type KubernetesAgent ¶
type KubernetesAgent struct {
pulumi.ResourceState
components.Component
LinuxNodeAgent *kubernetes.KubernetesObjectRef `pulumi:"linuxNodeAgent"`
LinuxClusterAgent *kubernetes.KubernetesObjectRef `pulumi:"linuxClusterAgent"`
LinuxClusterChecks *kubernetes.KubernetesObjectRef `pulumi:"linuxClusterChecks"`
WindowsNodeAgent *kubernetes.KubernetesObjectRef `pulumi:"windowsNodeAgent"`
WindowsClusterAgent *kubernetes.KubernetesObjectRef `pulumi:"windowsClusterAgent"`
WindowsClusterChecks *kubernetes.KubernetesObjectRef `pulumi:"windowsClusterChecks"`
ClusterAgentToken pulumi.StringOutput
FIPSEnabled pulumi.BoolOutput `pulumi:"fipsEnabled"`
}
KubernetesAgent is an installer to install the Datadog Agent on a Kubernetes cluster.
func NewDDAWithOperator ¶
func NewDDAWithOperator(e config.Env, resourceName string, kubeProvider *kubernetes.Provider, ddaOptions ...agentwithoperatorparams.Option) (*KubernetesAgent, error)
func (*KubernetesAgent) Export ¶
func (h *KubernetesAgent) Export(ctx *pulumi.Context, out *KubernetesAgentOutput) error
type KubernetesAgentOutput ¶
type KubernetesAgentOutput struct {
components.JSONImporter
LinuxNodeAgent kubernetes.KubernetesObjRefOutput `json:"linuxNodeAgent"`
LinuxClusterAgent kubernetes.KubernetesObjRefOutput `json:"linuxClusterAgent"`
LinuxClusterChecks kubernetes.KubernetesObjRefOutput `json:"linuxClusterChecks"`
WindowsNodeAgent kubernetes.KubernetesObjRefOutput `json:"windowsNodeAgent"`
WindowsClusterAgent kubernetes.KubernetesObjRefOutput `json:"windowsClusterAgent"`
WindowsClusterChecks kubernetes.KubernetesObjRefOutput `json:"windowsClusterChecks"`
FIPSEnabled bool `json:"fipsEnabled"`
}