All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azurenative.machinelearningservices.kotlin.Job.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 2.82.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azurenative.machinelearningservices.kotlin

import com.pulumi.azurenative.machinelearningservices.kotlin.outputs.SystemDataResponse
import com.pulumi.azurenative.machinelearningservices.kotlin.outputs.SystemDataResponse.Companion.toKotlin
import com.pulumi.core.Output
import com.pulumi.kotlin.KotlinCustomResource
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.ResourceMapper
import com.pulumi.kotlin.options.CustomResourceOptions
import com.pulumi.kotlin.options.CustomResourceOptionsBuilder
import com.pulumi.resources.Resource
import kotlin.Any
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit

/**
 * Builder for [Job].
 */
@PulumiTagMarker
public class JobResourceBuilder internal constructor() {
    public var name: String? = null

    public var args: JobArgs = JobArgs()

    public var opts: CustomResourceOptions = CustomResourceOptions()

    /**
     * @param name The _unique_ name of the resulting resource.
     */
    public fun name(`value`: String) {
        this.name = value
    }

    /**
     * @param block The arguments to use to populate this resource's properties.
     */
    public suspend fun args(block: suspend JobArgsBuilder.() -> Unit) {
        val builder = JobArgsBuilder()
        block(builder)
        this.args = builder.build()
    }

    /**
     * @param block A bag of options that control this resource's behavior.
     */
    public suspend fun opts(block: suspend CustomResourceOptionsBuilder.() -> Unit) {
        this.opts = com.pulumi.kotlin.options.CustomResourceOptions.opts(block)
    }

    internal fun build(): Job {
        val builtJavaResource =
            com.pulumi.azurenative.machinelearningservices.Job(
                this.name,
                this.args.toJava(),
                this.opts.toJava(),
            )
        return Job(builtJavaResource)
    }
}

/**
 * Azure Resource Manager resource envelope.
 * Azure REST API version: 2023-04-01. Prior API version in Azure Native 1.x: 2021-03-01-preview.
 * Other available API versions: 2021-03-01-preview, 2022-02-01-preview, 2023-04-01-preview, 2023-06-01-preview, 2023-08-01-preview, 2023-10-01, 2024-01-01-preview, 2024-04-01, 2024-04-01-preview, 2024-07-01-preview.
 * ## Example Usage
 * ### CreateOrUpdate AutoML Job.
 * ```csharp
 * using System.Collections.Generic;
 * using System.Linq;
 * using Pulumi;
 * using AzureNative = Pulumi.AzureNative;
 * return await Deployment.RunAsync(() =>
 * {
 *     var job = new AzureNative.MachineLearningServices.Job("job", new()
 *     {
 *         Id = "string",
 *         JobBaseProperties = new AzureNative.MachineLearningServices.Inputs.AutoMLJobArgs
 *         {
 *             ComputeId = "string",
 *             Description = "string",
 *             DisplayName = "string",
 *             EnvironmentId = "string",
 *             EnvironmentVariables =
 *             {
 *                 { "string", "string" },
 *             },
 *             ExperimentName = "string",
 *             Identity = new AzureNative.MachineLearningServices.Inputs.AmlTokenArgs
 *             {
 *                 IdentityType = "AMLToken",
 *             },
 *             IsArchived = false,
 *             JobType = "AutoML",
 *             Outputs =
 *             {
 *                 { "string", new AzureNative.MachineLearningServices.Inputs.UriFileJobOutputArgs
 *                 {
 *                     Description = "string",
 *                     JobOutputType = "uri_file",
 *                     Mode = AzureNative.MachineLearningServices.OutputDeliveryMode.ReadWriteMount,
 *                     Uri = "string",
 *                 } },
 *             },
 *             Properties =
 *             {
 *                 { "string", "string" },
 *             },
 *             Resources = new AzureNative.MachineLearningServices.Inputs.JobResourceConfigurationArgs
 *             {
 *                 InstanceCount = 1,
 *                 InstanceType = "string",
 *                 Properties =
 *                 {
 *                     { "string", new Dictionary
 *                     {
 *                         ["9bec0ab0-c62f-4fa9-a97c-7b24bbcc90ad"] = null,
 *                     } },
 *                 },
 *             },
 *             Services =
 *             {
 *                 { "string", new AzureNative.MachineLearningServices.Inputs.JobServiceArgs
 *                 {
 *                     Endpoint = "string",
 *                     JobServiceType = "string",
 *                     Port = 1,
 *                     Properties =
 *                     {
 *                         { "string", "string" },
 *                     },
 *                 } },
 *             },
 *             Tags =
 *             {
 *                 { "string", "string" },
 *             },
 *             TaskDetails = new AzureNative.MachineLearningServices.Inputs.ImageClassificationArgs
 *             {
 *                 LimitSettings = new AzureNative.MachineLearningServices.Inputs.ImageLimitSettingsArgs
 *                 {
 *                     MaxTrials = 2,
 *                 },
 *                 ModelSettings = new AzureNative.MachineLearningServices.Inputs.ImageModelSettingsClassificationArgs
 *                 {
 *                     ValidationCropSize = 2,
 *                 },
 *                 SearchSpace = new[]
 *                 {
 *                     new AzureNative.MachineLearningServices.Inputs.ImageModelDistributionSettingsClassificationArgs
 *                     {
 *                         ValidationCropSize = "choice(2, 360)",
 *                     },
 *                 },
 *                 TargetColumnName = "string",
 *                 TaskType = "ImageClassification",
 *                 TrainingData = new AzureNative.MachineLearningServices.Inputs.MLTableJobInputArgs
 *                 {
 *                     JobInputType = "mltable",
 *                     Uri = "string",
 *                 },
 *             },
 *         },
 *         ResourceGroupName = "test-rg",
 *         WorkspaceName = "my-aml-workspace",
 *     });
 * });
 * ```
 * ```go
 * package main
 * import (
 * 	machinelearningservices "github.com/pulumi/pulumi-azure-native-sdk/machinelearningservices/v2"
 * 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
 * )
 * func main() {
 * 	pulumi.Run(func(ctx *pulumi.Context) error {
 * 		_, err := machinelearningservices.NewJob(ctx, "job", &machinelearningservices.JobArgs{
 * 			Id: pulumi.String("string"),
 * 			JobBaseProperties: &machinelearningservices.AutoMLJobArgs{
 * 				ComputeId:     pulumi.String("string"),
 * 				Description:   pulumi.String("string"),
 * 				DisplayName:   pulumi.String("string"),
 * 				EnvironmentId: pulumi.String("string"),
 * 				EnvironmentVariables: pulumi.StringMap{
 * 					"string": pulumi.String("string"),
 * 				},
 * 				ExperimentName: pulumi.String("string"),
 * 				Identity: machinelearningservices.AmlToken{
 * 					IdentityType: "AMLToken",
 * 				},
 * 				IsArchived: pulumi.Bool(false),
 * 				JobType:    pulumi.String("AutoML"),
 * 				Outputs: pulumi.Map{
 * 					"string": machinelearningservices.UriFileJobOutput{
 * 						Description:   "string",
 * 						JobOutputType: "uri_file",
 * 						Mode:          machinelearningservices.OutputDeliveryModeReadWriteMount,
 * 						Uri:           "string",
 * 					},
 * 				},
 * 				Properties: pulumi.StringMap{
 * 					"string": pulumi.String("string"),
 * 				},
 * 				Resources: &machinelearningservices.JobResourceConfigurationArgs{
 * 					InstanceCount: pulumi.Int(1),
 * 					InstanceType:  pulumi.String("string"),
 * 					Properties: pulumi.Map{
 * 						"string": pulumi.Any(map[string]interface{}{
 * 							"9bec0ab0-c62f-4fa9-a97c-7b24bbcc90ad": nil,
 * 						}),
 * 					},
 * 				},
 * 				Services: machinelearningservices.JobServiceMap{
 * 					"string": &machinelearningservices.JobServiceArgs{
 * 						Endpoint:       pulumi.String("string"),
 * 						JobServiceType: pulumi.String("string"),
 * 						Port:           pulumi.Int(1),
 * 						Properties: pulumi.StringMap{
 * 							"string": pulumi.String("string"),
 * 						},
 * 					},
 * 				},
 * 				Tags: pulumi.StringMap{
 * 					"string": pulumi.String("string"),
 * 				},
 * 				TaskDetails: machinelearningservices.ImageClassification{
 * 					LimitSettings: machinelearningservices.ImageLimitSettings{
 * 						MaxTrials: 2,
 * 					},
 * 					ModelSettings: machinelearningservices.ImageModelSettingsClassification{
 * 						ValidationCropSize: 2,
 * 					},
 * 					SearchSpace: []machinelearningservices.ImageModelDistributionSettingsClassification{
 * 						{
 * 							ValidationCropSize: "choice(2, 360)",
 * 						},
 * 					},
 * 					TargetColumnName: "string",
 * 					TaskType:         "ImageClassification",
 * 					TrainingData: machinelearningservices.MLTableJobInput{
 * 						JobInputType: "mltable",
 * 						Uri:          "string",
 * 					},
 * 				},
 * 			},
 * 			ResourceGroupName: pulumi.String("test-rg"),
 * 			WorkspaceName:     pulumi.String("my-aml-workspace"),
 * 		})
 * 		if err != nil {
 * 			return err
 * 		}
 * 		return nil
 * 	})
 * }
 * ```
 * ```java
 * package generated_program;
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.machinelearningservices.Job;
 * import com.pulumi.azurenative.machinelearningservices.JobArgs;
 * 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()
 *             .id("string")
 *             .jobBaseProperties(AutoMLJobArgs.builder()
 *                 .computeId("string")
 *                 .description("string")
 *                 .displayName("string")
 *                 .environmentId("string")
 *                 .environmentVariables(Map.of("string", "string"))
 *                 .experimentName("string")
 *                 .identity(AmlTokenArgs.builder()
 *                     .identityType("AMLToken")
 *                     .build())
 *                 .isArchived(false)
 *                 .jobType("AutoML")
 *                 .outputs(Map.of("string", Map.ofEntries(
 *                     Map.entry("description", "string"),
 *                     Map.entry("jobOutputType", "uri_file"),
 *                     Map.entry("mode", "ReadWriteMount"),
 *                     Map.entry("uri", "string")
 *                 )))
 *                 .properties(Map.of("string", "string"))
 *                 .resources(JobResourceConfigurationArgs.builder()
 *                     .instanceCount(1)
 *                     .instanceType("string")
 *                     .properties(Map.of("string", Map.of("9bec0ab0-c62f-4fa9-a97c-7b24bbcc90ad", null)))
 *                     .build())
 *                 .services(Map.of("string", Map.ofEntries(
 *                     Map.entry("endpoint", "string"),
 *                     Map.entry("jobServiceType", "string"),
 *                     Map.entry("port", 1),
 *                     Map.entry("properties", Map.of("string", "string"))
 *                 )))
 *                 .tags(Map.of("string", "string"))
 *                 .taskDetails(ImageClassificationArgs.builder()
 *                     .limitSettings(ImageLimitSettingsArgs.builder()
 *                         .maxTrials(2)
 *                         .build())
 *                     .modelSettings(ImageModelSettingsClassificationArgs.builder()
 *                         .validationCropSize(2)
 *                         .build())
 *                     .searchSpace(ImageModelDistributionSettingsClassificationArgs.builder()
 *                         .validationCropSize("choice(2, 360)")
 *                         .build())
 *                     .targetColumnName("string")
 *                     .taskType("ImageClassification")
 *                     .trainingData(MLTableJobInputArgs.builder()
 *                         .jobInputType("mltable")
 *                         .uri("string")
 *                         .build())
 *                     .build())
 *                 .build())
 *             .resourceGroupName("test-rg")
 *             .workspaceName("my-aml-workspace")
 *             .build());
 *     }
 * }
 * ```
 * ### CreateOrUpdate Command Job.
 * ```csharp
 * using System.Collections.Generic;
 * using System.Linq;
 * using Pulumi;
 * using AzureNative = Pulumi.AzureNative;
 * return await Deployment.RunAsync(() =>
 * {
 *     var job = new AzureNative.MachineLearningServices.Job("job", new()
 *     {
 *         Id = "string",
 *         JobBaseProperties = new AzureNative.MachineLearningServices.Inputs.CommandJobArgs
 *         {
 *             CodeId = "string",
 *             Command = "string",
 *             ComputeId = "string",
 *             Description = "string",
 *             DisplayName = "string",
 *             Distribution = new AzureNative.MachineLearningServices.Inputs.TensorFlowArgs
 *             {
 *                 DistributionType = "TensorFlow",
 *                 ParameterServerCount = 1,
 *                 WorkerCount = 1,
 *             },
 *             EnvironmentId = "string",
 *             EnvironmentVariables =
 *             {
 *                 { "string", "string" },
 *             },
 *             ExperimentName = "string",
 *             Identity = new AzureNative.MachineLearningServices.Inputs.AmlTokenArgs
 *             {
 *                 IdentityType = "AMLToken",
 *             },
 *             Inputs =
 *             {
 *                 { "string", new AzureNative.MachineLearningServices.Inputs.LiteralJobInputArgs
 *                 {
 *                     Description = "string",
 *                     JobInputType = "literal",
 *                     Value = "string",
 *                 } },
 *             },
 *             JobType = "Command",
 *             Limits = new AzureNative.MachineLearningServices.Inputs.CommandJobLimitsArgs
 *             {
 *                 JobLimitsType = "Command",
 *                 Timeout = "PT5M",
 *             },
 *             Outputs =
 *             {
 *                 { "string", new AzureNative.MachineLearningServices.Inputs.UriFileJobOutputArgs
 *                 {
 *                     Description = "string",
 *                     JobOutputType = "uri_file",
 *                     Mode = AzureNative.MachineLearningServices.OutputDeliveryMode.ReadWriteMount,
 *                     Uri = "string",
 *                 } },
 *             },
 *             Properties =
 *             {
 *                 { "string", "string" },
 *             },
 *             Resources = new AzureNative.MachineLearningServices.Inputs.JobResourceConfigurationArgs
 *             {
 *                 InstanceCount = 1,
 *                 InstanceType = "string",
 *                 Properties =
 *                 {
 *                     { "string", new Dictionary
 *                     {
 *                         ["e6b6493e-7d5e-4db3-be1e-306ec641327e"] = null,
 *                     } },
 *                 },
 *             },
 *             Services =
 *             {
 *                 { "string", new AzureNative.MachineLearningServices.Inputs.JobServiceArgs
 *                 {
 *                     Endpoint = "string",
 *                     JobServiceType = "string",
 *                     Port = 1,
 *                     Properties =
 *                     {
 *                         { "string", "string" },
 *                     },
 *                 } },
 *             },
 *             Tags =
 *             {
 *                 { "string", "string" },
 *             },
 *         },
 *         ResourceGroupName = "test-rg",
 *         WorkspaceName = "my-aml-workspace",
 *     });
 * });
 * ```
 * ```go
 * package main
 * import (
 * 	machinelearningservices "github.com/pulumi/pulumi-azure-native-sdk/machinelearningservices/v2"
 * 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
 * )
 * func main() {
 * 	pulumi.Run(func(ctx *pulumi.Context) error {
 * 		_, err := machinelearningservices.NewJob(ctx, "job", &machinelearningservices.JobArgs{
 * 			Id: pulumi.String("string"),
 * 			JobBaseProperties: &machinelearningservices.CommandJobArgs{
 * 				CodeId:      pulumi.String("string"),
 * 				Command:     pulumi.String("string"),
 * 				ComputeId:   pulumi.String("string"),
 * 				Description: pulumi.String("string"),
 * 				DisplayName: pulumi.String("string"),
 * 				Distribution: machinelearningservices.TensorFlow{
 * 					DistributionType:     "TensorFlow",
 * 					ParameterServerCount: 1,
 * 					WorkerCount:          1,
 * 				},
 * 				EnvironmentId: pulumi.String("string"),
 * 				EnvironmentVariables: pulumi.StringMap{
 * 					"string": pulumi.String("string"),
 * 				},
 * 				ExperimentName: pulumi.String("string"),
 * 				Identity: machinelearningservices.AmlToken{
 * 					IdentityType: "AMLToken",
 * 				},
 * 				Inputs: pulumi.Map{
 * 					"string": machinelearningservices.LiteralJobInput{
 * 						Description:  "string",
 * 						JobInputType: "literal",
 * 						Value:        "string",
 * 					},
 * 				},
 * 				JobType: pulumi.String("Command"),
 * 				Limits: &machinelearningservices.CommandJobLimitsArgs{
 * 					JobLimitsType: pulumi.String("Command"),
 * 					Timeout:       pulumi.String("PT5M"),
 * 				},
 * 				Outputs: pulumi.Map{
 * 					"string": machinelearningservices.UriFileJobOutput{
 * 						Description:   "string",
 * 						JobOutputType: "uri_file",
 * 						Mode:          machinelearningservices.OutputDeliveryModeReadWriteMount,
 * 						Uri:           "string",
 * 					},
 * 				},
 * 				Properties: pulumi.StringMap{
 * 					"string": pulumi.String("string"),
 * 				},
 * 				Resources: &machinelearningservices.JobResourceConfigurationArgs{
 * 					InstanceCount: pulumi.Int(1),
 * 					InstanceType:  pulumi.String("string"),
 * 					Properties: pulumi.Map{
 * 						"string": pulumi.Any(map[string]interface{}{
 * 							"e6b6493e-7d5e-4db3-be1e-306ec641327e": nil,
 * 						}),
 * 					},
 * 				},
 * 				Services: machinelearningservices.JobServiceMap{
 * 					"string": &machinelearningservices.JobServiceArgs{
 * 						Endpoint:       pulumi.String("string"),
 * 						JobServiceType: pulumi.String("string"),
 * 						Port:           pulumi.Int(1),
 * 						Properties: pulumi.StringMap{
 * 							"string": pulumi.String("string"),
 * 						},
 * 					},
 * 				},
 * 				Tags: pulumi.StringMap{
 * 					"string": pulumi.String("string"),
 * 				},
 * 			},
 * 			ResourceGroupName: pulumi.String("test-rg"),
 * 			WorkspaceName:     pulumi.String("my-aml-workspace"),
 * 		})
 * 		if err != nil {
 * 			return err
 * 		}
 * 		return nil
 * 	})
 * }
 * ```
 * ```java
 * package generated_program;
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.machinelearningservices.Job;
 * import com.pulumi.azurenative.machinelearningservices.JobArgs;
 * 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()
 *             .id("string")
 *             .jobBaseProperties(CommandJobArgs.builder()
 *                 .codeId("string")
 *                 .command("string")
 *                 .computeId("string")
 *                 .description("string")
 *                 .displayName("string")
 *                 .distribution(TensorFlowArgs.builder()
 *                     .distributionType("TensorFlow")
 *                     .parameterServerCount(1)
 *                     .workerCount(1)
 *                     .build())
 *                 .environmentId("string")
 *                 .environmentVariables(Map.of("string", "string"))
 *                 .experimentName("string")
 *                 .identity(AmlTokenArgs.builder()
 *                     .identityType("AMLToken")
 *                     .build())
 *                 .inputs(Map.of("string", Map.ofEntries(
 *                     Map.entry("description", "string"),
 *                     Map.entry("jobInputType", "literal"),
 *                     Map.entry("value", "string")
 *                 )))
 *                 .jobType("Command")
 *                 .limits(CommandJobLimitsArgs.builder()
 *                     .jobLimitsType("Command")
 *                     .timeout("PT5M")
 *                     .build())
 *                 .outputs(Map.of("string", Map.ofEntries(
 *                     Map.entry("description", "string"),
 *                     Map.entry("jobOutputType", "uri_file"),
 *                     Map.entry("mode", "ReadWriteMount"),
 *                     Map.entry("uri", "string")
 *                 )))
 *                 .properties(Map.of("string", "string"))
 *                 .resources(JobResourceConfigurationArgs.builder()
 *                     .instanceCount(1)
 *                     .instanceType("string")
 *                     .properties(Map.of("string", Map.of("e6b6493e-7d5e-4db3-be1e-306ec641327e", null)))
 *                     .build())
 *                 .services(Map.of("string", Map.ofEntries(
 *                     Map.entry("endpoint", "string"),
 *                     Map.entry("jobServiceType", "string"),
 *                     Map.entry("port", 1),
 *                     Map.entry("properties", Map.of("string", "string"))
 *                 )))
 *                 .tags(Map.of("string", "string"))
 *                 .build())
 *             .resourceGroupName("test-rg")
 *             .workspaceName("my-aml-workspace")
 *             .build());
 *     }
 * }
 * ```
 * ### CreateOrUpdate Pipeline Job.
 * ```csharp
 * using System.Collections.Generic;
 * using System.Linq;
 * using Pulumi;
 * using AzureNative = Pulumi.AzureNative;
 * return await Deployment.RunAsync(() =>
 * {
 *     var job = new AzureNative.MachineLearningServices.Job("job", new()
 *     {
 *         Id = "string",
 *         JobBaseProperties = new AzureNative.MachineLearningServices.Inputs.PipelineJobArgs
 *         {
 *             ComputeId = "string",
 *             Description = "string",
 *             DisplayName = "string",
 *             ExperimentName = "string",
 *             Inputs =
 *             {
 *                 { "string", new AzureNative.MachineLearningServices.Inputs.LiteralJobInputArgs
 *                 {
 *                     Description = "string",
 *                     JobInputType = "literal",
 *                     Value = "string",
 *                 } },
 *             },
 *             JobType = "Pipeline",
 *             Outputs =
 *             {
 *                 { "string", new AzureNative.MachineLearningServices.Inputs.UriFileJobOutputArgs
 *                 {
 *                     Description = "string",
 *                     JobOutputType = "uri_file",
 *                     Mode = AzureNative.MachineLearningServices.OutputDeliveryMode.Upload,
 *                     Uri = "string",
 *                 } },
 *             },
 *             Properties =
 *             {
 *                 { "string", "string" },
 *             },
 *             Services =
 *             {
 *                 { "string", new AzureNative.MachineLearningServices.Inputs.JobServiceArgs
 *                 {
 *                     Endpoint = "string",
 *                     JobServiceType = "string",
 *                     Port = 1,
 *                     Properties =
 *                     {
 *                         { "string", "string" },
 *                     },
 *                 } },
 *             },
 *             Settings = null,
 *             Tags =
 *             {
 *                 { "string", "string" },
 *             },
 *         },
 *         ResourceGroupName = "test-rg",
 *         WorkspaceName = "my-aml-workspace",
 *     });
 * });
 * ```
 * ```go
 * package main
 * import (
 * 	machinelearningservices "github.com/pulumi/pulumi-azure-native-sdk/machinelearningservices/v2"
 * 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
 * )
 * func main() {
 * 	pulumi.Run(func(ctx *pulumi.Context) error {
 * 		_, err := machinelearningservices.NewJob(ctx, "job", &machinelearningservices.JobArgs{
 * 			Id: pulumi.String("string"),
 * 			JobBaseProperties: &machinelearningservices.PipelineJobArgs{
 * 				ComputeId:      pulumi.String("string"),
 * 				Description:    pulumi.String("string"),
 * 				DisplayName:    pulumi.String("string"),
 * 				ExperimentName: pulumi.String("string"),
 * 				Inputs: pulumi.Map{
 * 					"string": machinelearningservices.LiteralJobInput{
 * 						Description:  "string",
 * 						JobInputType: "literal",
 * 						Value:        "string",
 * 					},
 * 				},
 * 				JobType: pulumi.String("Pipeline"),
 * 				Outputs: pulumi.Map{
 * 					"string": machinelearningservices.UriFileJobOutput{
 * 						Description:   "string",
 * 						JobOutputType: "uri_file",
 * 						Mode:          machinelearningservices.OutputDeliveryModeUpload,
 * 						Uri:           "string",
 * 					},
 * 				},
 * 				Properties: pulumi.StringMap{
 * 					"string": pulumi.String("string"),
 * 				},
 * 				Services: machinelearningservices.JobServiceMap{
 * 					"string": &machinelearningservices.JobServiceArgs{
 * 						Endpoint:       pulumi.String("string"),
 * 						JobServiceType: pulumi.String("string"),
 * 						Port:           pulumi.Int(1),
 * 						Properties: pulumi.StringMap{
 * 							"string": pulumi.String("string"),
 * 						},
 * 					},
 * 				},
 * 				Settings: pulumi.Any(nil),
 * 				Tags: pulumi.StringMap{
 * 					"string": pulumi.String("string"),
 * 				},
 * 			},
 * 			ResourceGroupName: pulumi.String("test-rg"),
 * 			WorkspaceName:     pulumi.String("my-aml-workspace"),
 * 		})
 * 		if err != nil {
 * 			return err
 * 		}
 * 		return nil
 * 	})
 * }
 * ```
 * ```java
 * package generated_program;
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.machinelearningservices.Job;
 * import com.pulumi.azurenative.machinelearningservices.JobArgs;
 * 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()
 *             .id("string")
 *             .jobBaseProperties(PipelineJobArgs.builder()
 *                 .computeId("string")
 *                 .description("string")
 *                 .displayName("string")
 *                 .experimentName("string")
 *                 .inputs(Map.of("string", Map.ofEntries(
 *                     Map.entry("description", "string"),
 *                     Map.entry("jobInputType", "literal"),
 *                     Map.entry("value", "string")
 *                 )))
 *                 .jobType("Pipeline")
 *                 .outputs(Map.of("string", Map.ofEntries(
 *                     Map.entry("description", "string"),
 *                     Map.entry("jobOutputType", "uri_file"),
 *                     Map.entry("mode", "Upload"),
 *                     Map.entry("uri", "string")
 *                 )))
 *                 .properties(Map.of("string", "string"))
 *                 .services(Map.of("string", Map.ofEntries(
 *                     Map.entry("endpoint", "string"),
 *                     Map.entry("jobServiceType", "string"),
 *                     Map.entry("port", 1),
 *                     Map.entry("properties", Map.of("string", "string"))
 *                 )))
 *                 .settings()
 *                 .tags(Map.of("string", "string"))
 *                 .build())
 *             .resourceGroupName("test-rg")
 *             .workspaceName("my-aml-workspace")
 *             .build());
 *     }
 * }
 * ```
 * ### CreateOrUpdate Sweep Job.
 * ```csharp
 * using System.Collections.Generic;
 * using System.Linq;
 * using Pulumi;
 * using AzureNative = Pulumi.AzureNative;
 * return await Deployment.RunAsync(() =>
 * {
 *     var job = new AzureNative.MachineLearningServices.Job("job", new()
 *     {
 *         Id = "string",
 *         JobBaseProperties = new AzureNative.MachineLearningServices.Inputs.SweepJobArgs
 *         {
 *             ComputeId = "string",
 *             Description = "string",
 *             DisplayName = "string",
 *             EarlyTermination = new AzureNative.MachineLearningServices.Inputs.MedianStoppingPolicyArgs
 *             {
 *                 DelayEvaluation = 1,
 *                 EvaluationInterval = 1,
 *                 PolicyType = "MedianStopping",
 *             },
 *             ExperimentName = "string",
 *             JobType = "Sweep",
 *             Limits = new AzureNative.MachineLearningServices.Inputs.SweepJobLimitsArgs
 *             {
 *                 JobLimitsType = "Sweep",
 *                 MaxConcurrentTrials = 1,
 *                 MaxTotalTrials = 1,
 *                 TrialTimeout = "PT1S",
 *             },
 *             Objective = new AzureNative.MachineLearningServices.Inputs.ObjectiveArgs
 *             {
 *                 Goal = AzureNative.MachineLearningServices.Goal.Minimize,
 *                 PrimaryMetric = "string",
 *             },
 *             Properties =
 *             {
 *                 { "string", "string" },
 *             },
 *             SamplingAlgorithm = new AzureNative.MachineLearningServices.Inputs.GridSamplingAlgorithmArgs
 *             {
 *                 SamplingAlgorithmType = "Grid",
 *             },
 *             SearchSpace = new Dictionary
 *             {
 *                 ["string"] = new Dictionary
 *                 {
 *                 },
 *             },
 *             Services =
 *             {
 *                 { "string", new AzureNative.MachineLearningServices.Inputs.JobServiceArgs
 *                 {
 *                     Endpoint = "string",
 *                     JobServiceType = "string",
 *                     Port = 1,
 *                     Properties =
 *                     {
 *                         { "string", "string" },
 *                     },
 *                 } },
 *             },
 *             Tags =
 *             {
 *                 { "string", "string" },
 *             },
 *             Trial = new AzureNative.MachineLearningServices.Inputs.TrialComponentArgs
 *             {
 *                 CodeId = "string",
 *                 Command = "string",
 *                 Distribution = new AzureNative.MachineLearningServices.Inputs.MpiArgs
 *                 {
 *                     DistributionType = "Mpi",
 *                     ProcessCountPerInstance = 1,
 *                 },
 *                 EnvironmentId = "string",
 *                 EnvironmentVariables =
 *                 {
 *                     { "string", "string" },
 *                 },
 *                 Resources = new AzureNative.MachineLearningServices.Inputs.JobResourceConfigurationArgs
 *                 {
 *                     InstanceCount = 1,
 *                     InstanceType = "string",
 *                     Properties =
 *                     {
 *                         { "string", new Dictionary
 *                         {
 *                             ["e6b6493e-7d5e-4db3-be1e-306ec641327e"] = null,
 *                         } },
 *                     },
 *                 },
 *             },
 *         },
 *         ResourceGroupName = "test-rg",
 *         WorkspaceName = "my-aml-workspace",
 *     });
 * });
 * ```
 * ```go
 * package main
 * import (
 * 	machinelearningservices "github.com/pulumi/pulumi-azure-native-sdk/machinelearningservices/v2"
 * 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
 * )
 * func main() {
 * 	pulumi.Run(func(ctx *pulumi.Context) error {
 * 		_, err := machinelearningservices.NewJob(ctx, "job", &machinelearningservices.JobArgs{
 * 			Id: pulumi.String("string"),
 * 			JobBaseProperties: &machinelearningservices.SweepJobArgs{
 * 				ComputeId:   pulumi.String("string"),
 * 				Description: pulumi.String("string"),
 * 				DisplayName: pulumi.String("string"),
 * 				EarlyTermination: machinelearningservices.MedianStoppingPolicy{
 * 					DelayEvaluation:    1,
 * 					EvaluationInterval: 1,
 * 					PolicyType:         "MedianStopping",
 * 				},
 * 				ExperimentName: pulumi.String("string"),
 * 				JobType:        pulumi.String("Sweep"),
 * 				Limits: &machinelearningservices.SweepJobLimitsArgs{
 * 					JobLimitsType:       pulumi.String("Sweep"),
 * 					MaxConcurrentTrials: pulumi.Int(1),
 * 					MaxTotalTrials:      pulumi.Int(1),
 * 					TrialTimeout:        pulumi.String("PT1S"),
 * 				},
 * 				Objective: &machinelearningservices.ObjectiveArgs{
 * 					Goal:          pulumi.String(machinelearningservices.GoalMinimize),
 * 					PrimaryMetric: pulumi.String("string"),
 * 				},
 * 				Properties: pulumi.StringMap{
 * 					"string": pulumi.String("string"),
 * 				},
 * 				SamplingAlgorithm: machinelearningservices.GridSamplingAlgorithm{
 * 					SamplingAlgorithmType: "Grid",
 * 				},
 * 				SearchSpace: pulumi.Any(map[string]interface{}{
 * 					"string": nil,
 * 				}),
 * 				Services: machinelearningservices.JobServiceMap{
 * 					"string": &machinelearningservices.JobServiceArgs{
 * 						Endpoint:       pulumi.String("string"),
 * 						JobServiceType: pulumi.String("string"),
 * 						Port:           pulumi.Int(1),
 * 						Properties: pulumi.StringMap{
 * 							"string": pulumi.String("string"),
 * 						},
 * 					},
 * 				},
 * 				Tags: pulumi.StringMap{
 * 					"string": pulumi.String("string"),
 * 				},
 * 				Trial: &machinelearningservices.TrialComponentArgs{
 * 					CodeId:  pulumi.String("string"),
 * 					Command: pulumi.String("string"),
 * 					Distribution: machinelearningservices.Mpi{
 * 						DistributionType:        "Mpi",
 * 						ProcessCountPerInstance: 1,
 * 					},
 * 					EnvironmentId: pulumi.String("string"),
 * 					EnvironmentVariables: pulumi.StringMap{
 * 						"string": pulumi.String("string"),
 * 					},
 * 					Resources: &machinelearningservices.JobResourceConfigurationArgs{
 * 						InstanceCount: pulumi.Int(1),
 * 						InstanceType:  pulumi.String("string"),
 * 						Properties: pulumi.Map{
 * 							"string": pulumi.Any(map[string]interface{}{
 * 								"e6b6493e-7d5e-4db3-be1e-306ec641327e": nil,
 * 							}),
 * 						},
 * 					},
 * 				},
 * 			},
 * 			ResourceGroupName: pulumi.String("test-rg"),
 * 			WorkspaceName:     pulumi.String("my-aml-workspace"),
 * 		})
 * 		if err != nil {
 * 			return err
 * 		}
 * 		return nil
 * 	})
 * }
 * ```
 * ```java
 * package generated_program;
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.machinelearningservices.Job;
 * import com.pulumi.azurenative.machinelearningservices.JobArgs;
 * 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()
 *             .id("string")
 *             .jobBaseProperties(SweepJobArgs.builder()
 *                 .computeId("string")
 *                 .description("string")
 *                 .displayName("string")
 *                 .earlyTermination(MedianStoppingPolicyArgs.builder()
 *                     .delayEvaluation(1)
 *                     .evaluationInterval(1)
 *                     .policyType("MedianStopping")
 *                     .build())
 *                 .experimentName("string")
 *                 .jobType("Sweep")
 *                 .limits(SweepJobLimitsArgs.builder()
 *                     .jobLimitsType("Sweep")
 *                     .maxConcurrentTrials(1)
 *                     .maxTotalTrials(1)
 *                     .trialTimeout("PT1S")
 *                     .build())
 *                 .objective(ObjectiveArgs.builder()
 *                     .goal("Minimize")
 *                     .primaryMetric("string")
 *                     .build())
 *                 .properties(Map.of("string", "string"))
 *                 .samplingAlgorithm(GridSamplingAlgorithmArgs.builder()
 *                     .samplingAlgorithmType("Grid")
 *                     .build())
 *                 .searchSpace(Map.of("string", ))
 *                 .services(Map.of("string", Map.ofEntries(
 *                     Map.entry("endpoint", "string"),
 *                     Map.entry("jobServiceType", "string"),
 *                     Map.entry("port", 1),
 *                     Map.entry("properties", Map.of("string", "string"))
 *                 )))
 *                 .tags(Map.of("string", "string"))
 *                 .trial(TrialComponentArgs.builder()
 *                     .codeId("string")
 *                     .command("string")
 *                     .distribution(MpiArgs.builder()
 *                         .distributionType("Mpi")
 *                         .processCountPerInstance(1)
 *                         .build())
 *                     .environmentId("string")
 *                     .environmentVariables(Map.of("string", "string"))
 *                     .resources(JobResourceConfigurationArgs.builder()
 *                         .instanceCount(1)
 *                         .instanceType("string")
 *                         .properties(Map.of("string", Map.of("e6b6493e-7d5e-4db3-be1e-306ec641327e", null)))
 *                         .build())
 *                     .build())
 *                 .build())
 *             .resourceGroupName("test-rg")
 *             .workspaceName("my-aml-workspace")
 *             .build());
 *     }
 * }
 * ```
 * ## Import
 * An existing resource can be imported using its type token, name, and identifier, e.g.
 * ```sh
 * $ pulumi import azure-native:machinelearningservices:Job string /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/jobs/{id}
 * ```
 */
public class Job internal constructor(
    override val javaResource: com.pulumi.azurenative.machinelearningservices.Job,
) : KotlinCustomResource(javaResource, JobMapper) {
    /**
     * [Required] Additional attributes of the entity.
     */
    public val jobBaseProperties: Output
        get() = javaResource.jobBaseProperties().applyValue({ args0 -> args0 })

    /**
     * The name of the resource
     */
    public val name: Output
        get() = javaResource.name().applyValue({ args0 -> args0 })

    /**
     * Azure Resource Manager metadata containing createdBy and modifiedBy information.
     */
    public val systemData: Output
        get() = javaResource.systemData().applyValue({ args0 -> args0.let({ args0 -> toKotlin(args0) }) })

    /**
     * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
     */
    public val type: Output
        get() = javaResource.type().applyValue({ args0 -> args0 })
}

public object JobMapper : ResourceMapper {
    override fun supportsMappingOfType(javaResource: Resource): Boolean =
        com.pulumi.azurenative.machinelearningservices.Job::class == javaResource::class

    override fun map(javaResource: Resource): Job = Job(
        javaResource as
            com.pulumi.azurenative.machinelearningservices.Job,
    )
}

/**
 * @see [Job].
 * @param name The _unique_ name of the resulting resource.
 * @param block Builder for [Job].
 */
public suspend fun job(name: String, block: suspend JobResourceBuilder.() -> Unit): Job {
    val builder = JobResourceBuilder()
    builder.name(name)
    block(builder)
    return builder.build()
}

/**
 * @see [Job].
 * @param name The _unique_ name of the resulting resource.
 */
public fun job(name: String): Job {
    val builder = JobResourceBuilder()
    builder.name(name)
    return builder.build()
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy