Job
Azure Resource Manager resource envelope. API Version: 2021-03-01-preview.
Example Usage
CreateOrUpdate Command Job.
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 = "testJob",
Properties = new AzureNative.MachineLearningServices.Inputs.CommandJobArgs
{
CodeId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1",
Command = "python file.py test",
Compute = new AzureNative.MachineLearningServices.Inputs.ComputeConfigurationArgs
{
InstanceCount = 1,
Target = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute",
},
Description = "string",
Distribution = new AzureNative.MachineLearningServices.Inputs.PyTorchArgs
{
DistributionType = "PyTorch",
ProcessCount = 2,
},
EnvironmentId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1",
EnvironmentVariables =
{
{ "MY_ENV_VAR1", "string" },
{ "MY_ENV_VAR2", "string" },
},
ExperimentName = "myExperiment",
Identity = new AzureNative.MachineLearningServices.Inputs.AmlTokenArgs
{
IdentityType = "AMLToken",
},
InputDataBindings =
{
{ "test", new AzureNative.MachineLearningServices.Inputs.InputDataBindingArgs
{
DataId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1",
PathOnCompute = "path/on/compute",
} },
},
JobType = "Command",
OutputDataBindings =
{
{ "test", new AzureNative.MachineLearningServices.Inputs.OutputDataBindingArgs
{
DatastoreId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore",
PathOnCompute = "path/on/compute",
} },
},
Properties =
{
{ "additionalProp1", "string" },
{ "additionalProp2", "string" },
{ "additionalProp3", "string" },
},
Tags =
{
{ "additionalProp1", "string" },
{ "additionalProp2", "string" },
{ "additionalProp3", "string" },
},
Timeout = "PT1M",
},
ResourceGroupName = "testrg123",
WorkspaceName = "testworkspace",
});
});
Content copied to clipboard
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("testJob")
.properties(Map.ofEntries(
Map.entry("codeId", "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1"),
Map.entry("command", "python file.py test"),
Map.entry("compute", Map.ofEntries(
Map.entry("instanceCount", 1),
Map.entry("target", "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute")
)),
Map.entry("description", "string"),
Map.entry("distribution", Map.ofEntries(
Map.entry("distributionType", "PyTorch"),
Map.entry("processCount", 2)
)),
Map.entry("environmentId", "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1"),
Map.entry("environmentVariables", CommandJobArgs.builder()
.mY_ENV_VAR1("string")
.mY_ENV_VAR2("string")
.build()),
Map.entry("experimentName", "myExperiment"),
Map.entry("identity", Map.of("identityType", "AMLToken")),
Map.entry("inputDataBindings", Map.of("test", Map.ofEntries(
Map.entry("dataId", "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1"),
Map.entry("pathOnCompute", "path/on/compute")
))),
Map.entry("jobType", "Command"),
Map.entry("outputDataBindings", Map.of("test", Map.ofEntries(
Map.entry("datastoreId", "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore"),
Map.entry("pathOnCompute", "path/on/compute")
))),
Map.entry("properties", CommandJobArgs.builder()
.additionalProp1("string")
.additionalProp2("string")
.additionalProp3("string")
.build()),
Map.entry("tags", CommandJobArgs.builder()
.additionalProp1("string")
.additionalProp2("string")
.additionalProp3("string")
.build()),
Map.entry("timeout", "PT1M")
))
.resourceGroupName("testrg123")
.workspaceName("testworkspace")
.build());
}
}
Content copied to clipboard
CreateOrUpdate Sweep Job.
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 = "testJob",
Properties = new AzureNative.MachineLearningServices.Inputs.SweepJobArgs
{
Algorithm = "Grid",
Compute = new AzureNative.MachineLearningServices.Inputs.ComputeConfigurationArgs
{
InstanceCount = 1,
Target = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute",
},
Description = "string",
Identity = new AzureNative.MachineLearningServices.Inputs.AmlTokenArgs
{
IdentityType = "AMLToken",
},
JobType = "Sweep",
MaxConcurrentTrials = 1,
MaxTotalTrials = 1,
Objective = new AzureNative.MachineLearningServices.Inputs.ObjectiveArgs
{
Goal = "Minimize",
PrimaryMetric = "string",
},
Properties =
{
{ "additionalProp1", "string" },
{ "additionalProp2", "string" },
{ "additionalProp3", "string" },
},
SearchSpace =
{
{ "name", null },
},
Tags =
{
{ "additionalProp1", "string" },
{ "additionalProp2", "string" },
{ "additionalProp3", "string" },
},
Timeout = "PT1M",
Trial = new AzureNative.MachineLearningServices.Inputs.TrialComponentArgs
{
CodeId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1",
Command = "python file.py test",
Distribution = new AzureNative.MachineLearningServices.Inputs.PyTorchArgs
{
DistributionType = "PyTorch",
ProcessCount = 2,
},
EnvironmentId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1",
EnvironmentVariables =
{
{ "MY_ENV_VAR1", "string" },
{ "MY_ENV_VAR2", "string" },
},
InputDataBindings =
{
{ "test", new AzureNative.MachineLearningServices.Inputs.InputDataBindingArgs
{
DataId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1",
PathOnCompute = "path/on/compute",
} },
},
OutputDataBindings =
{
{ "test", new AzureNative.MachineLearningServices.Inputs.OutputDataBindingArgs
{
DatastoreId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore",
PathOnCompute = "path/on/compute",
} },
},
Timeout = "PT1M",
},
},
ResourceGroupName = "testrg123",
WorkspaceName = "testworkspace",
});
});
Content copied to clipboard
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("testJob")
.properties(Map.ofEntries(
Map.entry("algorithm", "Grid"),
Map.entry("compute", Map.ofEntries(
Map.entry("instanceCount", 1),
Map.entry("target", "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute")
)),
Map.entry("description", "string"),
Map.entry("identity", Map.of("identityType", "AMLToken")),
Map.entry("jobType", "Sweep"),
Map.entry("maxConcurrentTrials", 1),
Map.entry("maxTotalTrials", 1),
Map.entry("objective", Map.ofEntries(
Map.entry("goal", "Minimize"),
Map.entry("primaryMetric", "string")
)),
Map.entry("properties", CommandJobArgs.builder()
.additionalProp1("string")
.additionalProp2("string")
.additionalProp3("string")
.build()),
Map.entry("searchSpace", CommandJobArgs.builder()
.name()
.build()),
Map.entry("tags", CommandJobArgs.builder()
.additionalProp1("string")
.additionalProp2("string")
.additionalProp3("string")
.build()),
Map.entry("timeout", "PT1M"),
Map.entry("trial", Map.ofEntries(
Map.entry("codeId", "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1"),
Map.entry("command", "python file.py test"),
Map.entry("distribution", Map.ofEntries(
Map.entry("distributionType", "PyTorch"),
Map.entry("processCount", 2)
)),
Map.entry("environmentId", "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1"),
Map.entry("environmentVariables", CommandJobArgs.builder()
.mY_ENV_VAR1("string")
.mY_ENV_VAR2("string")
.build()),
Map.entry("inputDataBindings", Map.of("test", Map.ofEntries(
Map.entry("dataId", "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1"),
Map.entry("pathOnCompute", "path/on/compute")
))),
Map.entry("outputDataBindings", Map.of("test", Map.ofEntries(
Map.entry("datastoreId", "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore"),
Map.entry("pathOnCompute", "path/on/compute")
))),
Map.entry("timeout", "PT1M")
))
))
.resourceGroupName("testrg123")
.workspaceName("testworkspace")
.build());
}
}
Content copied to clipboard
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:machinelearningservices:Job testJob /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/jobs/testJob
Content copied to clipboard