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

com.pulumi.alicloud.ecs.inputs.EcsInvocationState Maven / Gradle / Ivy

There is a newer version: 3.63.0-alpha.1727424957
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.alicloud.ecs.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class EcsInvocationState extends com.pulumi.resources.ResourceArgs {

    public static final EcsInvocationState Empty = new EcsInvocationState();

    /**
     * The ID of the command.
     * 
     */
    @Import(name="commandId")
    private @Nullable Output commandId;

    /**
     * @return The ID of the command.
     * 
     */
    public Optional> commandId() {
        return Optional.ofNullable(this.commandId);
    }

    /**
     * The schedule on which the recurring execution of the command takes place. Take note of the following items:
     * * The interval between two consecutive executions must be 10 seconds or longer. The minimum interval cannot be less than the timeout period of the execution.
     * * When you set Timed to true, you must specify Frequency.
     * * The value of the Frequency parameter is a cron expression. For more information, see [Cron expression](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/cron-expression).
     * 
     */
    @Import(name="frequency")
    private @Nullable Output frequency;

    /**
     * @return The schedule on which the recurring execution of the command takes place. Take note of the following items:
     * * The interval between two consecutive executions must be 10 seconds or longer. The minimum interval cannot be less than the timeout period of the execution.
     * * When you set Timed to true, you must specify Frequency.
     * * The value of the Frequency parameter is a cron expression. For more information, see [Cron expression](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/cron-expression).
     * 
     */
    public Optional> frequency() {
        return Optional.ofNullable(this.frequency);
    }

    /**
     * The list of instances to execute the command. You can specify up to 50 instance IDs.
     * 
     */
    @Import(name="instanceIds")
    private @Nullable Output> instanceIds;

    /**
     * @return The list of instances to execute the command. You can specify up to 50 instance IDs.
     * 
     */
    public Optional>> instanceIds() {
        return Optional.ofNullable(this.instanceIds);
    }

    /**
     * The key-value pairs of custom parameters to be passed in when the custom parameter feature is enabled.  Number of custom parameters: 0 to 10.
     * 
     */
    @Import(name="parameters")
    private @Nullable Output> parameters;

    /**
     * @return The key-value pairs of custom parameters to be passed in when the custom parameter feature is enabled.  Number of custom parameters: 0 to 10.
     * 
     */
    public Optional>> parameters() {
        return Optional.ofNullable(this.parameters);
    }

    /**
     * Specifies how to run the command. Valid values: `Once`, `Period`, `NextRebootOnly`, `EveryReboot`. Default value: When `timed` is set to false and Frequency is not specified, the default value of `repeat_mode` is `Once`. When `Timed` is set to true and Frequency is specified, `period` is used as the value of RepeatMode regardless of whether `repeat_mode` is specified.
     * 
     */
    @Import(name="repeatMode")
    private @Nullable Output repeatMode;

    /**
     * @return Specifies how to run the command. Valid values: `Once`, `Period`, `NextRebootOnly`, `EveryReboot`. Default value: When `timed` is set to false and Frequency is not specified, the default value of `repeat_mode` is `Once`. When `Timed` is set to true and Frequency is specified, `period` is used as the value of RepeatMode regardless of whether `repeat_mode` is specified.
     * 
     */
    public Optional> repeatMode() {
        return Optional.ofNullable(this.repeatMode);
    }

    /**
     * The status of the resource.
     * 
     */
    @Import(name="status")
    private @Nullable Output status;

    /**
     * @return The status of the resource.
     * 
     */
    public Optional> status() {
        return Optional.ofNullable(this.status);
    }

    /**
     * Specifies whether to periodically run the command. Default value: `false`.
     * 
     */
    @Import(name="timed")
    private @Nullable Output timed;

    /**
     * @return Specifies whether to periodically run the command. Default value: `false`.
     * 
     */
    public Optional> timed() {
        return Optional.ofNullable(this.timed);
    }

    /**
     * The username that is used to run the command on the ECS instance.
     * * For Linux instances, the root username is used.
     * * For Windows instances, the System username is used.
     * * You can also specify other usernames that already exist in the ECS instance to run the command. It is more secure to run Cloud Assistant commands as a regular user. For more information, see [Configure a regular user to run Cloud Assistant commands](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/run-cloud-assistant-commands-as-a-regular-user).
     * 
     */
    @Import(name="username")
    private @Nullable Output username;

    /**
     * @return The username that is used to run the command on the ECS instance.
     * * For Linux instances, the root username is used.
     * * For Windows instances, the System username is used.
     * * You can also specify other usernames that already exist in the ECS instance to run the command. It is more secure to run Cloud Assistant commands as a regular user. For more information, see [Configure a regular user to run Cloud Assistant commands](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/run-cloud-assistant-commands-as-a-regular-user).
     * 
     */
    public Optional> username() {
        return Optional.ofNullable(this.username);
    }

    /**
     * The name of the password used to run the command on a Windows instance.
     * 
     */
    @Import(name="windowsPasswordName")
    private @Nullable Output windowsPasswordName;

    /**
     * @return The name of the password used to run the command on a Windows instance.
     * 
     */
    public Optional> windowsPasswordName() {
        return Optional.ofNullable(this.windowsPasswordName);
    }

    private EcsInvocationState() {}

    private EcsInvocationState(EcsInvocationState $) {
        this.commandId = $.commandId;
        this.frequency = $.frequency;
        this.instanceIds = $.instanceIds;
        this.parameters = $.parameters;
        this.repeatMode = $.repeatMode;
        this.status = $.status;
        this.timed = $.timed;
        this.username = $.username;
        this.windowsPasswordName = $.windowsPasswordName;
    }

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

    public static final class Builder {
        private EcsInvocationState $;

        public Builder() {
            $ = new EcsInvocationState();
        }

        public Builder(EcsInvocationState defaults) {
            $ = new EcsInvocationState(Objects.requireNonNull(defaults));
        }

        /**
         * @param commandId The ID of the command.
         * 
         * @return builder
         * 
         */
        public Builder commandId(@Nullable Output commandId) {
            $.commandId = commandId;
            return this;
        }

        /**
         * @param commandId The ID of the command.
         * 
         * @return builder
         * 
         */
        public Builder commandId(String commandId) {
            return commandId(Output.of(commandId));
        }

        /**
         * @param frequency The schedule on which the recurring execution of the command takes place. Take note of the following items:
         * * The interval between two consecutive executions must be 10 seconds or longer. The minimum interval cannot be less than the timeout period of the execution.
         * * When you set Timed to true, you must specify Frequency.
         * * The value of the Frequency parameter is a cron expression. For more information, see [Cron expression](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/cron-expression).
         * 
         * @return builder
         * 
         */
        public Builder frequency(@Nullable Output frequency) {
            $.frequency = frequency;
            return this;
        }

        /**
         * @param frequency The schedule on which the recurring execution of the command takes place. Take note of the following items:
         * * The interval between two consecutive executions must be 10 seconds or longer. The minimum interval cannot be less than the timeout period of the execution.
         * * When you set Timed to true, you must specify Frequency.
         * * The value of the Frequency parameter is a cron expression. For more information, see [Cron expression](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/cron-expression).
         * 
         * @return builder
         * 
         */
        public Builder frequency(String frequency) {
            return frequency(Output.of(frequency));
        }

        /**
         * @param instanceIds The list of instances to execute the command. You can specify up to 50 instance IDs.
         * 
         * @return builder
         * 
         */
        public Builder instanceIds(@Nullable Output> instanceIds) {
            $.instanceIds = instanceIds;
            return this;
        }

        /**
         * @param instanceIds The list of instances to execute the command. You can specify up to 50 instance IDs.
         * 
         * @return builder
         * 
         */
        public Builder instanceIds(List instanceIds) {
            return instanceIds(Output.of(instanceIds));
        }

        /**
         * @param instanceIds The list of instances to execute the command. You can specify up to 50 instance IDs.
         * 
         * @return builder
         * 
         */
        public Builder instanceIds(String... instanceIds) {
            return instanceIds(List.of(instanceIds));
        }

        /**
         * @param parameters The key-value pairs of custom parameters to be passed in when the custom parameter feature is enabled.  Number of custom parameters: 0 to 10.
         * 
         * @return builder
         * 
         */
        public Builder parameters(@Nullable Output> parameters) {
            $.parameters = parameters;
            return this;
        }

        /**
         * @param parameters The key-value pairs of custom parameters to be passed in when the custom parameter feature is enabled.  Number of custom parameters: 0 to 10.
         * 
         * @return builder
         * 
         */
        public Builder parameters(Map parameters) {
            return parameters(Output.of(parameters));
        }

        /**
         * @param repeatMode Specifies how to run the command. Valid values: `Once`, `Period`, `NextRebootOnly`, `EveryReboot`. Default value: When `timed` is set to false and Frequency is not specified, the default value of `repeat_mode` is `Once`. When `Timed` is set to true and Frequency is specified, `period` is used as the value of RepeatMode regardless of whether `repeat_mode` is specified.
         * 
         * @return builder
         * 
         */
        public Builder repeatMode(@Nullable Output repeatMode) {
            $.repeatMode = repeatMode;
            return this;
        }

        /**
         * @param repeatMode Specifies how to run the command. Valid values: `Once`, `Period`, `NextRebootOnly`, `EveryReboot`. Default value: When `timed` is set to false and Frequency is not specified, the default value of `repeat_mode` is `Once`. When `Timed` is set to true and Frequency is specified, `period` is used as the value of RepeatMode regardless of whether `repeat_mode` is specified.
         * 
         * @return builder
         * 
         */
        public Builder repeatMode(String repeatMode) {
            return repeatMode(Output.of(repeatMode));
        }

        /**
         * @param status The status of the resource.
         * 
         * @return builder
         * 
         */
        public Builder status(@Nullable Output status) {
            $.status = status;
            return this;
        }

        /**
         * @param status The status of the resource.
         * 
         * @return builder
         * 
         */
        public Builder status(String status) {
            return status(Output.of(status));
        }

        /**
         * @param timed Specifies whether to periodically run the command. Default value: `false`.
         * 
         * @return builder
         * 
         */
        public Builder timed(@Nullable Output timed) {
            $.timed = timed;
            return this;
        }

        /**
         * @param timed Specifies whether to periodically run the command. Default value: `false`.
         * 
         * @return builder
         * 
         */
        public Builder timed(Boolean timed) {
            return timed(Output.of(timed));
        }

        /**
         * @param username The username that is used to run the command on the ECS instance.
         * * For Linux instances, the root username is used.
         * * For Windows instances, the System username is used.
         * * You can also specify other usernames that already exist in the ECS instance to run the command. It is more secure to run Cloud Assistant commands as a regular user. For more information, see [Configure a regular user to run Cloud Assistant commands](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/run-cloud-assistant-commands-as-a-regular-user).
         * 
         * @return builder
         * 
         */
        public Builder username(@Nullable Output username) {
            $.username = username;
            return this;
        }

        /**
         * @param username The username that is used to run the command on the ECS instance.
         * * For Linux instances, the root username is used.
         * * For Windows instances, the System username is used.
         * * You can also specify other usernames that already exist in the ECS instance to run the command. It is more secure to run Cloud Assistant commands as a regular user. For more information, see [Configure a regular user to run Cloud Assistant commands](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/run-cloud-assistant-commands-as-a-regular-user).
         * 
         * @return builder
         * 
         */
        public Builder username(String username) {
            return username(Output.of(username));
        }

        /**
         * @param windowsPasswordName The name of the password used to run the command on a Windows instance.
         * 
         * @return builder
         * 
         */
        public Builder windowsPasswordName(@Nullable Output windowsPasswordName) {
            $.windowsPasswordName = windowsPasswordName;
            return this;
        }

        /**
         * @param windowsPasswordName The name of the password used to run the command on a Windows instance.
         * 
         * @return builder
         * 
         */
        public Builder windowsPasswordName(String windowsPasswordName) {
            return windowsPasswordName(Output.of(windowsPasswordName));
        }

        public EcsInvocationState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy