repoCaching) {
+ $.repoCaching = repoCaching;
+ return this;
+ }
+
+ /**
+ * @param repoCaching Whether repository caching is enabled.
+ *
+ * @return builder
+ *
+ */
+ public Builder repoCaching(Boolean repoCaching) {
+ return repoCaching(Output.of(repoCaching));
+ }
+
+ public AccountFeaturesArgs build() {
+ return $;
+ }
+ }
+
+}
diff --git a/sdk/java/src/main/java/com/pulumi/dbtcloud/IpRestrictionsRule.java b/sdk/java/src/main/java/com/pulumi/dbtcloud/IpRestrictionsRule.java
new file mode 100644
index 0000000..2fe4de9
--- /dev/null
+++ b/sdk/java/src/main/java/com/pulumi/dbtcloud/IpRestrictionsRule.java
@@ -0,0 +1,228 @@
+// *** WARNING: this file was generated by pulumi-java-gen. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+package com.pulumi.dbtcloud;
+
+import com.pulumi.core.Output;
+import com.pulumi.core.annotations.Export;
+import com.pulumi.core.annotations.ResourceType;
+import com.pulumi.core.internal.Codegen;
+import com.pulumi.dbtcloud.IpRestrictionsRuleArgs;
+import com.pulumi.dbtcloud.Utilities;
+import com.pulumi.dbtcloud.inputs.IpRestrictionsRuleState;
+import com.pulumi.dbtcloud.outputs.IpRestrictionsRuleCidr;
+import java.lang.Boolean;
+import java.lang.String;
+import java.util.List;
+import java.util.Optional;
+import javax.annotation.Nullable;
+
+/**
+ * Manages IP restriction rules in dbt Cloud. IP restriction rules allow you to control access to your dbt Cloud instance based on IP address ranges.
+ *
+ * ## Example Usage
+ *
+ * <!--Start PulumiCodeChooser -->
+ *
+ * {@code
+ * package generated_program;
+ *
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.dbtcloud.IpRestrictionsRule;
+ * import com.pulumi.dbtcloud.IpRestrictionsRuleArgs;
+ * import com.pulumi.dbtcloud.inputs.IpRestrictionsRuleCidrArgs;
+ * 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 test = new IpRestrictionsRule("test", IpRestrictionsRuleArgs.builder()
+ * .name("My restriction rule")
+ * .description("Important description")
+ * .cidrs(
+ * IpRestrictionsRuleCidrArgs.builder()
+ * .cidr("::ffff:106:708")
+ * .build(),
+ * IpRestrictionsRuleCidrArgs.builder()
+ * .cidr("1.6.7.10/24")
+ * .build())
+ * .type("deny")
+ * .ruleSetEnabled(false)
+ * .build());
+ *
+ * }
+ * }
+ * }
+ *
+ * <!--End PulumiCodeChooser -->
+ *
+ * ## Import
+ *
+ * using import blocks (requires Terraform >= 1.5)
+ *
+ * import {
+ *
+ * to = dbtcloud_ip_restrictions_rule.my_rule
+ *
+ * id = "ip_restriction_rule_id"
+ *
+ * }
+ *
+ * import {
+ *
+ * to = dbtcloud_ip_restrictions_rule.my_rule
+ *
+ * id = "12345"
+ *
+ * }
+ *
+ * using the older import command
+ *
+ * ```sh
+ * $ pulumi import dbtcloud:index/ipRestrictionsRule:IpRestrictionsRule my_rule "ip_restriction_rule_id"
+ * ```
+ *
+ * ```sh
+ * $ pulumi import dbtcloud:index/ipRestrictionsRule:IpRestrictionsRule my_rule 12345
+ * ```
+ *
+ */
+@ResourceType(type="dbtcloud:index/ipRestrictionsRule:IpRestrictionsRule")
+public class IpRestrictionsRule extends com.pulumi.resources.CustomResource {
+ /**
+ * Set of CIDR ranges for this rule
+ *
+ */
+ @Export(name="cidrs", refs={List.class,IpRestrictionsRuleCidr.class}, tree="[0,1]")
+ private Output> cidrs;
+
+ /**
+ * @return Set of CIDR ranges for this rule
+ *
+ */
+ public Output> cidrs() {
+ return this.cidrs;
+ }
+ /**
+ * A description of the IP restriction rule
+ *
+ */
+ @Export(name="description", refs={String.class}, tree="[0]")
+ private Output* @Nullable */ String> description;
+
+ /**
+ * @return A description of the IP restriction rule
+ *
+ */
+ public Output> description() {
+ return Codegen.optional(this.description);
+ }
+ /**
+ * The name of the IP restriction rule
+ *
+ */
+ @Export(name="name", refs={String.class}, tree="[0]")
+ private Output name;
+
+ /**
+ * @return The name of the IP restriction rule
+ *
+ */
+ public Output name() {
+ return this.name;
+ }
+ /**
+ * Whether the IP restriction rule set is enabled or not. Important!: This value needs to be the same for all rules if multiple rules are defined. All rules must be active or inactive at the same time.
+ *
+ */
+ @Export(name="ruleSetEnabled", refs={Boolean.class}, tree="[0]")
+ private Output ruleSetEnabled;
+
+ /**
+ * @return Whether the IP restriction rule set is enabled or not. Important!: This value needs to be the same for all rules if multiple rules are defined. All rules must be active or inactive at the same time.
+ *
+ */
+ public Output ruleSetEnabled() {
+ return this.ruleSetEnabled;
+ }
+ /**
+ * The type of the IP restriction rule (allow or deny)
+ *
+ */
+ @Export(name="type", refs={String.class}, tree="[0]")
+ private Output type;
+
+ /**
+ * @return The type of the IP restriction rule (allow or deny)
+ *
+ */
+ public Output type() {
+ return this.type;
+ }
+
+ /**
+ *
+ * @param name The _unique_ name of the resulting resource.
+ */
+ public IpRestrictionsRule(java.lang.String name) {
+ this(name, IpRestrictionsRuleArgs.Empty);
+ }
+ /**
+ *
+ * @param name The _unique_ name of the resulting resource.
+ * @param args The arguments to use to populate this resource's properties.
+ */
+ public IpRestrictionsRule(java.lang.String name, IpRestrictionsRuleArgs args) {
+ this(name, args, null);
+ }
+ /**
+ *
+ * @param name The _unique_ name of the resulting resource.
+ * @param args The arguments to use to populate this resource's properties.
+ * @param options A bag of options that control this resource's behavior.
+ */
+ public IpRestrictionsRule(java.lang.String name, IpRestrictionsRuleArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) {
+ super("dbtcloud:index/ipRestrictionsRule:IpRestrictionsRule", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false);
+ }
+
+ private IpRestrictionsRule(java.lang.String name, Output id, @Nullable IpRestrictionsRuleState state, @Nullable com.pulumi.resources.CustomResourceOptions options) {
+ super("dbtcloud:index/ipRestrictionsRule:IpRestrictionsRule", name, state, makeResourceOptions(options, id), false);
+ }
+
+ private static IpRestrictionsRuleArgs makeArgs(IpRestrictionsRuleArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) {
+ if (options != null && options.getUrn().isPresent()) {
+ return null;
+ }
+ return args == null ? IpRestrictionsRuleArgs.Empty : args;
+ }
+
+ private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) {
+ var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder()
+ .version(Utilities.getVersion())
+ .build();
+ return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id);
+ }
+
+ /**
+ * Get an existing Host resource's state with the given name, ID, and optional extra
+ * properties used to qualify the lookup.
+ *
+ * @param name The _unique_ name of the resulting resource.
+ * @param id The _unique_ provider ID of the resource to lookup.
+ * @param state
+ * @param options Optional settings to control the behavior of the CustomResource.
+ */
+ public static IpRestrictionsRule get(java.lang.String name, Output id, @Nullable IpRestrictionsRuleState state, @Nullable com.pulumi.resources.CustomResourceOptions options) {
+ return new IpRestrictionsRule(name, id, state, options);
+ }
+}
diff --git a/sdk/java/src/main/java/com/pulumi/dbtcloud/IpRestrictionsRuleArgs.java b/sdk/java/src/main/java/com/pulumi/dbtcloud/IpRestrictionsRuleArgs.java
new file mode 100644
index 0000000..681e40e
--- /dev/null
+++ b/sdk/java/src/main/java/com/pulumi/dbtcloud/IpRestrictionsRuleArgs.java
@@ -0,0 +1,254 @@
+// *** WARNING: this file was generated by pulumi-java-gen. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+package com.pulumi.dbtcloud;
+
+import com.pulumi.core.Output;
+import com.pulumi.core.annotations.Import;
+import com.pulumi.dbtcloud.inputs.IpRestrictionsRuleCidrArgs;
+import com.pulumi.exceptions.MissingRequiredPropertyException;
+import java.lang.Boolean;
+import java.lang.String;
+import java.util.List;
+import java.util.Objects;
+import java.util.Optional;
+import javax.annotation.Nullable;
+
+
+public final class IpRestrictionsRuleArgs extends com.pulumi.resources.ResourceArgs {
+
+ public static final IpRestrictionsRuleArgs Empty = new IpRestrictionsRuleArgs();
+
+ /**
+ * Set of CIDR ranges for this rule
+ *
+ */
+ @Import(name="cidrs", required=true)
+ private Output> cidrs;
+
+ /**
+ * @return Set of CIDR ranges for this rule
+ *
+ */
+ public Output> cidrs() {
+ return this.cidrs;
+ }
+
+ /**
+ * A description of the IP restriction rule
+ *
+ */
+ @Import(name="description")
+ private @Nullable Output description;
+
+ /**
+ * @return A description of the IP restriction rule
+ *
+ */
+ public Optional