imagestatus.v1

Top

arista/imagestatus.v1/imagestatus.proto

ComplianceStatus

ComplianceStatus indicates compliance status for software image, terminattr and extensions.

Field NameTypeDescription
software_image_compliance_codeSoftwareComplianceCode

software_image_compliance_code is the compliance code for images.

terminattr_compliance_codeSoftwareComplianceCode

terminattr_compliance_code is the compliance code for TerminAttr.

extensions_compliance_codeSoftwareComplianceCode

extensions_compliance_code is the compliance code for extensions.

ComplianceStatusBySup

ComplianceStatusBySup is a map that indicates the compliance code for each supervisor.

Field NameTypeDescription
valuesComplianceStatusBySup.ValuesEntry[…]

values is the mapping of supervisor type to compliance code.

ComplianceStatusBySup.ValuesEntry

Field NameTypeDescription
keystring

valueComplianceStatus

Extension

Extension provides information of the running/designed extensions.

Field NameTypeDescription
namegoogle.protobuf.StringValue

name is the name of the extension.

versiongoogle.protobuf.StringValue

version is the version of the extension.

reboot_requiredgoogle.protobuf.BoolValue

reboot_required indicates whether applying/deleting this extension

would result in a reboot.

presentgoogle.protobuf.BoolValue

present indicates whether the extension is present in the device

or not.

installedExtensionInstallStatus

installed indicates whether the extension is installed, not

installed or force installed.

status_detailgoogle.protobuf.StringValue

status_detail gives the details behind installation of the extension.

is_embeddedgoogle.protobuf.BoolValue

is_embedded indicates whether the extension is embedded in the EOS swi

or not.

ExtensionDiff

ExtensionDiff is the diff for the running/designed extensions.

Field NameTypeDescription
codeDiffOp

code indicates the operation performed to get from one side of the diff

to the other.

aExtension

a is the extension on the a side (left hand side).

bExtension

b is the extension on the b side (right hand side).

ExtensionDiffs

ExtensionDiffs is a list of extension diff information in the order they will be applied.

Field NameTypeDescription
valuesExtensionDiff[…]

values is an ordered list of extension diffs applied to the device.

ExtensionDiffsBySup

ExtensionDiffsBySup is the extension diff information for each supervisor.

Field NameTypeDescription
valuesExtensionDiffsBySup.ValuesEntry[…]

values is the mapping of supervisor type to extension diff.

ExtensionDiffsBySup.ValuesEntry

Field NameTypeDescription
keystring

valueExtensionDiffs

Extensions

Extensions provides an ordered list of running/designed extensions.

Field NameTypeDescription
valuesExtension[…]

values represents extension information.

ImageError

ImageError wraps ErrorCode enum with a reason string.

Field NameTypeDescription
skugoogle.protobuf.StringValue

sku represents the name of the sku.

error_codeErrorCode

error_code is the error code.

error_msggoogle.protobuf.StringValue

error_msg provides a description of the error.

ImageErrors

ImageErrors is the list of errors reported by CVP when handling image validations.

Field NameTypeDescription
valuesImageError[…]

values is a list of image errors.

ImageMetadata

ImageMetadata provides information regarding the software image.

Field NameTypeDescription
versiongoogle.protobuf.StringValue

version is the version of the EOS image.

releasegoogle.protobuf.StringValue

release is the release name of the EOS image.

flavorgoogle.protobuf.StringValue

flavor is the flavor information of the EOS image.

default flavor is DEFAULT. Other flavors can be DPE, 2GB, etc.

variantgoogle.protobuf.StringValue

variant is the variant information of the EOS image.

possible values: INT or US.

archgoogle.protobuf.StringValue

arch is the architecture of the EOS image.

ImageSummary

ImageSummary represents device image summary.

Field NameTypeDescription
skugoogle.protobuf.StringValue

sku indicates the top-level sku or model number.

running_image_update_timegoogle.protobuf.Timestamp

running_image_update_time is the most recent timestamp at which one of

running image side properties is updated.

designed_image_update_timegoogle.protobuf.Timestamp

designed_image_update_time is the most recent timestamp at which one of

designed image side properties is updated.

dual_supgoogle.protobuf.BoolValue

dual_sup indicates if a device is a dual supervisor.

active_slotgoogle.protobuf.Int32Value

active_slot indicates the physical slot number for the the active

supervisor.

standby_slotgoogle.protobuf.Int32Value

standby_slot indicates the physical slot number for the standby

supervisor.

software_image_diffSoftwareImageDiffsBySup

software_image_diff indicates the image diff for each supervisor.

terminattr_diffTerminAttrDiffsBySup

terminattr_diff indicates the terminattr diff for each supervisor.

extensions_diffExtensionDiffsBySup

extensions_diff indicates the extension diff for each supervisor.

compliance_statusSoftwareComplianceCode

compliance_status is the aggregated compliance status (including both

active/standby and image/TA/extension compliance).

complianceComplianceStatusBySup

compliance provides compliance information for each supervisor.

reboot_requiredRebootRequired

reboot_required indicates whether a reboot is required if the designed

image is pushed to the device.

digestgoogle.protobuf.StringValue

digest is the digest of the image summary. It can use SHA-256 hash

algorithm for example. It is computed by stringifying the

software_image_diff, terminattr_diff and extensions_diff and computing the

hash.

ImageWarning

ImageWarning wraps WarningCode enum with a reason string.

Field NameTypeDescription
skugoogle.protobuf.StringValue

sku represents the name of the sku.

warning_codeWarningCode

warning_code is the warning code.

warning_msggoogle.protobuf.StringValue

warning_msg provides a description of the warning.

ImageWarnings

ImageWarnings is the list of warnings reported by CVP when handling image validations.

Field NameTypeDescription
valuesImageWarning[…]

values is a list of image warnings.

RebootRequired

RebootRequired indicates the reboot information per software image, terminattr and extension for the switch as a whole.

Field NameTypeDescription
software_image_reboot_requiredgoogle.protobuf.BoolValue

software_image_reboot_required indicates whether reboot is required

for the software image being applied.

terminattr_reboot_requiredgoogle.protobuf.BoolValue

terminattr_reboot_required indicates whether reboot is required

for the terminattr being applied/deleted.

extension_reboot_requiredgoogle.protobuf.BoolValue

extension_reboot_required indicates whether reboot is required

for the extensions being applied/deleted.

SoftwareImage

SoftwareImage provides information of the running/designed EOS image.

Field NameTypeDescription
namegoogle.protobuf.StringValue

name is the name of the EOS image.

versiongoogle.protobuf.StringValue

version is the version of the EOS image.

metadataImageMetadata

metadata is the metadata of EOS image.

SoftwareImageDiff

SoftwareImageDiff is the diff for the running/designed images.

Field NameTypeDescription
codeDiffOp

code indicates the operation performed to get from one side of the diff

to the other.

aSoftwareImage

a is the software image on the a side (left hand side).

bSoftwareImage

b is the software image on the b side (right hand side).

SoftwareImageDiffsBySup

SoftwareImageDiffsBySup is software image diff information for each supervisor.

Field NameTypeDescription
valuesSoftwareImageDiffsBySup.ValuesEntry[…]

values is the mapping of supervisor type to image diff.

SoftwareImageDiffsBySup.ValuesEntry

Field NameTypeDescription
keystring

valueSoftwareImageDiff

Summary

Summary represents the device image summary.

Field NameTypeDescription
keySummaryKey

key represents the image summary key.

summaryImageSummary

summary is the image diff summary.

errorsImageErrors

errors are the image errors encountered while validating the image. These are

displayed on the change control review page (for changes made outside the workspace).

warningsImageWarnings

warnings are the image warnings encountered while validating the image. These are

displayed on the change control review page (for changes made outside the workspace).

SummaryKey

SummaryKey uniquely identifies a device summary request.

Field NameTypeDescription
device_idgoogle.protobuf.StringValue

device_id is the serial number of the device

TerminAttrDiffsBySup

TerminAttrDiffsBySup is the terminattr diff information for each supervisor.

Field NameTypeDescription
valuesTerminAttrDiffsBySup.ValuesEntry[…]

values is the mapping of supervisor type to terminattr diff.

TerminAttrDiffsBySup.ValuesEntry

Field NameTypeDescription
keystring

valueExtensionDiff

DiffOp

DiffOp represents the operation performed to get from one side of the diff to the other.

NameNumberDescription
DIFF_OP_UNSPECIFIED0

DIFF_OP_UNSPECIFIED indicates op code is unspecified.

DIFF_OP_NOP1

DIFF_OP_NOP indicates no change.

DIFF_OP_ADD2

DIFF_OP_ADD is an addition of a software.

DIFF_OP_DELETE3

DIFF_OP_DELETE is deletion of a software.

DIFF_OP_CHANGE4

DIFF_OP_CHANGE is an update to the software.

ErrorCode

ErrorCode indicates errors produced during image validations.

NameNumberDescription
ERROR_CODE_UNSPECIFIED0

ERROR_CODE_UNSPECIFIED indicates error code is unspecified.

ERROR_CODE_SUPPORT_NOT_INTRODUCED1

ERROR_CODE_SUPPORT_NOT_INTRODUCED represents case where the given EOS version does

not support the SKU.

Deprecated - use ERROR_CODE_EOS_SUPPORT_NOT_INTRODUCED

ERROR_CODE_SUPPORT_REMOVED2

ERROR_CODE_SUPPORT_REMOVED represents case where the given EOS version no longer

supports the SKU.

Deprecated - use ERROR_CODE_EOS_SUPPORT_REMOVED

ERROR_CODE_DEVICE_UNREACHABLE3

ERROR_CODE_DEVICE_UNREACHABLE represents the case where the device

is unreachable during a compliance computation.

ERROR_CODE_VALIDATION_FAILED4

ERROR_CODE_VALIDATION_FAILED represents case where the validations checks

failed.

ERROR_CODE_GET_PROPOSED_IMAGE_INFO_FAILED5

ERROR_CODE_GET_PROPOSED_IMAGE_INFO_FAILED represents case where we are

unable to get proposed image information for a device.

ERROR_CODE_GET_RUNNING_IMAGE_INFO_FROM_ACTIVE_SUPERVISOR_FAILED6

ERROR_CODE_GET_RUNNING_IMAGE_INFO_FROM_ACTIVE_SUPERVISOR_FAILED represents case where we

fail to get running image information from an active supervisor.

ERROR_CODE_GET_RUNNING_IMAGE_INFO_FROM_PEER_SUPERVISOR_FAILED7

ERROR_CODE_GET_RUNNING_IMAGE_INFO_FROM_PEER_SUPERVISOR_FAILED represents case when we

fail to get information from peer supervisor.

ERROR_CODE_EOS_TA_ARCHITECTURE_INCOMPATIBLE8

ERROR_CODE_EOS_TA_ARCHITECTURE_INCOMPATIBLE represents the case where EOS architecture and

TerminAttr architecture are incompatible.

ERROR_CODE_TA_CV_INCOMPATIBLE9

ERROR_CODE_TA_CV_INCOMPATIBLE represents the case where TerminAttr is incompatible with

CloudVision; i.e., the TerminAttr version is below CloudVision’s minimum supported version.

ERROR_CODE_EOS_CV_INCOMPATIBLE10

ERROR_CODE_EOS_CV_INCOMPATIBLE represents the case where the EOS version is incompatible with

CloudVision; i.e., the EOS version is outside of CloudVision’s supported range of versions.

ERROR_CODE_EOS_SUPPORT_NOT_INTRODUCED11

ERROR_CODE_EOS_SUPPORT_NOT_INTRODUCED represents the case where the given EOS version does

not support the SKU.

ERROR_CODE_EOS_SUPPORT_REMOVED12

ERROR_CODE_EOS_SUPPORT_REMOVED represents the case where the given EOS version no longer

supports the SKU.

ERROR_CODE_PHYSICAL_DEVICE_EOS_INCOMPATIBLE13

ERROR_CODE_PHYSICAL_DEVICE_EOS_INCOMPATIBLE represents the case where the physical device

does not support the given EOS type.

ERROR_CODE_TA_EMBEDDEDEXT_INCOMPATIBLE14

ERROR_CODE_TA_EMBEDDEDEXT_INCOMPATIBLE represents the case where the extension TerminAttr

version is lower than the embedded TerminAttr version in SWI.

ExtensionInstallStatus

ExtensionInstallStatus indicates whether an extension is installed, not installed or force installed.

NameNumberDescription
EXTENSION_INSTALL_STATUS_UNSPECIFIED0

EXTENSION_INSTALL_STATUS_UNSPECIFIED indicates extensions install status is unspecified.

EXTENSION_INSTALL_STATUS_NOT_INSTALLED1

EXTENSION_INSTALL_STATUS_NOT_INSTALLED indicates extension is not installed on the device.

EXTENSION_INSTALL_STATUS_INSTALLED2

EXTENSION_INSTALL_STATUS_INSTALLED indicates extension is installed on the device.

EXTENSION_INSTALL_STATUS_FORCE_INSTALLED3

EXTENSION_INSTALL_STATUS_FORCE_INSTALLED indicates extension is force installed on

device.

SoftwareComplianceCode

SoftwareComplianceCode indicates possible compliance status.

NameNumberDescription
SOFTWARE_COMPLIANCE_CODE_UNSPECIFIED0

SOFTWARE_COMPLIANCE_CODE_UNSPECIFIED indicates compliance code is unspecified.

SOFTWARE_COMPLIANCE_CODE_IN_SYNC1

SOFTWARE_COMPLIANCE_CODE_IN_SYNC indicates designed and running images/extensions

are identical.

SOFTWARE_COMPLIANCE_CODE_OUT_OF_SYNC2

SOFTWARE_COMPLIANCE_CODE_OUT_OF_SYNC indicates designed and running images/extensions

are not identical.

WarningCode

WarningCode indicates warnings produced during image validations.

NameNumberDescription
WARNING_CODE_UNSPECIFIED0

WARNING_CODE_UNSPECIFIED indicates warning code is unspecified.

WARNING_CODE_NOT_APPLICABLE1

WARNING_CODE_NOT_APPLICABLE represents cases where EOS <-> SKU/TA compatibility

is not applicable for non physical switches like vEos.

WARNING_CODE_SKUINFO_UNAVAILABLE2

WARNING_CODE_SKUINFO_UNAVAILABLE represents case where

information about certain skus is missing.

WARNING_CODE_DEVICE_SKU_UNAVAILABLE3

WARNING_CODE_DEVICE_SKU_UNAVAILABLE represents unavailability of skus for an EOS Device.

WARNING_CODE_SWI_UNKNOWN4

WARNING_CODE_SWI_UNKNOWN represents cases where EOS version is not found in release database.

WARNING_CODE_TA_EOS_INCOMPATIBLE5

WARNING_CODE_TA_EOS_INCOMPATIBLE represents cases where TA and EOS are not compatible.

TA is lower than embedded TA in swi or given TA is unsupported by the EOS.

WARNING_CODE_TA_CV_INCOMPATIBLE6

WARNING_CODE_TA_CV_INCOMPATIBLE represents cases where TA is incompatible with CV.

TA is lower than minimum supported TA on CV.

Deprecated - use ERROR_CODE_TA_CV_INCOMPATIBLE.

WARNING_CODE_EOS_CV_INCOMPATIBLE7

WARNING_CODE_EOS_CV_INCOMPATIBLE represents cases where EOS is no longer or not yet

supported by CV. Given EOS is outside range of CV’s minimum and maximum EOS.

Deprecated - use ERROR_CODE_EOS_CV_INCOMPATIBLE.

WARNING_CODE_EOS_ARCH_UNKNOWN8

WARNING_CODE_EOS_ARCH_UNKNOWN represents cases where the specified architecture is

not valid for EOS.

WARNING_CODE_TA_EMBEDDEDEXT_INCOMPATIBLE9

WARNING_CODE_TA_EMBEDDEDEXT_INCOMPATIBLE represents cases where TA extension is lower

in version than embedded TA in SWI.

WARNING_CODE_ARCH_INCOMPATIBLE10

WARNING_CODE_ARCH_INCOMPATIBLE represents cases where EOS arch and TA arch are

different. Deprecated.

WARNING_CODE_EOS_END_OF_LIFE_DATE_PASSED11

WARNING_CODE_EOS_END_OF_LIFE_DATE_PASSED represents cases where the given EOS has passed

its end of life date.

WARNING_CODE_SUPPORT_NOT_INTRODUCED12

WARNING_CODE_SUPPORT_NOT_INTRODUCED represents cases where the given EOS version does

not support the SKUs.

WARNING_CODE_SUPPORT_REMOVED13

WARNING_CODE_SUPPORT_REMOVED represents cases where the given EOS version no longer

supports the SKUs.

WARNING_CODE_RUNNING_TA_BELOW_MIN_SUPPORTED_VERSION14

WARNING_CODE_RUNNING_TA_BELOW_MIN_SUPPORTED_VERSION represents cases where the running

TerminAttr version is below CloudVision’s minimum supported version.

Top

arista/imagestatus.v1/services.gen.proto

SummaryRequest

Field NameTypeDescription
keySummaryKey

Key uniquely identifies a Summary instance to retrieve.

This value must be populated.

timegoogle.protobuf.Timestamp

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.

SummaryResponse

Field NameTypeDescription
valueSummary

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.

timegoogle.protobuf.Timestamp

Time carries the (UTC) timestamp of the last-modification of the

Summary instance in this response.

SummaryStreamRequest

Field NameTypeDescription
partial_eq_filterSummary[…]

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.

timearista.time.TimeBounds

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 Summary at end.

* Each Summary response is fully-specified (all fields set).

* start: Returns the state of each Summary at start, followed by updates until now.

* Each Summary response at start is fully-specified, but updates may be partial.

* start and end: Returns the state of each Summary at start, followed by updates

until end.

* Each Summary response at start is fully-specified, but updates until end may

be partial.

This field is not allowed in the Subscribe RPC.

SummaryStreamResponse

Field NameTypeDescription
valueSummary

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.

timegoogle.protobuf.Timestamp

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

typearista.subscriptions.Operation

Operation indicates how the Summary 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.

SummaryService

Method NameRequest TypeResponse TypeDescription
GetOneSummaryRequestSummaryResponse

GetAllSummaryStreamRequestSummaryStreamResponse stream

SubscribeSummaryStreamRequestSummaryStreamResponse stream