Job

class Job : KotlinCustomResource

Job represents the configuration of a single job. This resource waits until its status is ready before registering success for create/update, and populating output properties from the current state of the resource. The following conditions are used to determine whether the resource creation has succeeded or failed:

  1. The Job's '.status.startTime' is set, which indicates that the Job has started running.

  2. The Job's '.status.conditions' has a status of type 'Complete', and a 'status' set to 'True'.

  3. The Job's '.status.conditions' do not have a status of type 'Failed', with a 'status' set to 'True'. If this condition is set, we should fail the Job immediately. If the Job has not reached a Ready state after 10 minutes, it will time out and mark the resource update as Failed. You can override the default timeout value by setting the 'customTimeouts' option on the resource. By default, if a resource failed to become ready in a previous update, Pulumi will continue to wait for readiness on the next update. If you would prefer to schedule a replacement for an unready resource on the next update, you can add the "pulumi.com/replaceUnready": "true" annotation to the resource definition.

Example Usage

Create a Job with auto-naming

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.kubernetes.batch_v1.Job;
import com.pulumi.kubernetes.batch_v1.JobArgs;
import com.pulumi.kubernetes.batch_v1.inputs.JobSpecArgs;
import com.pulumi.kubernetes.core_v1.inputs.PodTemplateSpecArgs;
import com.pulumi.kubernetes.core_v1.inputs.PodSpecArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var job = new Job("job", JobArgs.builder()
.metadata(null)
.spec(JobSpecArgs.builder()
.backoffLimit(4)
.template(PodTemplateSpecArgs.builder()
.spec(PodSpecArgs.builder()
.containers(ContainerArgs.builder()
.command(
"perl",
"-Mbignum=bpi",
"-wle",
"print bpi(2000)")
.image("perl")
.name("pi")
.build())
.restartPolicy("Never")
.build())
.build())
.build())
.build());
}
}

Create a Job with a user-specified name

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.kubernetes.batch_v1.Job;
import com.pulumi.kubernetes.batch_v1.JobArgs;
import com.pulumi.kubernetes.meta_v1.inputs.ObjectMetaArgs;
import com.pulumi.kubernetes.batch_v1.inputs.JobSpecArgs;
import com.pulumi.kubernetes.core_v1.inputs.PodTemplateSpecArgs;
import com.pulumi.kubernetes.core_v1.inputs.PodSpecArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var job = new Job("job", JobArgs.builder()
.metadata(ObjectMetaArgs.builder()
.name("pi")
.build())
.spec(JobSpecArgs.builder()
.backoffLimit(4)
.template(PodTemplateSpecArgs.builder()
.spec(PodSpecArgs.builder()
.containers(ContainerArgs.builder()
.command(
"perl",
"-Mbignum=bpi",
"-wle",
"print bpi(2000)")
.image("perl")
.name("pi")
.build())
.restartPolicy("Never")
.build())
.build())
.build())
.build());
}
}

Properties

Link copied to clipboard
val apiVersion: Output<String>

APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val kind: Output<String>

Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

Link copied to clipboard
val metadata: Output<ObjectMeta>

Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val spec: Output<JobSpec>

Specification of the desired behavior of a job. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

Link copied to clipboard
val status: Output<JobStatus>?

Current status of a job. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

Link copied to clipboard
val urn: Output<String>