class KubernetesObjectValue (construct)
| Language | Type name |
|---|---|
.NET | Amazon.CDK.AWS.Eks.V2.Alpha.KubernetesObjectValue |
Go | github.com/aws/aws-cdk-go/awscdkeksv2alpha/v2#KubernetesObjectValue |
Java | software.amazon.awscdk.services.eks.v2.alpha.KubernetesObjectValue |
Python | aws_cdk.aws_eks_v2_alpha.KubernetesObjectValue |
TypeScript (source) | @aws-cdk/aws-eks-v2-alpha ยป KubernetesObjectValue |
Implements
IConstruct, IDependable
Represents a value of a specific object deployed in the cluster.
Use this to fetch any information available by the kubectl get command.
Example
declare const cluster: eks.Cluster;
// query the load balancer address
const myServiceAddress = new eks.KubernetesObjectValue(this, 'LoadBalancerAttribute', {
cluster: cluster,
objectType: 'service',
objectName: 'my-service',
jsonPath: '.status.loadBalancer.ingress[0].hostname', // https://kubernetes.io/docs/reference/kubectl/jsonpath/
});
// pass the address to a lambda function
const proxyFunction = new lambda.Function(this, 'ProxyFunction', {
handler: 'index.handler',
code: lambda.Code.fromInline('my-code'),
runtime: lambda.Runtime.NODEJS_LATEST,
environment: {
myServiceAddress: myServiceAddress.value,
},
})
Initializer
new KubernetesObjectValue(scope: Construct, id: string, props: KubernetesObjectValueProps)
Parameters
- scope
Construct - id
string - props
KubernetesObject Value Props
Construct Props
| Name | Type | Description |
|---|---|---|
| cluster | ICluster | The EKS cluster to fetch attributes from. |
| json | string | JSONPath to the specific value. |
| object | string | The name of the object to query. |
| object | string | The object type to query. |
| object | string | The namespace the object belongs to. |
| removal | Removal | The removal policy applied to the custom resource that manages the Kubernetes object value. |
| timeout? | Duration | Timeout for waiting on a value. |
cluster
Type:
ICluster
The EKS cluster to fetch attributes from.
[disable-awslint:ref-via-interface]
jsonPath
Type:
string
JSONPath to the specific value.
See also: https://kubernetes.io/docs/reference/kubectl/jsonpath/
objectName
Type:
string
The name of the object to query.
objectType
Type:
string
The object type to query.
(e.g 'service', 'pod'...)
objectNamespace?
Type:
string
(optional, default: 'default')
The namespace the object belongs to.
removalPolicy?
Type:
Removal
(optional, default: RemovalPolicy.DESTROY)
The removal policy applied to the custom resource that manages the Kubernetes object value.
The removal policy controls what happens to the resource if it stops being managed by CloudFormation. This can happen in one of three situations:
- The resource is removed from the template, so CloudFormation stops managing it
- A change to the resource is made that requires it to be replaced, so CloudFormation stops managing it
- The stack is deleted, so CloudFormation stops managing all resources in it
timeout?
Type:
Duration
(optional, default: Duration.minutes(5))
Timeout for waiting on a value.
Properties
| Name | Type | Description |
|---|---|---|
| node | Node | The tree node. |
| value | string | The value as a string token. |
| static RESOURCE_TYPE | string | The CloudFormation resource type. |
node
Type:
Node
The tree node.
value
Type:
string
The value as a string token.
static RESOURCE_TYPE
Type:
string
The CloudFormation resource type.
Methods
| Name | Description |
|---|---|
| to | Returns a string representation of this construct. |
toString()
public toString(): string
Returns
string
Returns a string representation of this construct.

.NET
Go
Java
Python
TypeScript (