public class CostAllocationRule
extends com.pulumi.resources.CustomResource
The cost allocation rule model definition
Azure REST API version: 2020-03-01-preview. Prior API version in Azure Native 1.x: 2020-03-01-preview.
Other available API versions: 2023-08-01, 2023-09-01, 2023-11-01.
## Example Usage
### CostAllocationRulesCreateResourceGroup
```java
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.costmanagement.CostAllocationRule;
import com.pulumi.azurenative.costmanagement.CostAllocationRuleArgs;
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 costAllocationRule = new CostAllocationRule("costAllocationRule", CostAllocationRuleArgs.builder()
.billingAccountId("100")
.properties(Map.ofEntries(
Map.entry("description", "This is a testRule"),
Map.entry("details", Map.ofEntries(
Map.entry("sourceResources", Map.ofEntries(
Map.entry("name", "ResourceGroupName"),
Map.entry("resourceType", "Dimension"),
Map.entry("values",
"sampleRG",
"secondRG")
)),
Map.entry("targetResources", Map.ofEntries(
Map.entry("name", "ResourceGroupName"),
Map.entry("policyType", "FixedProportion"),
Map.entry("resourceType", "Dimension"),
Map.entry("values",
Map.ofEntries(
Map.entry("name", "destinationRG"),
Map.entry("percentage", 45)
),
Map.ofEntries(
Map.entry("name", "destinationRG2"),
Map.entry("percentage", 54)
))
))
)),
Map.entry("status", "Active")
))
.ruleName("testRule")
.build());
}
}
```
### CostAllocationRulesCreateTag
```java
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.costmanagement.CostAllocationRule;
import com.pulumi.azurenative.costmanagement.CostAllocationRuleArgs;
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 costAllocationRule = new CostAllocationRule("costAllocationRule", CostAllocationRuleArgs.builder()
.billingAccountId("100")
.properties(Map.ofEntries(
Map.entry("description", "This is a testRule"),
Map.entry("details", Map.ofEntries(
Map.entry("sourceResources", Map.ofEntries(
Map.entry("name", "category"),
Map.entry("resourceType", "Tag"),
Map.entry("values", "devops")
)),
Map.entry("targetResources", Map.ofEntries(
Map.entry("name", "ResourceGroupName"),
Map.entry("policyType", "FixedProportion"),
Map.entry("resourceType", "Dimension"),
Map.entry("values",
Map.ofEntries(
Map.entry("name", "destinationRG"),
Map.entry("percentage", 33.33)
),
Map.ofEntries(
Map.entry("name", "destinationRG2"),
Map.entry("percentage", 33.33)
),
Map.ofEntries(
Map.entry("name", "destinationRG3"),
Map.entry("percentage", 33.34)
))
))
)),
Map.entry("status", "Active")
))
.ruleName("testRule")
.build());
}
}
```
## Import
An existing resource can be imported using its type token, name, and identifier, e.g.
```sh
$ pulumi import azure-native:costmanagement:CostAllocationRule testRule /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.CostManagement/costAllocationRules/{ruleName}
```