SubscriptionArgs

data class SubscriptionArgs(val alias: Output<String>? = null, val billingScopeId: Output<String>? = null, val subscriptionId: Output<String>? = null, val subscriptionName: Output<String>? = null, val tags: Output<Map<String, String>>? = null, val workload: Output<String>? = null) : ConvertibleToJava<SubscriptionArgs>

Example Usage

Creating A New Alias And Subscription For An Enrollment Account

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.billing.BillingFunctions;
import com.pulumi.azure.billing.inputs.GetEnrollmentAccountScopeArgs;
import com.pulumi.azure.core.Subscription;
import com.pulumi.azure.core.SubscriptionArgs;
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) {
final var exampleEnrollmentAccountScope = BillingFunctions.getEnrollmentAccountScope(GetEnrollmentAccountScopeArgs.builder()
.billingAccountName("1234567890")
.enrollmentAccountName("0123456")
.build());
var exampleSubscription = new Subscription("exampleSubscription", SubscriptionArgs.builder()
.subscriptionName("My Example EA Subscription")
.billingScopeId(exampleEnrollmentAccountScope.applyValue(getEnrollmentAccountScopeResult -> getEnrollmentAccountScopeResult.id()))
.build());
}
}

Creating A New Alias And Subscription For A Microsoft Customer Account

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.billing.BillingFunctions;
import com.pulumi.azure.billing.inputs.GetMcaAccountScopeArgs;
import com.pulumi.azure.core.Subscription;
import com.pulumi.azure.core.SubscriptionArgs;
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) {
final var exampleMcaAccountScope = BillingFunctions.getMcaAccountScope(GetMcaAccountScopeArgs.builder()
.billingAccountName("e879cf0f-2b4d-5431-109a-f72fc9868693:024cabf4-7321-4cf9-be59-df0c77ca51de_2019-05-31")
.billingProfileName("PE2Q-NOIT-BG7-TGB")
.invoiceSectionName("MTT4-OBS7-PJA-TGB")
.build());
var exampleSubscription = new Subscription("exampleSubscription", SubscriptionArgs.builder()
.subscriptionName("My Example MCA Subscription")
.billingScopeId(exampleMcaAccountScope.applyValue(getMcaAccountScopeResult -> getMcaAccountScopeResult.id()))
.build());
}
}

Creating A New Alias And Subscription For A Microsoft Partner Account

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.billing.BillingFunctions;
import com.pulumi.azure.billing.inputs.GetMpaAccountScopeArgs;
import com.pulumi.azure.core.Subscription;
import com.pulumi.azure.core.SubscriptionArgs;
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) {
final var exampleMpaAccountScope = BillingFunctions.getMpaAccountScope(GetMpaAccountScopeArgs.builder()
.billingAccountName("e879cf0f-2b4d-5431-109a-f72fc9868693:024cabf4-7321-4cf9-be59-df0c77ca51de_2019-05-31")
.customerName("2281f543-7321-4cf9-1e23-edb4Oc31a31c")
.build());
var exampleSubscription = new Subscription("exampleSubscription", SubscriptionArgs.builder()
.subscriptionName("My Example MPA Subscription")
.billingScopeId(exampleMpaAccountScope.applyValue(getMpaAccountScopeResult -> getMpaAccountScopeResult.id()))
.build());
}
}

Adding An Alias To An Existing Subscription

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.Subscription;
import com.pulumi.azure.core.SubscriptionArgs;
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 example = new Subscription("example", SubscriptionArgs.builder()
.alias("examplesub")
.subscriptionId("12345678-12234-5678-9012-123456789012")
.subscriptionName("My Example Subscription")
.build());
}
}

Import

Subscriptions can be imported using the resource id, e.g.

$ pulumi import azure:core/subscription:Subscription example "/providers/Microsoft.Subscription/aliases/subscription1"

In this scenario, the subscription_id property can be completed and the provider will assume control of the existing subscription by creating an Alias. See the adding an Alias to an existing Subscription above. This provider requires an alias to correctly manage Subscription resources due to Azure Subscription API design.

Constructors

Link copied to clipboard
fun SubscriptionArgs(alias: Output<String>? = null, billingScopeId: Output<String>? = null, subscriptionId: Output<String>? = null, subscriptionName: Output<String>? = null, tags: Output<Map<String, String>>? = null, workload: Output<String>? = null)

Functions

Link copied to clipboard
open override fun toJava(): SubscriptionArgs

Properties

Link copied to clipboard
val alias: Output<String>? = null

The Alias name for the subscription. This provider will generate a new GUID if this is not supplied. Changing this forces a new Subscription to be created.

Link copied to clipboard
val billingScopeId: Output<String>? = null

The Azure Billing Scope ID. Can be a Microsoft Customer Account Billing Scope ID, a Microsoft Partner Account Billing Scope ID or an Enrollment Billing Scope ID.

Link copied to clipboard
val subscriptionId: Output<String>? = null

The ID of the Subscription. Changing this forces a new Subscription to be created.

Link copied to clipboard
val subscriptionName: Output<String>? = null

The Name of the Subscription. This is the Display Name in the portal.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

A mapping of tags to assign to the Subscription.

Link copied to clipboard
val workload: Output<String>? = null

The workload type of the Subscription. Possible values are Production (default) and DevTest. Changing this forces a new Subscription to be created.