strategyName) {
+ $.strategyName = strategyName;
+ return this;
+ }
+
+ public Builder strategyName(String strategyName) {
+ return strategyName(Output.of(strategyName));
+ }
+
+ public StrategyArgs build() {
+ if ($.strategyName == null) {
+ throw new MissingRequiredPropertyException("StrategyArgs", "strategyName");
+ }
+ return $;
+ }
+ }
+
+}
diff --git a/sdk/java/src/main/java/com/pulumi/spotinst/oceancd/VerificationProvider.java b/sdk/java/src/main/java/com/pulumi/spotinst/oceancd/VerificationProvider.java
new file mode 100644
index 00000000..3777cafd
--- /dev/null
+++ b/sdk/java/src/main/java/com/pulumi/spotinst/oceancd/VerificationProvider.java
@@ -0,0 +1,243 @@
+// *** 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.spotinst.oceancd;
+
+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.spotinst.Utilities;
+import com.pulumi.spotinst.oceancd.VerificationProviderArgs;
+import com.pulumi.spotinst.oceancd.inputs.VerificationProviderState;
+import com.pulumi.spotinst.oceancd.outputs.VerificationProviderCloudWatch;
+import com.pulumi.spotinst.oceancd.outputs.VerificationProviderDatadog;
+import com.pulumi.spotinst.oceancd.outputs.VerificationProviderJenkins;
+import com.pulumi.spotinst.oceancd.outputs.VerificationProviderNewRelic;
+import com.pulumi.spotinst.oceancd.outputs.VerificationProviderPrometheus;
+import java.lang.String;
+import java.util.List;
+import java.util.Optional;
+import javax.annotation.Nullable;
+
+/**
+ * Manages a Spotinst OceanCD Verfification Provider resource.
+ *
+ * ## Example Usage
+ *
+ * <!--Start PulumiCodeChooser -->
+ *
+ * {@code
+ * package generated_program;
+ *
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.spotinst.oceancd.VerificationProvider;
+ * import com.pulumi.spotinst.oceancd.VerificationProviderArgs;
+ * import com.pulumi.spotinst.oceancd.inputs.VerificationProviderDatadogArgs;
+ * import com.pulumi.spotinst.oceancd.inputs.VerificationProviderCloudWatchArgs;
+ * import com.pulumi.spotinst.oceancd.inputs.VerificationProviderPrometheusArgs;
+ * import com.pulumi.spotinst.oceancd.inputs.VerificationProviderNewRelicArgs;
+ * import com.pulumi.spotinst.oceancd.inputs.VerificationProviderJenkinsArgs;
+ * 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 VerificationProvider("example", VerificationProviderArgs.builder()
+ * .name("test-verification-provider")
+ * .clusterIds(
+ * "Example-Cluster-Id-1",
+ * "Example-Cluster-Id-2",
+ * "Example-Cluster-Id-3")
+ * .datadog(VerificationProviderDatadogArgs.builder()
+ * .address(1024)
+ * .apiKey(512)
+ * .appKey(0)
+ * .build())
+ * .cloudWatch(VerificationProviderCloudWatchArgs.builder()
+ * .iamArn("arn:aws:iam::123456789012:role/GetMetricData")
+ * .build())
+ * .prometheus(VerificationProviderPrometheusArgs.builder()
+ * .address("http://localhost:9090")
+ * .build())
+ * .newRelic(VerificationProviderNewRelicArgs.builder()
+ * .personalApiKey("AUO32RN20oUMD-40283")
+ * .accountId("account-0189718")
+ * .region("eu")
+ * .baseUrlRest("https://rest.api.newrelic.eu")
+ * .baseUrlNerdGraph("https://nerdgraph.api.newrelic.eu")
+ * .build())
+ * .jenkins(VerificationProviderJenkinsArgs.builder()
+ * .baseUrl("http://localhost:9090")
+ * .username("test-user")
+ * .apiToken("AbCDeeFFGG")
+ * .build())
+ * .build());
+ *
+ * }
+ * }
+ * }
+ *
+ * <!--End PulumiCodeChooser -->
+ *
+ */
+@ResourceType(type="spotinst:oceancd/verificationProvider:VerificationProvider")
+public class VerificationProvider extends com.pulumi.resources.CustomResource {
+ /**
+ * Specify the credentials for CloudWatch verification provider.
+ *
+ */
+ @Export(name="cloudWatch", refs={VerificationProviderCloudWatch.class}, tree="[0]")
+ private Output* @Nullable */ VerificationProviderCloudWatch> cloudWatch;
+
+ /**
+ * @return Specify the credentials for CloudWatch verification provider.
+ *
+ */
+ public Output> cloudWatch() {
+ return Codegen.optional(this.cloudWatch);
+ }
+ /**
+ * List of cluster IDs that this Verification Provider will be applied to.
+ *
+ */
+ @Export(name="clusterIds", refs={List.class,String.class}, tree="[0,1]")
+ private Output> clusterIds;
+
+ /**
+ * @return List of cluster IDs that this Verification Provider will be applied to.
+ *
+ */
+ public Output> clusterIds() {
+ return this.clusterIds;
+ }
+ /**
+ * Specify the credentials for datadog verification provider.
+ *
+ */
+ @Export(name="datadog", refs={VerificationProviderDatadog.class}, tree="[0]")
+ private Output* @Nullable */ VerificationProviderDatadog> datadog;
+
+ /**
+ * @return Specify the credentials for datadog verification provider.
+ *
+ */
+ public Output> datadog() {
+ return Codegen.optional(this.datadog);
+ }
+ /**
+ * Specify the credentials for Jenkins verification provider.
+ *
+ */
+ @Export(name="jenkins", refs={VerificationProviderJenkins.class}, tree="[0]")
+ private Output* @Nullable */ VerificationProviderJenkins> jenkins;
+
+ /**
+ * @return Specify the credentials for Jenkins verification provider.
+ *
+ */
+ public Output> jenkins() {
+ return Codegen.optional(this.jenkins);
+ }
+ /**
+ * Identifier name for Ocean CD Verification Provider. Must be unique.
+ *
+ */
+ @Export(name="name", refs={String.class}, tree="[0]")
+ private Output name;
+
+ /**
+ * @return Identifier name for Ocean CD Verification Provider. Must be unique.
+ *
+ */
+ public Output name() {
+ return this.name;
+ }
+ /**
+ * Specify the credentials for New Relic verification provider.
+ *
+ */
+ @Export(name="newRelic", refs={VerificationProviderNewRelic.class}, tree="[0]")
+ private Output* @Nullable */ VerificationProviderNewRelic> newRelic;
+
+ /**
+ * @return Specify the credentials for New Relic verification provider.
+ *
+ */
+ public Output> newRelic() {
+ return Codegen.optional(this.newRelic);
+ }
+ /**
+ * Specify the credentials for prometheus verification provider.
+ *
+ */
+ @Export(name="prometheus", refs={VerificationProviderPrometheus.class}, tree="[0]")
+ private Output* @Nullable */ VerificationProviderPrometheus> prometheus;
+
+ /**
+ * @return Specify the credentials for prometheus verification provider.
+ *
+ */
+ public Output> prometheus() {
+ return Codegen.optional(this.prometheus);
+ }
+
+ /**
+ *
+ * @param name The _unique_ name of the resulting resource.
+ */
+ public VerificationProvider(String name) {
+ this(name, VerificationProviderArgs.Empty);
+ }
+ /**
+ *
+ * @param name The _unique_ name of the resulting resource.
+ * @param args The arguments to use to populate this resource's properties.
+ */
+ public VerificationProvider(String name, VerificationProviderArgs 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 VerificationProvider(String name, VerificationProviderArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) {
+ super("spotinst:oceancd/verificationProvider:VerificationProvider", name, args == null ? VerificationProviderArgs.Empty : args, makeResourceOptions(options, Codegen.empty()));
+ }
+
+ private VerificationProvider(String name, Output id, @Nullable VerificationProviderState state, @Nullable com.pulumi.resources.CustomResourceOptions options) {
+ super("spotinst:oceancd/verificationProvider:VerificationProvider", name, state, makeResourceOptions(options, id));
+ }
+
+ 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 VerificationProvider get(String name, Output id, @Nullable VerificationProviderState state, @Nullable com.pulumi.resources.CustomResourceOptions options) {
+ return new VerificationProvider(name, id, state, options);
+ }
+}
diff --git a/sdk/java/src/main/java/com/pulumi/spotinst/oceancd/VerificationProviderArgs.java b/sdk/java/src/main/java/com/pulumi/spotinst/oceancd/VerificationProviderArgs.java
new file mode 100644
index 00000000..7aff24c7
--- /dev/null
+++ b/sdk/java/src/main/java/com/pulumi/spotinst/oceancd/VerificationProviderArgs.java
@@ -0,0 +1,325 @@
+// *** 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.spotinst.oceancd;
+
+import com.pulumi.core.Output;
+import com.pulumi.core.annotations.Import;
+import com.pulumi.exceptions.MissingRequiredPropertyException;
+import com.pulumi.spotinst.oceancd.inputs.VerificationProviderCloudWatchArgs;
+import com.pulumi.spotinst.oceancd.inputs.VerificationProviderDatadogArgs;
+import com.pulumi.spotinst.oceancd.inputs.VerificationProviderJenkinsArgs;
+import com.pulumi.spotinst.oceancd.inputs.VerificationProviderNewRelicArgs;
+import com.pulumi.spotinst.oceancd.inputs.VerificationProviderPrometheusArgs;
+import java.lang.String;
+import java.util.List;
+import java.util.Objects;
+import java.util.Optional;
+import javax.annotation.Nullable;
+
+
+public final class VerificationProviderArgs extends com.pulumi.resources.ResourceArgs {
+
+ public static final VerificationProviderArgs Empty = new VerificationProviderArgs();
+
+ /**
+ * Specify the credentials for CloudWatch verification provider.
+ *
+ */
+ @Import(name="cloudWatch")
+ private @Nullable Output cloudWatch;
+
+ /**
+ * @return Specify the credentials for CloudWatch verification provider.
+ *
+ */
+ public Optional