class File(messages.Message): path = messages.StringField(1) content = messages.BytesField(2)
class BytesMessage(messages.Message): field = messages.BytesField(1) repfield = messages.BytesField(2, repeated=True)
class ShowPict(messages.Message): picture = messages.BytesField(1) pname = messages.StringField(2) obj_url = messages.StringField(3)
def to_field(Model, property, count): return messages.BytesField(count, repeated=property._repeated)
class GetConfigByHashResponseMessage(messages.Message): content = messages.BytesField(1, required=True)
class GetConfigResponseMessage(messages.Message): revision = messages.StringField(1, required=True) content_hash = messages.StringField(2, required=True) # If request.only_hash is not set to True, the contents of the # config file. content = messages.BytesField(3)
class History_form(messages.Message): history = messages.BytesField(1) score = messages.IntegerField(2) level = messages.StringField(3)
class StorageRequest(messages.Message): """ProtoRPC message representing an entity to be added to the data store.""" upload_ticket = messages.StringField(1) content = messages.BytesField(2)
class FileMessage(messages.Message): pod_path = messages.StringField(1) content = messages.StringField(2) content_b64 = messages.BytesField(3) content_url = messages.StringField(4) mimetype = messages.StringField(5)
class BytesGreeting(messages.Message): data = messages.BytesField(1) when = messages.IntegerField(2)
class Config(messages.Message): """Config for Xml feed preprocessing.""" url = messages.StringField(1) collection = messages.StringField(2) field_aliases = messages.BytesField(3)
class ProjectUploadImageMessage(messages.Message): """ Message definition to upload a project image *not currently used* """ image_bytes = messages.BytesField(1) image_name = messages.StringField(2)
class TaskProperties(messages.Message): """Important metadata about a particular task.""" # Specifies named caches to map into the working directory. These caches # outlives the task, which can then be reused by tasks later used on this bot # that request the same named cache. caches = messages.MessageField(CacheEntry, 11, repeated=True) # CIPD packages to install. These packages are meant to be software that is # needed (a dependency) to the task being run. Unlike isolated files, the CIPD # packages do not expire from the server. cipd_input = messages.MessageField(CipdInput, 10) # Command to run. This has priority over a command specified in the isolated # files. Only one of 'command' or 'extra_args' can be specified. command = messages.StringField(1, repeated=True) # Relative working directory to start the 'command' in, defaults to the root # mapped directory or what is provided in the isolated file, if any. relative_cwd = messages.StringField(15) # Dimensions are what is used to determine which bot can run the task. The # bot must have all the matching dimensions, even for repeated keys with # multiple different values. It is a logical AND, all values must match. # # It should have been a StringListPair but this would be a breaking change. dimensions = messages.MessageField(StringPair, 2, repeated=True) # Environment variables to set when running the task. env = messages.MessageField(StringPair, 3, repeated=True) # Swarming-root relative paths to prepend to a given environment variable. # # These allow you to put certain subdirectories of the task into PATH, # PYTHONPATH, or other PATH-like environment variables. The order of # operations is: # * Turn slashes into native-platform slashes. # * Make the path absolute # * Prepend it to the current value of the envvar using the os-native list # separator (i.e. `;` on windows, `:` on POSIX). # # Each envvar can have multiple paths to prepend. They will be prepended in # the order seen here. # # For example, if env_prefixes was: # [("PATH", ["foo", "bar"]), # ("CUSTOMPATH", ["custom"])] # # The task would see: # PATH=/path/to/swarming/rundir/foo:/path/to/swarming/rundir/bar:$PATH # CUSTOMPATH=/path/to/swarming/rundir/custom # # The path should always be specified here with forward-slashes, and it must # not attempt to escape the swarming root (i.e. must not contain `..`). # # These are applied AFTER evaluating `env` entries. env_prefixes = messages.MessageField(StringListPair, 14, repeated=True) # Maximum number of seconds the task can run before its process is forcibly # terminated and the task results in TIMED_OUT. execution_timeout_secs = messages.IntegerField(4) # Extraneous arguments to append to the command specified in the isolated # file. Can only be used when an isolated file specifies a command. Only one # of 'command' or 'extra_args' can be specified. extra_args = messages.StringField(5, repeated=True) # Number of second to give the child process after a SIGTERM before sending a # SIGKILL. See doc/Bot.md#timeout-handling grace_period_secs = messages.IntegerField(6) # True if the task does not access any service through the network and is # believed to be 100% reproducible with the same outcome. In the case of a # successful task, previous results will be reused if possible. idempotent = messages.BooleanField(7) # Isolated inputs to map in the working directory. The isolated file may # optionally specify a command to run. Otherwise, 'command' must be specified. inputs_ref = messages.MessageField(FilesRef, 8) # Maximum number of seconds the task may be silent (no output to stdout nor # stderr) before it is considered hung and it forcibly terminated early and # the task results in TIMED_OUT. io_timeout_secs = messages.IntegerField(9) # Paths in the working directory to archive back. outputs = messages.StringField(12, repeated=True) # Secret bytes to provide to the task. Cannot be retrieved back. secret_bytes = messages.BytesField(13)
class UploadFile(messages.Message): messages = messages.BytesField(1)
class UploadRequest(messages.Message): change_id = messages.IntegerField(1, required=True) url_path = messages.StringField(2, required=True) content_type = messages.StringField(3, required=True) data = messages.BytesField(4, required=True)
class ValidateRequestMessage(messages.Message): config_set = messages.StringField(1, required=True) path = messages.StringField(2, required=True) content = messages.BytesField(3, required=True)
class ImageMessage(messages.Message): title = messages.StringField(1) correct = messages.BooleanField(2) image_url = messages.BytesField(3)
class RetrievedContent(messages.Message): """Content retrieved from DB, or GS URL.""" content = messages.BytesField(1) url = messages.StringField(2)
class SimpleMessage(messages.Message): field = messages.StringField(1) bytes_field = messages.BytesField(2)
class ConfigEntry(messages.Message): config_set = messages.StringField(1, required=True) revision = messages.StringField(2, required=True) content_hash = messages.StringField(3, required=True) # None if request.hash_only is True content = messages.BytesField(4)
class StandardQueryParameters(messages.Message): field = messages.StringField(1) prettyPrint = messages.BooleanField(5, default=True) # pylint: disable=invalid-name pp = messages.BooleanField(6, default=True) nextPageToken = messages.BytesField(7) # pylint:disable=invalid-name
class TestBytes(messages.Message): """Simple ProtoRPC request/response with a bytes field.""" bytes_value = messages.BytesField(1)
class IOThought(messages.Message): text = messages.StringField(1, default = None) #string param with ID 1 img = messages.BytesField(2, default = None)