Class: Google::Apis::RemotebuildexecutionV2::GoogleDevtoolsRemoteworkersV1test2CommandTaskInputs

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/remotebuildexecution_v2/classes.rb,
lib/google/apis/remotebuildexecution_v2/representations.rb,
lib/google/apis/remotebuildexecution_v2/representations.rb

Overview

Describes the inputs to a shell-style task.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleDevtoolsRemoteworkersV1test2CommandTaskInputs

Returns a new instance of GoogleDevtoolsRemoteworkersV1test2CommandTaskInputs.



3404
3405
3406
# File 'lib/google/apis/remotebuildexecution_v2/classes.rb', line 3404

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#argumentsArray<String>

The command itself to run (e.g., argv). This field should be passed directly to the underlying operating system, and so it must be sensible to that operating system. For example, on Windows, the first argument might be "C:\ Windows\System32\ping.exe" - that is, using drive letters and backslashes. A command for a *nix system, on the other hand, would use forward slashes. All other fields in the RWAPI must consistently use forward slashes, since those fields may be interpretted by both the service and the bot. Corresponds to the JSON property arguments

Returns:

  • (Array<String>)


3370
3371
3372
# File 'lib/google/apis/remotebuildexecution_v2/classes.rb', line 3370

def arguments
  @arguments
end

#environment_variablesArray<Google::Apis::RemotebuildexecutionV2::GoogleDevtoolsRemoteworkersV1test2CommandTaskInputsEnvironmentVariable>

All environment variables required by the task. Corresponds to the JSON property environmentVariables



3375
3376
3377
# File 'lib/google/apis/remotebuildexecution_v2/classes.rb', line 3375

def environment_variables
  @environment_variables
end

#filesArray<Google::Apis::RemotebuildexecutionV2::GoogleDevtoolsRemoteworkersV1test2Digest>

The input filesystem to be set up prior to the task beginning. The contents should be a repeated set of FileMetadata messages though other formats are allowed if better for the implementation (eg, a LUCI-style .isolated file). This field is repeated since implementations might want to cache the metadata, in which case it may be useful to break up portions of the filesystem that change frequently (eg, specific input files) from those that don't (eg, standard header files). Corresponds to the JSON property files



3386
3387
3388
# File 'lib/google/apis/remotebuildexecution_v2/classes.rb', line 3386

def files
  @files
end

#inline_blobsArray<Google::Apis::RemotebuildexecutionV2::GoogleDevtoolsRemoteworkersV1test2Blob>

Inline contents for blobs expected to be needed by the bot to execute the task. For example, contents of entries in files or blobs that are indirectly referenced by an entry there. The bot should check against this list before downloading required task inputs to reduce the number of communications between itself and the remote CAS server. Corresponds to the JSON property inlineBlobs



3395
3396
3397
# File 'lib/google/apis/remotebuildexecution_v2/classes.rb', line 3395

def inline_blobs
  @inline_blobs
end

#working_directoryString

Directory from which a command is executed. It is a relative directory with respect to the bot's working directory (i.e., "./"). If it is non-empty, then it must exist under "./". Otherwise, "./" will be used. Corresponds to the JSON property workingDirectory

Returns:

  • (String)


3402
3403
3404
# File 'lib/google/apis/remotebuildexecution_v2/classes.rb', line 3402

def working_directory
  @working_directory
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3409
3410
3411
3412
3413
3414
3415
# File 'lib/google/apis/remotebuildexecution_v2/classes.rb', line 3409

def update!(**args)
  @arguments = args[:arguments] if args.key?(:arguments)
  @environment_variables = args[:environment_variables] if args.key?(:environment_variables)
  @files = args[:files] if args.key?(:files)
  @inline_blobs = args[:inline_blobs] if args.key?(:inline_blobs)
  @working_directory = args[:working_directory] if args.key?(:working_directory)
end