cloudvision.api.arista.changecontrol.v1 package

Module contents

class cloudvision.api.arista.changecontrol.v1.Action(name: str | None = <PLACEHOLDER>, timeout: int | None = <PLACEHOLDER>, args: ~cloudvision.api.fmp.MapStringString = <PLACEHOLDER>)[source]

Bases: Message

Action is an action to perform during the execution of a stage of a change control. Available actions can be fetched using the “action” services.

args: ___fmp__.MapStringString = <PLACEHOLDER>

args are the arguments of the action.

name: str | None = <PLACEHOLDER>

name is the name of the action.

timeout: int | None = <PLACEHOLDER>

timeout is the maximum duration in seconds that the action can execute before timing out. If this is not set, then this is interpreted to mean there is no timeout.

class cloudvision.api.arista.changecontrol.v1.ActionSteps(values: ~typing.Dict[str, ~cloudvision.api.arista.changecontrol.v1.StepInfo] = <PLACEHOLDER>)[source]

Bases: Message

ActionSteps tracks the status of each step within an action.

values: Dict[str, StepInfo] = <PLACEHOLDER>

values maps each action step’s execution sequence to its status information, represented by StepInfo.

class cloudvision.api.arista.changecontrol.v1.ApproveConfig(key: ~cloudvision.api.arista.changecontrol.v1.ChangeControlKey = <PLACEHOLDER>, approve: ~cloudvision.api.arista.changecontrol.v1.FlagConfig = <PLACEHOLDER>, version: ~datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

ApproveConfig is used to configure the approval of a change control.

approve: FlagConfig = <PLACEHOLDER>

approve is the flag to approve (approve.value set to true) or unapprove (approve.value set to false) the change control.

key: ChangeControlKey = <PLACEHOLDER>

key uniquely identifies the change control.

version: datetime = <PLACEHOLDER>

version is the timestamp of the change control to approve. This field must be set when approve.value is set to true and is intended to safeguard against approving a change control that has been updated since last read.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigBatchedStreamRequest(partial_eq_filter: List[ForwardRef('ApproveConfig')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>, max_messages: int | None = <PLACEHOLDER>)[source]

Bases: Message

max_messages: int | None = <PLACEHOLDER>

MaxMessages limits the maximum number of messages that can be contained in one batch. MaxMessages is required to be at least 1. The maximum number of messages in a batch is min(max_messages, INTERNAL_BATCH_LIMIT) INTERNAL_BATCH_LIMIT is set based on the maximum message size.

partial_eq_filter: List[ApproveConfig] = <PLACEHOLDER>

PartialEqFilter provides a way to server-side filter a GetAll/Subscribe. This requires all provided fields to be equal to the response.

While transparent to users, this field also allows services to optimize internal subscriptions if filter(s) are sufficiently specific.

time: __time__.TimeBounds = <PLACEHOLDER>

TimeRange allows limiting response data to within a specified time window. If this field is populated, at least one of the two time fields are required.

For GetAll, the fields start and end can be used as follows:

  • end: Returns the state of each ApproveConfig at end. * Each ApproveConfig response is fully-specified (all fields set).

  • start: Returns the state of each ApproveConfig at start, followed by updates until now. * Each ApproveConfig response at start is fully-specified, but updates may be partial.

  • start and end: Returns the state of each ApproveConfig at start, followed by updates until end. * Each ApproveConfig response at start is fully-specified, but updates until end may

    be partial.

This field is not allowed in the Subscribe RPC.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigBatchedStreamResponse(responses: List[ForwardRef('ApproveConfigStreamResponse')] = <PLACEHOLDER>)[source]

Bases: Message

responses: List[ApproveConfigStreamResponse] = <PLACEHOLDER>

Values are the values deemed relevant to the initiating request. The length of this structure is guaranteed to be between (inclusive) 1 and min(req.max_messages, INTERNAL_BATCH_LIMIT).

class cloudvision.api.arista.changecontrol.v1.ApproveConfigDeleteAllRequest(partial_eq_filter: List[ForwardRef('ApproveConfig')] = <PLACEHOLDER>)[source]

Bases: Message

partial_eq_filter: List[ApproveConfig] = <PLACEHOLDER>

PartialEqFilter provides a way to server-side filter a DeleteAll. This requires all provided fields to be equal to the response. A filtered DeleteAll will use GetAll with filter to find things to delete.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigDeleteAllResponse(type: '___fmp__.DeleteError' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, key: 'ChangeControlKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

This indicates the error message from the delete failure.

key: ChangeControlKey = <PLACEHOLDER>

This is the key of the ApproveConfig instance that failed to be deleted.

time: datetime = <PLACEHOLDER>

Time indicates the (UTC) timestamp when the key was being deleted.

type: ___fmp__.DeleteError = <PLACEHOLDER>

This describes the class of delete error. A DeleteAllResponse is only sent when there is an error.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigDeleteRequest(key: 'ChangeControlKey' = <PLACEHOLDER>)[source]

Bases: Message

key: ChangeControlKey = <PLACEHOLDER>

Key indicates which ApproveConfig instance to remove. This field must always be set.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigDeleteResponse(key: 'ChangeControlKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: ChangeControlKey = <PLACEHOLDER>

Key echoes back the key of the deleted ApproveConfig instance.

time: datetime = <PLACEHOLDER>

Time indicates the (UTC) timestamp at which the system recognizes the deletion. The only guarantees made about this timestamp are:

  • it is after the time the request was received

  • a time-ranged query with StartTime==DeletedAt will not include this instance.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigDeleteSomeRequest(keys: List[ForwardRef('ChangeControlKey')] = <PLACEHOLDER>)[source]

Bases: Message

keys: List[ChangeControlKey] = <PLACEHOLDER>

key contains a list of ApproveConfig keys to delete

class cloudvision.api.arista.changecontrol.v1.ApproveConfigDeleteSomeResponse(key: ~cloudvision.api.arista.changecontrol.v1.ChangeControlKey = <PLACEHOLDER>, error: str = <PLACEHOLDER>)[source]

Bases: Message

ApproveConfigDeleteSomeResponse is only sent when there is an error.

error: str = <PLACEHOLDER>
key: ChangeControlKey = <PLACEHOLDER>
class cloudvision.api.arista.changecontrol.v1.ApproveConfigRequest(key: 'ChangeControlKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: ChangeControlKey = <PLACEHOLDER>

Key uniquely identifies a ApproveConfig instance to retrieve. This value must be populated.

time: datetime = <PLACEHOLDER>

Time indicates the time for which you are interested in the data. If no time is given, the server will use the time at which it makes the request.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigResponse(value: 'ApproveConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the ApproveConfig instance in this response.

value: ApproveConfig = <PLACEHOLDER>

Value is the value requested. This structure will be fully-populated as it exists in the datastore. If optional fields were not given at creation, these fields will be empty or set to default values.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigServiceBase[source]

Bases: ServiceBase

async delete(approve_config_delete_request: ApproveConfigDeleteRequest) ApproveConfigDeleteResponse[source]
async delete_all(approve_config_delete_all_request: ApproveConfigDeleteAllRequest) AsyncIterator[ApproveConfigDeleteAllResponse][source]
async delete_some(approve_config_delete_some_request: ApproveConfigDeleteSomeRequest) AsyncIterator[ApproveConfigDeleteSomeResponse][source]
async get_all(approve_config_stream_request: ApproveConfigStreamRequest) AsyncIterator[ApproveConfigStreamResponse][source]
async get_all_batched(approve_config_batched_stream_request: ApproveConfigBatchedStreamRequest) AsyncIterator[ApproveConfigBatchedStreamResponse][source]
async get_meta(approve_config_stream_request: ApproveConfigStreamRequest) MetaResponse[source]
async get_one(approve_config_request: ApproveConfigRequest) ApproveConfigResponse[source]
async get_some(approve_config_some_request: ApproveConfigSomeRequest) AsyncIterator[ApproveConfigSomeResponse][source]
async set(approve_config_set_request: ApproveConfigSetRequest) ApproveConfigSetResponse[source]
async set_some(approve_config_set_some_request: ApproveConfigSetSomeRequest) AsyncIterator[ApproveConfigSetSomeResponse][source]
async subscribe(approve_config_stream_request: ApproveConfigStreamRequest) AsyncIterator[ApproveConfigStreamResponse][source]
async subscribe_batched(approve_config_batched_stream_request: ApproveConfigBatchedStreamRequest) AsyncIterator[ApproveConfigBatchedStreamResponse][source]
async subscribe_meta(approve_config_stream_request: ApproveConfigStreamRequest) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.changecontrol.v1.ApproveConfigServiceStub(channel: Channel, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: Mapping[str, str | bytes] | Collection[Tuple[str, str | bytes]] | None = None)[source]

Bases: ServiceStub

async delete(approve_config_delete_request: ApproveConfigDeleteRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) ApproveConfigDeleteResponse[source]
async delete_all(approve_config_delete_all_request: ApproveConfigDeleteAllRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ApproveConfigDeleteAllResponse][source]
async delete_some(approve_config_delete_some_request: ApproveConfigDeleteSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ApproveConfigDeleteSomeResponse][source]
async get_all(approve_config_stream_request: ApproveConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ApproveConfigStreamResponse][source]
async get_all_batched(approve_config_batched_stream_request: ApproveConfigBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ApproveConfigBatchedStreamResponse][source]
async get_meta(approve_config_stream_request: ApproveConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) MetaResponse[source]
async get_one(approve_config_request: ApproveConfigRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) ApproveConfigResponse[source]
async get_some(approve_config_some_request: ApproveConfigSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ApproveConfigSomeResponse][source]
async set(approve_config_set_request: ApproveConfigSetRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) ApproveConfigSetResponse[source]
async set_some(approve_config_set_some_request: ApproveConfigSetSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ApproveConfigSetSomeResponse][source]
async subscribe(approve_config_stream_request: ApproveConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ApproveConfigStreamResponse][source]
async subscribe_batched(approve_config_batched_stream_request: ApproveConfigBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ApproveConfigBatchedStreamResponse][source]
async subscribe_meta(approve_config_stream_request: ApproveConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.changecontrol.v1.ApproveConfigSetRequest(value: 'ApproveConfig' = <PLACEHOLDER>)[source]

Bases: Message

value: ApproveConfig = <PLACEHOLDER>

ApproveConfig carries the value to set into the datastore. See the documentation on the ApproveConfig struct for which fields are required.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigSetResponse(value: 'ApproveConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time indicates the (UTC) timestamp at which the system recognizes the creation. The only guarantees made about this timestamp are:

  • it is after the time the request was received

  • a time-ranged query with StartTime==CreatedAt will include this instance.

value: ApproveConfig = <PLACEHOLDER>

Value carries all the values given in the ApproveConfigSetRequest as well as any server-generated values.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigSetSomeRequest(values: List[ForwardRef('ApproveConfig')] = <PLACEHOLDER>)[source]

Bases: Message

values: List[ApproveConfig] = <PLACEHOLDER>

value contains a list of ApproveConfig values to write. It is possible to provide more values than can fit within either:

  • the maxiumum send size of the client

  • the maximum receive size of the server

If this error occurs you must reduce the number of values sent. See gRPC “maximum message size” documentation for more information.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigSetSomeResponse(key: 'ChangeControlKey' = <PLACEHOLDER>, error: str = <PLACEHOLDER>)[source]

Bases: Message

error: str = <PLACEHOLDER>
key: ChangeControlKey = <PLACEHOLDER>
class cloudvision.api.arista.changecontrol.v1.ApproveConfigSomeRequest(keys: List[ForwardRef('ChangeControlKey')] = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

keys: List[ChangeControlKey] = <PLACEHOLDER>
time: datetime = <PLACEHOLDER>

Time indicates the time for which you are interested in the data. If no time is given, the server will use the time at which it makes the request.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigSomeResponse(value: 'ApproveConfig' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

Error is an optional field. It should be filled when there is an error in the GetSome process.

time: datetime = <PLACEHOLDER>
value: ApproveConfig = <PLACEHOLDER>

Value is the value requested. This structure will be fully-populated as it exists in the datastore. If optional fields were not given at creation, these fields will be empty or set to default values.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigStreamRequest(partial_eq_filter: List[ForwardRef('ApproveConfig')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>)[source]

Bases: Message

partial_eq_filter: List[ApproveConfig] = <PLACEHOLDER>

PartialEqFilter provides a way to server-side filter a GetAll/Subscribe. This requires all provided fields to be equal to the response.

While transparent to users, this field also allows services to optimize internal subscriptions if filter(s) are sufficiently specific.

time: __time__.TimeBounds = <PLACEHOLDER>

TimeRange allows limiting response data to within a specified time window. If this field is populated, at least one of the two time fields are required.

For GetAll, the fields start and end can be used as follows:

  • end: Returns the state of each ApproveConfig at end. * Each ApproveConfig response is fully-specified (all fields set).

  • start: Returns the state of each ApproveConfig at start, followed by updates until now. * Each ApproveConfig response at start is fully-specified, but updates may be partial.

  • start and end: Returns the state of each ApproveConfig at start, followed by updates until end. * Each ApproveConfig response at start is fully-specified, but updates until end may

    be partial.

This field is not allowed in the Subscribe RPC.

class cloudvision.api.arista.changecontrol.v1.ApproveConfigStreamResponse(value: 'ApproveConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>, type: '__subscriptions__.Operation' = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time holds the timestamp of this ApproveConfig’s last modification.

type: __subscriptions__.Operation = <PLACEHOLDER>

Operation indicates how the ApproveConfig value in this response should be considered. Under non-subscribe requests, this value should always be INITIAL. In a subscription, once all initial data is streamed and the client begins to receive modification updates, you should not see INITIAL again.

value: ApproveConfig = <PLACEHOLDER>

Value is a value deemed relevant to the initiating request. This structure will always have its key-field populated. Which other fields are populated, and why, depends on the value of Operation and what triggered this notification.

class cloudvision.api.arista.changecontrol.v1.Change(name: str | None = <PLACEHOLDER>, root_stage_id: str | None = <PLACEHOLDER>, stages: ~cloudvision.api.arista.changecontrol.v1.StageMap = <PLACEHOLDER>, notes: str | None = <PLACEHOLDER>, time: ~datetime.datetime = <PLACEHOLDER>, user: str | None = <PLACEHOLDER>)[source]

Bases: Message

Change holds the configuration and status of the change of a change control.

name: str | None = <PLACEHOLDER>

name is the name of the change.

notes: str | None = <PLACEHOLDER>

notes are any notes associated with the change.

root_stage_id: str | None = <PLACEHOLDER>

root_stage_id is the ID of the root stage or the stage that should execute first.

stages: StageMap = <PLACEHOLDER>

stages holds a configuration of stages and their statuses.

time: datetime = <PLACEHOLDER>

time is the time at which the change was last updated.

user: str | None = <PLACEHOLDER>

user is the user by which the change was last updated.

class cloudvision.api.arista.changecontrol.v1.ChangeConfig(name: str | None = <PLACEHOLDER>, root_stage_id: str | None = <PLACEHOLDER>, stages: ~cloudvision.api.arista.changecontrol.v1.StageConfigMap = <PLACEHOLDER>, notes: str | None = <PLACEHOLDER>)[source]

Bases: Message

ChangeConfig holds a configuration for the change of a change control which is essentially a named configuration of stages.

name: str | None = <PLACEHOLDER>

name is the name of the change.

notes: str | None = <PLACEHOLDER>

notes are any notes associated with the change.

root_stage_id: str | None = <PLACEHOLDER>

root_stage_id is the ID of the root stage or the stage that should execute first.

stages: StageConfigMap = <PLACEHOLDER>

stages holds a configuration of stages. See StageConfigMap description for more information.

class cloudvision.api.arista.changecontrol.v1.ChangeControl(key: ~cloudvision.api.arista.changecontrol.v1.ChangeControlKey = <PLACEHOLDER>, change: ~cloudvision.api.arista.changecontrol.v1.Change = <PLACEHOLDER>, approve: ~cloudvision.api.arista.changecontrol.v1.Flag = <PLACEHOLDER>, start: ~cloudvision.api.arista.changecontrol.v1.Flag = <PLACEHOLDER>, status: ~cloudvision.api.arista.changecontrol.v1.ChangeControlStatus = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, schedule: ~cloudvision.api.arista.changecontrol.v1.TimestampFlag = <PLACEHOLDER>, device_ids: ~cloudvision.api.fmp.RepeatedString = <PLACEHOLDER>, device_id_to_stage_ids: ~cloudvision.api.arista.changecontrol.v1.DeviceToStageMap = <PLACEHOLDER>)[source]

Bases: Message

ChangeControl holds the configuration and status of a change control.

approve: Flag = <PLACEHOLDER>

approve indicates whether the change control was flagged as approved (approve.value set to true) or unapproved (approve.value set to false).

change: Change = <PLACEHOLDER>

change holds the configuration and status of the change of the change control.

device_id_to_stage_ids: DeviceToStageMap = <PLACEHOLDER>

device_id_to_stage_ids is a map of device IDs to the stages present in the specified Change state. This is not affected by the device ID based custom filtering and will contain info about all the devices associated with a CC ID.

device_ids: ___fmp__.RepeatedString = <PLACEHOLDER>

device_ids is a list of device IDs on which the change control will operate.

error: str | None = <PLACEHOLDER>

error is any error that occurred during the execution of the change control.

key: ChangeControlKey = <PLACEHOLDER>

key uniquely identifies the change control.

schedule: TimestampFlag = <PLACEHOLDER>

schedule indicates whether the change control was flagged to be scheduled (schedule.value set to some timestamp) or unscheduled (schedule.value set to nil) for execution.

start: Flag = <PLACEHOLDER>

start indicates whether the change control was flagged to start (start.value set to true) or stop (start.value set to false) execution.

status: ChangeControlStatus = <PLACEHOLDER>

status is the execution status of the change control.

class cloudvision.api.arista.changecontrol.v1.ChangeControlBatchedStreamRequest(partial_eq_filter: List[ForwardRef('ChangeControl')] = <PLACEHOLDER>, filter: 'Filter' = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>, max_messages: int | None = <PLACEHOLDER>)[source]

Bases: Message

filter: Filter = <PLACEHOLDER>

For each ChangeControl in the list, all populated fields are considered ANDed together as a filtering operation. Similarly, the list itself is ORed such that any individual filter that matches a given ChangeControl is streamed to the user.

max_messages: int | None = <PLACEHOLDER>

MaxMessages limits the maximum number of messages that can be contained in one batch. MaxMessages is required to be at least 1. The maximum number of messages in a batch is min(max_messages, INTERNAL_BATCH_LIMIT) INTERNAL_BATCH_LIMIT is set based on the maximum message size.

partial_eq_filter: List[ChangeControl] = <PLACEHOLDER>

PartialEqFilter provides a way to server-side filter a GetAll/Subscribe. This requires all provided fields to be equal to the response.

While transparent to users, this field also allows services to optimize internal subscriptions if filter(s) are sufficiently specific.

time: __time__.TimeBounds = <PLACEHOLDER>

TimeRange allows limiting response data to within a specified time window. If this field is populated, at least one of the two time fields are required.

For GetAll, the fields start and end can be used as follows:

  • end: Returns the state of each ChangeControl at end. * Each ChangeControl response is fully-specified (all fields set).

  • start: Returns the state of each ChangeControl at start, followed by updates until now. * Each ChangeControl response at start is fully-specified, but updates may be partial.

  • start and end: Returns the state of each ChangeControl at start, followed by updates until end. * Each ChangeControl response at start is fully-specified, but updates until end may

    be partial.

This field is not allowed in the Subscribe RPC.

class cloudvision.api.arista.changecontrol.v1.ChangeControlBatchedStreamResponse(responses: List[ForwardRef('ChangeControlStreamResponse')] = <PLACEHOLDER>)[source]

Bases: Message

responses: List[ChangeControlStreamResponse] = <PLACEHOLDER>

Values are the values deemed relevant to the initiating request. The length of this structure is guaranteed to be between (inclusive) 1 and min(req.max_messages, INTERNAL_BATCH_LIMIT).

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfig(key: ~cloudvision.api.arista.changecontrol.v1.ChangeControlKey = <PLACEHOLDER>, change: ~cloudvision.api.arista.changecontrol.v1.ChangeConfig = <PLACEHOLDER>, start: ~cloudvision.api.arista.changecontrol.v1.FlagConfig = <PLACEHOLDER>, schedule: ~cloudvision.api.arista.changecontrol.v1.TimestampFlagConfig = <PLACEHOLDER>)[source]

Bases: Message

ChangeControlConfig holds the configuration of a change control.

change: ChangeConfig = <PLACEHOLDER>

change is the change subject to execution.

key: ChangeControlKey = <PLACEHOLDER>

key uniquely identifies the change control.

schedule: TimestampFlagConfig = <PLACEHOLDER>

schedule is the flag to schedule (schedule.value set to some timestamp) or unschedule (schedule.value set to nil) the change control for execution.

start: FlagConfig = <PLACEHOLDER>

start is the flag to start (start.value set to true) or stop (start.value set to false) execution of the change control.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigBatchedStreamRequest(partial_eq_filter: List[ForwardRef('ChangeControlConfig')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>, max_messages: int | None = <PLACEHOLDER>)[source]

Bases: Message

max_messages: int | None = <PLACEHOLDER>

MaxMessages limits the maximum number of messages that can be contained in one batch. MaxMessages is required to be at least 1. The maximum number of messages in a batch is min(max_messages, INTERNAL_BATCH_LIMIT) INTERNAL_BATCH_LIMIT is set based on the maximum message size.

partial_eq_filter: List[ChangeControlConfig] = <PLACEHOLDER>

PartialEqFilter provides a way to server-side filter a GetAll/Subscribe. This requires all provided fields to be equal to the response.

While transparent to users, this field also allows services to optimize internal subscriptions if filter(s) are sufficiently specific.

time: __time__.TimeBounds = <PLACEHOLDER>

TimeRange allows limiting response data to within a specified time window. If this field is populated, at least one of the two time fields are required.

For GetAll, the fields start and end can be used as follows:

  • end: Returns the state of each ChangeControlConfig at end. * Each ChangeControlConfig response is fully-specified (all fields set).

  • start: Returns the state of each ChangeControlConfig at start, followed by updates until now. * Each ChangeControlConfig response at start is fully-specified, but updates may be partial.

  • start and end: Returns the state of each ChangeControlConfig at start, followed by updates until end. * Each ChangeControlConfig response at start is fully-specified, but updates until end may

    be partial.

This field is not allowed in the Subscribe RPC.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigBatchedStreamResponse(responses: List[ForwardRef('ChangeControlConfigStreamResponse')] = <PLACEHOLDER>)[source]

Bases: Message

responses: List[ChangeControlConfigStreamResponse] = <PLACEHOLDER>

Values are the values deemed relevant to the initiating request. The length of this structure is guaranteed to be between (inclusive) 1 and min(req.max_messages, INTERNAL_BATCH_LIMIT).

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigDeleteAllRequest(partial_eq_filter: List[ForwardRef('ChangeControlConfig')] = <PLACEHOLDER>)[source]

Bases: Message

partial_eq_filter: List[ChangeControlConfig] = <PLACEHOLDER>

PartialEqFilter provides a way to server-side filter a DeleteAll. This requires all provided fields to be equal to the response. A filtered DeleteAll will use GetAll with filter to find things to delete.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigDeleteAllResponse(type: '___fmp__.DeleteError' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, key: 'ChangeControlKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

This indicates the error message from the delete failure.

key: ChangeControlKey = <PLACEHOLDER>

This is the key of the ChangeControlConfig instance that failed to be deleted.

time: datetime = <PLACEHOLDER>

Time indicates the (UTC) timestamp when the key was being deleted.

type: ___fmp__.DeleteError = <PLACEHOLDER>

This describes the class of delete error. A DeleteAllResponse is only sent when there is an error.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigDeleteRequest(key: 'ChangeControlKey' = <PLACEHOLDER>)[source]

Bases: Message

key: ChangeControlKey = <PLACEHOLDER>

Key indicates which ChangeControlConfig instance to remove. This field must always be set.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigDeleteResponse(key: 'ChangeControlKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: ChangeControlKey = <PLACEHOLDER>

Key echoes back the key of the deleted ChangeControlConfig instance.

time: datetime = <PLACEHOLDER>

Time indicates the (UTC) timestamp at which the system recognizes the deletion. The only guarantees made about this timestamp are:

  • it is after the time the request was received

  • a time-ranged query with StartTime==DeletedAt will not include this instance.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigDeleteSomeRequest(keys: List[ForwardRef('ChangeControlKey')] = <PLACEHOLDER>)[source]

Bases: Message

keys: List[ChangeControlKey] = <PLACEHOLDER>

key contains a list of ChangeControlConfig keys to delete

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigDeleteSomeResponse(key: ~cloudvision.api.arista.changecontrol.v1.ChangeControlKey = <PLACEHOLDER>, error: str = <PLACEHOLDER>)[source]

Bases: Message

ChangeControlConfigDeleteSomeResponse is only sent when there is an error.

error: str = <PLACEHOLDER>
key: ChangeControlKey = <PLACEHOLDER>
class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigRequest(key: 'ChangeControlKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: ChangeControlKey = <PLACEHOLDER>

Key uniquely identifies a ChangeControlConfig instance to retrieve. This value must be populated.

time: datetime = <PLACEHOLDER>

Time indicates the time for which you are interested in the data. If no time is given, the server will use the time at which it makes the request.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigResponse(value: 'ChangeControlConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the ChangeControlConfig instance in this response.

value: ChangeControlConfig = <PLACEHOLDER>

Value is the value requested. This structure will be fully-populated as it exists in the datastore. If optional fields were not given at creation, these fields will be empty or set to default values.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigServiceBase[source]

Bases: ServiceBase

async delete(change_control_config_delete_request: ChangeControlConfigDeleteRequest) ChangeControlConfigDeleteResponse[source]
async delete_all(change_control_config_delete_all_request: ChangeControlConfigDeleteAllRequest) AsyncIterator[ChangeControlConfigDeleteAllResponse][source]
async delete_some(change_control_config_delete_some_request: ChangeControlConfigDeleteSomeRequest) AsyncIterator[ChangeControlConfigDeleteSomeResponse][source]
async get_all(change_control_config_stream_request: ChangeControlConfigStreamRequest) AsyncIterator[ChangeControlConfigStreamResponse][source]
async get_all_batched(change_control_config_batched_stream_request: ChangeControlConfigBatchedStreamRequest) AsyncIterator[ChangeControlConfigBatchedStreamResponse][source]
async get_meta(change_control_config_stream_request: ChangeControlConfigStreamRequest) MetaResponse[source]
async get_one(change_control_config_request: ChangeControlConfigRequest) ChangeControlConfigResponse[source]
async get_some(change_control_config_some_request: ChangeControlConfigSomeRequest) AsyncIterator[ChangeControlConfigSomeResponse][source]
async set(change_control_config_set_request: ChangeControlConfigSetRequest) ChangeControlConfigSetResponse[source]
async set_some(change_control_config_set_some_request: ChangeControlConfigSetSomeRequest) AsyncIterator[ChangeControlConfigSetSomeResponse][source]
async subscribe(change_control_config_stream_request: ChangeControlConfigStreamRequest) AsyncIterator[ChangeControlConfigStreamResponse][source]
async subscribe_batched(change_control_config_batched_stream_request: ChangeControlConfigBatchedStreamRequest) AsyncIterator[ChangeControlConfigBatchedStreamResponse][source]
async subscribe_meta(change_control_config_stream_request: ChangeControlConfigStreamRequest) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigServiceStub(channel: Channel, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: Mapping[str, str | bytes] | Collection[Tuple[str, str | bytes]] | None = None)[source]

Bases: ServiceStub

async delete(change_control_config_delete_request: ChangeControlConfigDeleteRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) ChangeControlConfigDeleteResponse[source]
async delete_all(change_control_config_delete_all_request: ChangeControlConfigDeleteAllRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ChangeControlConfigDeleteAllResponse][source]
async delete_some(change_control_config_delete_some_request: ChangeControlConfigDeleteSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ChangeControlConfigDeleteSomeResponse][source]
async get_all(change_control_config_stream_request: ChangeControlConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ChangeControlConfigStreamResponse][source]
async get_all_batched(change_control_config_batched_stream_request: ChangeControlConfigBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ChangeControlConfigBatchedStreamResponse][source]
async get_meta(change_control_config_stream_request: ChangeControlConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) MetaResponse[source]
async get_one(change_control_config_request: ChangeControlConfigRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) ChangeControlConfigResponse[source]
async get_some(change_control_config_some_request: ChangeControlConfigSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ChangeControlConfigSomeResponse][source]
async set(change_control_config_set_request: ChangeControlConfigSetRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) ChangeControlConfigSetResponse[source]
async set_some(change_control_config_set_some_request: ChangeControlConfigSetSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ChangeControlConfigSetSomeResponse][source]
async subscribe(change_control_config_stream_request: ChangeControlConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ChangeControlConfigStreamResponse][source]
async subscribe_batched(change_control_config_batched_stream_request: ChangeControlConfigBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ChangeControlConfigBatchedStreamResponse][source]
async subscribe_meta(change_control_config_stream_request: ChangeControlConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigSetRequest(value: 'ChangeControlConfig' = <PLACEHOLDER>)[source]

Bases: Message

value: ChangeControlConfig = <PLACEHOLDER>

ChangeControlConfig carries the value to set into the datastore. See the documentation on the ChangeControlConfig struct for which fields are required.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigSetResponse(value: 'ChangeControlConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time indicates the (UTC) timestamp at which the system recognizes the creation. The only guarantees made about this timestamp are:

  • it is after the time the request was received

  • a time-ranged query with StartTime==CreatedAt will include this instance.

value: ChangeControlConfig = <PLACEHOLDER>

Value carries all the values given in the ChangeControlConfigSetRequest as well as any server-generated values.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigSetSomeRequest(values: List[ForwardRef('ChangeControlConfig')] = <PLACEHOLDER>)[source]

Bases: Message

values: List[ChangeControlConfig] = <PLACEHOLDER>

value contains a list of ChangeControlConfig values to write. It is possible to provide more values than can fit within either:

  • the maxiumum send size of the client

  • the maximum receive size of the server

If this error occurs you must reduce the number of values sent. See gRPC “maximum message size” documentation for more information.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigSetSomeResponse(key: 'ChangeControlKey' = <PLACEHOLDER>, error: str = <PLACEHOLDER>)[source]

Bases: Message

error: str = <PLACEHOLDER>
key: ChangeControlKey = <PLACEHOLDER>
class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigSomeRequest(keys: List[ForwardRef('ChangeControlKey')] = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

keys: List[ChangeControlKey] = <PLACEHOLDER>
time: datetime = <PLACEHOLDER>

Time indicates the time for which you are interested in the data. If no time is given, the server will use the time at which it makes the request.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigSomeResponse(value: 'ChangeControlConfig' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

Error is an optional field. It should be filled when there is an error in the GetSome process.

time: datetime = <PLACEHOLDER>
value: ChangeControlConfig = <PLACEHOLDER>

Value is the value requested. This structure will be fully-populated as it exists in the datastore. If optional fields were not given at creation, these fields will be empty or set to default values.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigStreamRequest(partial_eq_filter: List[ForwardRef('ChangeControlConfig')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>)[source]

Bases: Message

partial_eq_filter: List[ChangeControlConfig] = <PLACEHOLDER>

PartialEqFilter provides a way to server-side filter a GetAll/Subscribe. This requires all provided fields to be equal to the response.

While transparent to users, this field also allows services to optimize internal subscriptions if filter(s) are sufficiently specific.

time: __time__.TimeBounds = <PLACEHOLDER>

TimeRange allows limiting response data to within a specified time window. If this field is populated, at least one of the two time fields are required.

For GetAll, the fields start and end can be used as follows:

  • end: Returns the state of each ChangeControlConfig at end. * Each ChangeControlConfig response is fully-specified (all fields set).

  • start: Returns the state of each ChangeControlConfig at start, followed by updates until now. * Each ChangeControlConfig response at start is fully-specified, but updates may be partial.

  • start and end: Returns the state of each ChangeControlConfig at start, followed by updates until end. * Each ChangeControlConfig response at start is fully-specified, but updates until end may

    be partial.

This field is not allowed in the Subscribe RPC.

class cloudvision.api.arista.changecontrol.v1.ChangeControlConfigStreamResponse(value: 'ChangeControlConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>, type: '__subscriptions__.Operation' = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time holds the timestamp of this ChangeControlConfig’s last modification.

type: __subscriptions__.Operation = <PLACEHOLDER>

Operation indicates how the ChangeControlConfig value in this response should be considered. Under non-subscribe requests, this value should always be INITIAL. In a subscription, once all initial data is streamed and the client begins to receive modification updates, you should not see INITIAL again.

value: ChangeControlConfig = <PLACEHOLDER>

Value is a value deemed relevant to the initiating request. This structure will always have its key-field populated. Which other fields are populated, and why, depends on the value of Operation and what triggered this notification.

class cloudvision.api.arista.changecontrol.v1.ChangeControlKey(id: str | None = <PLACEHOLDER>)[source]

Bases: Message

ChangeControlKey uniquely identifies a change control.

id: str | None = <PLACEHOLDER>

id is the ID of the change control.

class cloudvision.api.arista.changecontrol.v1.ChangeControlRequest(key: 'ChangeControlKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: ChangeControlKey = <PLACEHOLDER>

Key uniquely identifies a ChangeControl instance to retrieve. This value must be populated.

time: datetime = <PLACEHOLDER>

Time indicates the time for which you are interested in the data. If no time is given, the server will use the time at which it makes the request.

class cloudvision.api.arista.changecontrol.v1.ChangeControlResponse(value: 'ChangeControl' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the ChangeControl instance in this response.

value: ChangeControl = <PLACEHOLDER>

Value is the value requested. This structure will be fully-populated as it exists in the datastore. If optional fields were not given at creation, these fields will be empty or set to default values.

class cloudvision.api.arista.changecontrol.v1.ChangeControlServiceBase[source]

Bases: ServiceBase

async get_all(change_control_stream_request: ChangeControlStreamRequest) AsyncIterator[ChangeControlStreamResponse][source]
async get_all_batched(change_control_batched_stream_request: ChangeControlBatchedStreamRequest) AsyncIterator[ChangeControlBatchedStreamResponse][source]
async get_meta(change_control_stream_request: ChangeControlStreamRequest) MetaResponse[source]
async get_one(change_control_request: ChangeControlRequest) ChangeControlResponse[source]
async get_some(change_control_some_request: ChangeControlSomeRequest) AsyncIterator[ChangeControlSomeResponse][source]
async subscribe(change_control_stream_request: ChangeControlStreamRequest) AsyncIterator[ChangeControlStreamResponse][source]
async subscribe_batched(change_control_batched_stream_request: ChangeControlBatchedStreamRequest) AsyncIterator[ChangeControlBatchedStreamResponse][source]
async subscribe_meta(change_control_stream_request: ChangeControlStreamRequest) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.changecontrol.v1.ChangeControlServiceStub(channel: Channel, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: Mapping[str, str | bytes] | Collection[Tuple[str, str | bytes]] | None = None)[source]

Bases: ServiceStub

async get_all(change_control_stream_request: ChangeControlStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ChangeControlStreamResponse][source]
async get_all_batched(change_control_batched_stream_request: ChangeControlBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ChangeControlBatchedStreamResponse][source]
async get_meta(change_control_stream_request: ChangeControlStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) MetaResponse[source]
async get_one(change_control_request: ChangeControlRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) ChangeControlResponse[source]
async get_some(change_control_some_request: ChangeControlSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ChangeControlSomeResponse][source]
async subscribe(change_control_stream_request: ChangeControlStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ChangeControlStreamResponse][source]
async subscribe_batched(change_control_batched_stream_request: ChangeControlBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ChangeControlBatchedStreamResponse][source]
async subscribe_meta(change_control_stream_request: ChangeControlStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.changecontrol.v1.ChangeControlSomeRequest(keys: List[ForwardRef('ChangeControlKey')] = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

keys: List[ChangeControlKey] = <PLACEHOLDER>
time: datetime = <PLACEHOLDER>

Time indicates the time for which you are interested in the data. If no time is given, the server will use the time at which it makes the request.

class cloudvision.api.arista.changecontrol.v1.ChangeControlSomeResponse(value: 'ChangeControl' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

Error is an optional field. It should be filled when there is an error in the GetSome process.

time: datetime = <PLACEHOLDER>
value: ChangeControl = <PLACEHOLDER>

Value is the value requested. This structure will be fully-populated as it exists in the datastore. If optional fields were not given at creation, these fields will be empty or set to default values.

class cloudvision.api.arista.changecontrol.v1.ChangeControlStatus(value: int)[source]

Bases: Enum

ChangeControlStatus defines the possible execution statuses of a change control.

COMPLETED = ChangeControlStatus.COMPLETED

CHANGE_CONTROL_STATUS_COMPLETED means the change control has ceased execution. Success/failure of a change control cannot be inferred from this status alone but rather this status plus the change control error. That is, no error implies success and some error implies failure.

NOT_STARTED = ChangeControlStatus.NOT_STARTED

CHANGE_CONTROL_STATUS_NOT_STARTED means the change control has not been started. This would include approved and not approved change controls.

RUNNING = ChangeControlStatus.RUNNING

CHANGE_CONTROL_STATUS_RUNNING means the change control has begun execution.

SCHEDULED = ChangeControlStatus.SCHEDULED

CHANGE_CONTROL_STATUS_SCHEDULED means the change control has been scheduled for execution at some time. Any failure that occurs during this process will cause a transition back to the unspecified status, a reset of the schedule flag by the system, and an error on the change control reporting the details of the failure.

UNSPECIFIED = ChangeControlStatus.UNSPECIFIED

CHANGE_CONTROL_STATUS_UNSPECIFIED means the change control status is unknown.

name: str | None
value: int
class cloudvision.api.arista.changecontrol.v1.ChangeControlStreamRequest(partial_eq_filter: List[ForwardRef('ChangeControl')] = <PLACEHOLDER>, filter: 'Filter' = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>)[source]

Bases: Message

filter: Filter = <PLACEHOLDER>

For each ChangeControl in the list, all populated fields are considered ANDed together as a filtering operation. Similarly, the list itself is ORed such that any individual filter that matches a given ChangeControl is streamed to the user.

partial_eq_filter: List[ChangeControl] = <PLACEHOLDER>

PartialEqFilter provides a way to server-side filter a GetAll/Subscribe. This requires all provided fields to be equal to the response.

While transparent to users, this field also allows services to optimize internal subscriptions if filter(s) are sufficiently specific.

time: __time__.TimeBounds = <PLACEHOLDER>

TimeRange allows limiting response data to within a specified time window. If this field is populated, at least one of the two time fields are required.

For GetAll, the fields start and end can be used as follows:

  • end: Returns the state of each ChangeControl at end. * Each ChangeControl response is fully-specified (all fields set).

  • start: Returns the state of each ChangeControl at start, followed by updates until now. * Each ChangeControl response at start is fully-specified, but updates may be partial.

  • start and end: Returns the state of each ChangeControl at start, followed by updates until end. * Each ChangeControl response at start is fully-specified, but updates until end may

    be partial.

This field is not allowed in the Subscribe RPC.

class cloudvision.api.arista.changecontrol.v1.ChangeControlStreamResponse(value: 'ChangeControl' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>, type: '__subscriptions__.Operation' = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time holds the timestamp of this ChangeControl’s last modification.

type: __subscriptions__.Operation = <PLACEHOLDER>

Operation indicates how the ChangeControl value in this response should be considered. Under non-subscribe requests, this value should always be INITIAL. In a subscription, once all initial data is streamed and the client begins to receive modification updates, you should not see INITIAL again.

value: ChangeControl = <PLACEHOLDER>

Value is a value deemed relevant to the initiating request. This structure will always have its key-field populated. Which other fields are populated, and why, depends on the value of Operation and what triggered this notification.

class cloudvision.api.arista.changecontrol.v1.DeviceToStageMap(values: ~typing.Dict[str, ~cloudvision.api.fmp.RepeatedString] = <PLACEHOLDER>)[source]

Bases: Message

DeviceToStageMap is a map of a device ID and its list of corresponding stages.

values: Dict[str, ___fmp__.RepeatedString] = <PLACEHOLDER>

values maps the device ID with the stages which are associated with a device in a changecontrol state model.

class cloudvision.api.arista.changecontrol.v1.Filter(device_ids: ~cloudvision.api.fmp.RepeatedString = <PLACEHOLDER>)[source]

Bases: Message

Filter is used to filter changecontrols for requested device ids.

device_ids: ___fmp__.RepeatedString = <PLACEHOLDER>

device_ids includes the list of device ids to be matched with devices in the changecontrol state model. At least one of the provided device ids must be present in CC devices field.

class cloudvision.api.arista.changecontrol.v1.Flag(value: bool | None = <PLACEHOLDER>, notes: str | None = <PLACEHOLDER>, time: ~datetime.datetime = <PLACEHOLDER>, user: str | None = <PLACEHOLDER>)[source]

Bases: Message

Flag holds the configuration of a boolean flag plus some information about when and by whom it was set.

notes: str | None = <PLACEHOLDER>

notes are any notes associated with the setting of the flag.

time: datetime = <PLACEHOLDER>

time is the time at which the flag was last updated.

user: str | None = <PLACEHOLDER>

user is the user by which the flag was last updated.

value: bool | None = <PLACEHOLDER>

value is the value of the flag (true or false).

class cloudvision.api.arista.changecontrol.v1.FlagConfig(value: bool | None = <PLACEHOLDER>, notes: str | None = <PLACEHOLDER>)[source]

Bases: Message

FlagConfig is used to set a flag on a change control that takes a boolean value (e.g. start/stop, approve/unapprove).

notes: str | None = <PLACEHOLDER>

notes are any notes associated with the flag value.

value: bool | None = <PLACEHOLDER>

value is the value of the flag (true or false).

class cloudvision.api.arista.changecontrol.v1.MetaResponse(time: datetime.datetime = <PLACEHOLDER>, type: '__subscriptions__.Operation' = <PLACEHOLDER>, count: int | None = <PLACEHOLDER>)[source]

Bases: Message

count: int | None = <PLACEHOLDER>

Count is the number of items present under the conditions of the request.

time: datetime = <PLACEHOLDER>

Time holds the timestamp of the last item included in the metadata calculation.

type: __subscriptions__.Operation = <PLACEHOLDER>

Operation indicates how the value in this response should be considered. Under non-subscribe requests, this value should always be INITIAL. In a subscription, once all initial data is streamed and the client begins to receive modification updates, you should not see INITIAL again.

class cloudvision.api.arista.changecontrol.v1.RepeatedRepeatedString(values: ~typing.List[~cloudvision.api.fmp.RepeatedString] = <PLACEHOLDER>)[source]

Bases: Message

RepeatedRepeatedString wraps a repeated fmp.RepeatedString to define a string matrix which is used to represent stage rows (see StageConfig).

values: List[___fmp__.RepeatedString] = <PLACEHOLDER>

values is a list of fmp.RepeatedString.

class cloudvision.api.arista.changecontrol.v1.Stage(name: str | None = <PLACEHOLDER>, action: ~cloudvision.api.arista.changecontrol.v1.Action = <PLACEHOLDER>, rows: ~cloudvision.api.arista.changecontrol.v1.RepeatedRepeatedString = <PLACEHOLDER>, status: ~cloudvision.api.arista.changecontrol.v1.StageStatus = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, start_time: ~datetime.datetime = <PLACEHOLDER>, end_time: ~datetime.datetime = <PLACEHOLDER>, steps: ~cloudvision.api.arista.changecontrol.v1.ActionSteps = <PLACEHOLDER>)[source]

Bases: Message

Stage holds the configuration and status of a stage.

action: Action = <PLACEHOLDER>

action is the action to perform during the stage.

end_time: datetime = <PLACEHOLDER>

end_time is the time when status change to Completed.

error: str | None = <PLACEHOLDER>

error is any error that occured during the execution of the stage.

name: str | None = <PLACEHOLDER>

name is the name of the stage.

rows: RepeatedRepeatedString = <PLACEHOLDER>

rows is a series of rows of parallel stages referenced by ID. See StageConfig.rows for more details.

start_time: datetime = <PLACEHOLDER>

start_time is the time when status change to Running.

status: StageStatus = <PLACEHOLDER>

status is the execution status of the stage.

steps: ActionSteps = <PLACEHOLDER>

steps represent the granular steps and their statuses associated with the action performed in the change control stage. Each stage generally defines either an action or a series of sub-stages.

class cloudvision.api.arista.changecontrol.v1.StageConfig(name: str | None = <PLACEHOLDER>, action: ~cloudvision.api.arista.changecontrol.v1.Action = <PLACEHOLDER>, rows: ~cloudvision.api.arista.changecontrol.v1.RepeatedRepeatedString = <PLACEHOLDER>)[source]

Bases: Message

StageConfig holds a configuration for a stage in a change control. Each stage generally defines either an action or a series of sub-stages.

action: Action = <PLACEHOLDER>

action is the action to perform on stage execution.

name: str | None = <PLACEHOLDER>

name is the name of the stage.

rows: RepeatedRepeatedString = <PLACEHOLDER>

rows is a series of rows of parallel stages referenced by ID. Each row is run one after the other and the stages within each row are run in parallel.

For example:

` [["1a", "1b"], ["2"]] `

This configures stage 1a and stage 1b to run at the same time, and then stage 2 once both of them have completed.

class cloudvision.api.arista.changecontrol.v1.StageConfigMap(values: ~typing.Dict[str, ~cloudvision.api.arista.changecontrol.v1.StageConfig] = <PLACEHOLDER>)[source]

Bases: Message

StageConfigMap wraps a map from stage ID to StageConfig. This defines the configuration and order of execution for the stages in a change control.

For example:

``` {

“root”: { name: “root”, rows: [[“1-2”], [“3”]] }, “1-2”: { name: “stages 1-2”, rows: [[“1”], [“2”]] }, “1”: { name: “stage 1”, rows: [[“1a”, “1b”]] }, “1a”: { name: “stage 1a”, action: { name: “task”, args: { “TaskID”: “101” } }, “1b”: { name: “stage 1b”, action: { name: “task”, args: { “TaskID”: “102” } }, “2”: { name: “stage 2”, action: { name: “task”, args: { “TaskID”: “103” } }, “3”: { name: “stage 3”, action: { name: “task”, args: { “TaskID”: “104” } }

}

Assuming the root stage ID of the enclosing change control is “root”, this would mean to do the following in sequence:

` root |- stages 1-2 |  |- stage 1 |  |  |- stage 1a, stage 1b (parallel) |  |- stage 2 |- stage 3 `

That is, execute tasks 101 and 102 in parallel, then task 103, then task 104.

values: Dict[str, StageConfig] = <PLACEHOLDER>

values is a map from stage ID to StageConfig.

class cloudvision.api.arista.changecontrol.v1.StageMap(values: ~typing.Dict[str, ~cloudvision.api.arista.changecontrol.v1.Stage] = <PLACEHOLDER>)[source]

Bases: Message

StageMap is a map from stage ID to Stage. This has essentially the same structure as StageConfigMap, but with each ID mapping to a Stage instead of StageConfig.

values: Dict[str, Stage] = <PLACEHOLDER>

values is a map from stage ID to Stage.

class cloudvision.api.arista.changecontrol.v1.StageStatus(value: int)[source]

Bases: Enum

StageStatus defines the possible execution statuses of a stage.

COMPLETED = StageStatus.COMPLETED

STAGE_STATUS_COMPLETED means the stage has ceased execution. Success/failure of a stage cannot be inferred from this status alone but rather this status plus the stage error. That is, no error implies success and some error implies failure.

NOT_STARTED = StageStatus.NOT_STARTED

STAGE_STATUS_NOT_STARTED means the stage has not been started.

RUNNING = StageStatus.RUNNING

STAGE_STATUS_RUNNING means the stage has begun execution.

UNSPECIFIED = StageStatus.UNSPECIFIED

STAGE_STATUS_UNSPECIFIED means unknown stage status.

name: str | None
value: int
class cloudvision.api.arista.changecontrol.v1.StepInfo(name: str | None = <PLACEHOLDER>, status: ~cloudvision.api.arista.changecontrol.v1.StepStatus = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, message: str | None = <PLACEHOLDER>)[source]

Bases: Message

StepInfo contains the status details of an action step.

error: str | None = <PLACEHOLDER>

error captures any error that occurred.

message: str | None = <PLACEHOLDER>

message represents any relevant information associated with the step.

name: str | None = <PLACEHOLDER>

name represents the name of the step.

status: StepStatus = <PLACEHOLDER>

status represents the present execution status of the step.

class cloudvision.api.arista.changecontrol.v1.StepStatus(value: int)[source]

Bases: Enum

StepStatus defines the possible execution statuses of a step within an action.

FAILED = StepStatus.FAILED

STEP_STATUS_FAILED represents that the step has failed its execution.

FINISHED = StepStatus.FINISHED

STEP_STATUS_FINISHED represents that the step has finished execution.

NOT_STARTED = StepStatus.NOT_STARTED

STEP_STATUS_NOT_STARTED represents that the step has not started execution.

RUNNING = StepStatus.RUNNING

STEP_STATUS_RUNNING represents that the step is under execution.

SKIPPED = StepStatus.SKIPPED

STEP_STATUS_SKIPPED represents that the step has been skipped from execution.

UNSPECIFIED = StepStatus.UNSPECIFIED

STEP_STATUS_UNSPECIFIED represents an unspecified state for a step within an action.

name: str | None
value: int
class cloudvision.api.arista.changecontrol.v1.TimestampFlag(value: ~datetime.datetime = <PLACEHOLDER>, notes: str | None = <PLACEHOLDER>, time: ~datetime.datetime = <PLACEHOLDER>, user: str | None = <PLACEHOLDER>)[source]

Bases: Message

TimestampFlag holds the configuration of a timestamp flag plus some information about when and by whom is was set.

notes: str | None = <PLACEHOLDER>

notes are any notes associated with the setting of the flag.

time: datetime = <PLACEHOLDER>

time is the time at which the flag was last updated.

user: str | None = <PLACEHOLDER>

user is the user by which the flag was last updated.

value: datetime = <PLACEHOLDER>

value is the value of the flag (some timestamp).

class cloudvision.api.arista.changecontrol.v1.TimestampFlagConfig(value: ~datetime.datetime = <PLACEHOLDER>, notes: str | None = <PLACEHOLDER>)[source]

Bases: Message

TimestampFlagConfig is used to set a flag on a change control that takes a timestamp value (e.g. schedule/unschedule).

notes: str | None = <PLACEHOLDER>

notes are the notes associated with the flag value.

value: datetime = <PLACEHOLDER>

value is the value of the flag (some timestamp).