All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azurenative.virtualmachineimages.outputs.ImageTemplatePropertiesResponseValidate Maven / Gradle / Ivy

There is a newer version: 2.89.2
Show newest version
// *** 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.azurenative.virtualmachineimages.outputs;

import com.pulumi.azurenative.virtualmachineimages.outputs.ImageTemplateFileValidatorResponse;
import com.pulumi.azurenative.virtualmachineimages.outputs.ImageTemplatePowerShellValidatorResponse;
import com.pulumi.azurenative.virtualmachineimages.outputs.ImageTemplateShellValidatorResponse;
import com.pulumi.core.annotations.CustomType;
import java.lang.Boolean;
import java.lang.Object;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class ImageTemplatePropertiesResponseValidate {
    /**
     * @return If validation fails and this field is set to false, output image(s) will not be distributed. This is the default behavior. If validation fails and this field is set to true, output image(s) will still be distributed. Please use this option with caution as it may result in bad images being distributed for use. In either case (true or false), the end to end image run will be reported as having failed in case of a validation failure. [Note: This field has no effect if validation succeeds.]
     * 
     */
    private @Nullable Boolean continueDistributeOnFailure;
    /**
     * @return List of validations to be performed.
     * 
     */
    private @Nullable List inVMValidations;
    /**
     * @return If this field is set to true, the image specified in the 'source' section will directly be validated. No separate build will be run to generate and then validate a customized image.
     * 
     */
    private @Nullable Boolean sourceValidationOnly;

    private ImageTemplatePropertiesResponseValidate() {}
    /**
     * @return If validation fails and this field is set to false, output image(s) will not be distributed. This is the default behavior. If validation fails and this field is set to true, output image(s) will still be distributed. Please use this option with caution as it may result in bad images being distributed for use. In either case (true or false), the end to end image run will be reported as having failed in case of a validation failure. [Note: This field has no effect if validation succeeds.]
     * 
     */
    public Optional continueDistributeOnFailure() {
        return Optional.ofNullable(this.continueDistributeOnFailure);
    }
    /**
     * @return List of validations to be performed.
     * 
     */
    public List inVMValidations() {
        return this.inVMValidations == null ? List.of() : this.inVMValidations;
    }
    /**
     * @return If this field is set to true, the image specified in the 'source' section will directly be validated. No separate build will be run to generate and then validate a customized image.
     * 
     */
    public Optional sourceValidationOnly() {
        return Optional.ofNullable(this.sourceValidationOnly);
    }

    public static Builder builder() {
        return new Builder();
    }

    public static Builder builder(ImageTemplatePropertiesResponseValidate defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable Boolean continueDistributeOnFailure;
        private @Nullable List inVMValidations;
        private @Nullable Boolean sourceValidationOnly;
        public Builder() {}
        public Builder(ImageTemplatePropertiesResponseValidate defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.continueDistributeOnFailure = defaults.continueDistributeOnFailure;
    	      this.inVMValidations = defaults.inVMValidations;
    	      this.sourceValidationOnly = defaults.sourceValidationOnly;
        }

        @CustomType.Setter
        public Builder continueDistributeOnFailure(@Nullable Boolean continueDistributeOnFailure) {

            this.continueDistributeOnFailure = continueDistributeOnFailure;
            return this;
        }
        @CustomType.Setter
        public Builder inVMValidations(@Nullable List inVMValidations) {

            this.inVMValidations = inVMValidations;
            return this;
        }
        public Builder inVMValidations(Object... inVMValidations) {
            return inVMValidations(List.of(inVMValidations));
        }
        @CustomType.Setter
        public Builder sourceValidationOnly(@Nullable Boolean sourceValidationOnly) {

            this.sourceValidationOnly = sourceValidationOnly;
            return this;
        }
        public ImageTemplatePropertiesResponseValidate build() {
            final var _resultValue = new ImageTemplatePropertiesResponseValidate();
            _resultValue.continueDistributeOnFailure = continueDistributeOnFailure;
            _resultValue.inVMValidations = inVMValidations;
            _resultValue.sourceValidationOnly = sourceValidationOnly;
            return _resultValue;
        }
    }
}