ssm

package
v1.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 6, 2026 License: MIT Imports: 38 Imported by: 0

README

Systems Manager

Parity grade: A · SDK aws-sdk-go-v2/service/ssm@v1.77.0 · last audited 2026-09-24 (a72029cb1)

Coverage

Metric Value
PARITY entries audited 105 (104 ok, 1 gap)
Feature families 21 (21 ok)
Known gaps 24
Deferred items 0
Resource leaks clean
Known gaps
  • "RejectedPatchesAction (BLOCK/ALLOW_AS_DEPENDENCY) only diverges via patch-dependency install history this backend's synthetic catalogue doesn't model (recomputed fresh per run, not tracked incrementally) -- structural, needs a real dependency graph and incremental (not recomputed) instance patch history. PatchBaseline.GlobalFilters remains round-trip-only, same class."
  • "ServiceSetting.LastModifiedUser (the ARN of the last-writing caller) can't be populated -- this emulator has no caller-identity/SigV4-principal tracking."
  • GetInventory's Aggregators/ResultAttributes are unmodeled (needs an aggregation engine).
  • "GetInventorySchema's real per-type Attributes ([]InventoryItemAttribute) aren't modeled -- AWS hasn't published the exact attribute list for the 13 built-in types outside web docs, so fabricating names would invent wire content rather than verify it."
  • "DeleteInventoryInput.SchemaDeleteOption (DisableSchema/DeleteSchema) has nothing distinct to act on: this backend tracks inventory items only, not versioned schema state."
  • "ValidateCloudConnector can't make a real outbound Azure call (no Azure tenant, credentials, or egress in this emulator) -- ValidationFindings are deterministically derived from the connector's own stored Configuration instead, an inherent sandbox constraint like KMS's local HSM emulation."
  • "CreateMaintenanceWindow/UpdateMaintenanceWindow's StartDate/EndDate/ScheduleTimezone/ ScheduleOffset are stored and round-tripped but not evaluated -- this backend's DescribeMaintenanceWindowSchedule/Executions synthesize a single always-on execution and don't even honor Enabled, so factoring in a date range needs a real scheduler this backend doesn't have."
  • "DeleteResourceDataSync's SyncType is unobservable since resourceDataSyncsStore keys solely by SyncName. ListResourceDataSync's ResourceDataSyncItem.LastSuccessfulSyncTime/ LastSyncStatusMessage/SyncLastModifiedTime and SyncSource.State (found 2026-09-18, structfielddiff) are also unmodeled -- a sync is created once at LastStatus 'InProgress' and never advances (no sync-completion janitor/reconciler), so there is no real completion event to source a success timestamp, status message, or state string from."
  • "ssm's commands family has no per-plugin execution model (a whole document runs as one synchronous unit) -- CommandPlugins/PluginName/ResponseCode, AlarmConfiguration/CloudWatchOutputConfig/NotificationConfig/TriggeredAlarms (no CloudWatch-alarm/notification infra), and DocumentHash/DocumentHashType remain unmodeled."
  • "GetParameter/GetParameters/GetParametersByPath's SourceResult (advanced-parameter source resolution) and GetParameterHistory/DescribeParameters' LastModifiedUser (no caller-identity infra) remain unmodeled."
  • "DocumentDescription's review-approval workflow (ApprovedVersion/PendingReviewVersion/ ReviewInformation/ReviewStatus) and Category/CategoryEnum remain entirely unmodeled -- no review state machine exists in this backend. Author/Owner need the same caller-identity infra ServiceSetting.LastModifiedUser lacks; GetDocumentOutput. AttachmentsContent needs a real S3-backed object store this backend doesn't have."
  • "Association/AssociationDescription's AlarmConfiguration/TriggeredAlarms need CloudWatch-alarm infra this backend lacks; TargetLocations/TargetMaps are alternate multi-account/key-value targeting schemes this backend's Targets-only model doesn't support; ScheduleOffset/LastExecutionDate/LastSuccessfulExecutionDate need a real scheduler (associations run synchronously on demand, not on a cron loop)."
  • "StartAutomationExecutionInput's AlarmConfiguration/TargetLocations/ TargetMaps/TargetParameterName/Targets remain unmodeled (this backend runs one synchronous single-account/region execution, nothing for multi-target fan-out to plug into); SendAutomationSignal's Payload is stored but not consulted since this backend has no per-step Waiting/InProgress state (every step goes straight to Success)."
  • "RegisterTaskWithMaintenanceWindowInput/UpdateMaintenanceWindowTaskInput AlarmConfiguration needs CloudWatch-alarm infrastructure this backend lacks."
  • "StartChangeRequestExecution AutoApprove/ChangeDetails/ScheduledEndTime are unmodeled: they need a change-template approval workflow (no review state machine exists)."
  • "GetMaintenanceWindowExecutionTaskInvocationOutput.Parameters (the actual command/automation parameters used for one invocation) is unmodeled -- this backend has no per-invocation parameter snapshot, only task-level defaults."
  • "DescribePatchPropertiesOutput.Properties aggregates baseline name/OS pairs instead of listing distinct catalogue values of the requested Property, per its own doc comment -- the real per-Property map-key convention for the untyped []map[string]string output can't be verified from the pinned SDK source, so fixing it risks fabricating a differently-wrong shape."
  • "GetDeployablePatchSnapshotForInstanceInput.BaselineOverride is unmodeled -- this backend's snapshot response is already synthetic, so honoring a second, non-registered baseline needs real effective-patch computation this backend doesn't have."
  • "DescribePatchGroupStateOutput is missing 6 real *int32 members (InstancesWithAvailableSecurityUpdates and 5 others) -- these need per-instance security-update-specific and pending-reboot compliance tracking InstancePatchState doesn't carry (only FailedCount/InstalledCount/MissingCount)."
  • "DescribeAvailablePatches' PATCH_ID filter key remains unhonored -- real AWS's Patch.Id is a distinct opaque identifier from the KB number/Name this synthetic catalogue already models, and fabricating one would invent data with nothing real to verify it against."
  • "ListDocuments' Owner filter honours Amazon/Self/ThirdParty (built-ins are the AWS- named documents, owner derived from the name); Public/Private stay unfiltered -- no shared-with-account visibility model distinguishes them, and CreateDocument does not reserve the AWS- prefix, so a user-created AWS- document would read as Amazon-owned."
  • "ListCommandInvocationsInput.Details is declared but inert -- real AWS only populates CommandInvocation.CommandPlugins (per-plugin status/output) when Details=true, and this backend has no CommandPlugin type or per-plugin execution state."
  • "StartExecutionPreviewInput.DocumentVersion is declared but inert -- this backend's execution preview never resolves document content by version, and neither preview output type echoes the version back on the real wire either, so there is no observable point to prove this against."
  • "ListOpsItemEvents' OpsItemEventSummary.DetailType and ListOpsItemRelatedItems' OpsItemRelatedItem.CreatedBy/LastModifiedBy/LastModifiedTime (found 2026-09-18, list-summary-shapes sweep) remain unmodeled -- DetailType has no real backing concept in this backend's two hardcoded create/update event records to source a value from without fabricating one, and CreatedBy/LastModifiedBy need the same caller-identity infra ServiceSetting.LastModifiedUser lacks; a related item also has no update path so LastModifiedTime would just duplicate CreatedTime. OpsItemRelatedItem.OpsItemId and CreatedTime themselves WERE fixed this pass (previously dropped despite being trivially sourced from the request/creation time)."

More

Documentation

Index

Constants

View Source
const (
	DocumentTypeCommand    = "Command"
	DocumentTypeAutomation = "Automation"
	DocumentTypePolicy     = "Policy"
	DocumentTypeSession    = "Session"
)

Document type constants.

View Source
const (
	StringType       = "String"
	StringListType   = "StringList"
	SecureStringType = "SecureString"
)

Variables

View Source
var (
	ErrInvalidPermissionType = errors.New("InvalidPermissionType")
	ErrInvalidOption         = errors.New("InvalidOptionException")
)
View Source
var (
	ErrParameterNotFound            = errors.New("ParameterNotFound")
	ErrParameterVersionNotFound     = errors.New("ParameterVersionNotFound")
	ErrParameterAlreadyExists       = errors.New("ParameterAlreadyExists")
	ErrInvalidKeyID                 = errors.New("InvalidKeyId")
	ErrCiphertextTooShort           = errors.New("ciphertext too short")
	ErrValidationException          = errors.New("ValidationException")
	ErrDocumentAlreadyExists        = errors.New("DocumentAlreadyExists")
	ErrDocumentNotFound             = errors.New("DocumentNotFound")
	ErrInvalidDocumentVersion       = errors.New("InvalidDocumentVersion")
	ErrDuplicateDocumentVersionName = errors.New("DuplicateDocumentVersionName")
	ErrCommandNotFound              = errors.New("CommandNotFound")
	// ErrInvalidActivationID is returned when an ActivationId doesn't match any
	// known activation (DeleteActivation). "ActivationNotFound" is not a real
	// AWS SSM error code — DeleteActivation's own deserializer
	// (ssm@v1.73.4 deserializers.go) models InvalidActivationId for this case.
	ErrInvalidActivationID                = errors.New("InvalidActivationId")
	ErrAssociationNotFound                = errors.New("AssociationDoesNotExist")
	ErrInvalidAssociationVersion          = errors.New("InvalidAssociationVersion")
	ErrMaintenanceWindowNotFound          = errors.New("DoesNotExistException")
	ErrMaintenanceWindowExecutionNotFound = errors.New("DoesNotExistException")
	ErrOpsItemNotFound                    = errors.New("OpsItemNotFoundException")
	ErrOpsMetadataNotFound                = errors.New("OpsMetadataNotFoundException")
	ErrPatchBaselineNotFound              = errors.New("DoesNotExistException")
	ErrOpsMetadataAlreadyExists           = errors.New("OpsMetadataAlreadyExistsException")
	ErrHierarchyLevelLimitExceeded        = errors.New("HierarchyLevelLimitExceededException")
	ErrParameterMaxVersionLimitExceeded   = errors.New("ParameterMaxVersionLimitExceeded")
	ErrIdempotentParameterMismatch        = errors.New("IdempotentParameterMismatch")
	// ErrAccessRequestNotFound is returned when GetAccessToken is called with
	// an AccessRequestId that was never created by StartAccessRequest.
	ErrAccessRequestNotFound = errors.New("ResourceNotFoundException")
	// ErrPatchBaselineInUse is returned by DeletePatchBaseline when the
	// baseline is still registered to one or more patch groups.
	// ResourceInUseException is DeletePatchBaseline's own declared exception
	// for exactly this case (ssm@v1.73.4 deserializers.go), matching the API
	// reference doc comment: error returned if an attempt is made to delete
	// a patch baseline that is registered for a patch group.
	ErrPatchBaselineInUse = errors.New("ResourceInUseException")
	// ErrMaintenanceWindowTargetInUse is returned by
	// DeregisterTargetFromMaintenanceWindow when Safe=true and the target is
	// still referenced by a registered task. TargetInUseException is the
	// real declared exception (ssm@v1.77.0 types/errors.go).
	ErrMaintenanceWindowTargetInUse = errors.New("TargetInUseException")
	// ErrOpsItemRelatedItemAssociationNotFound is returned by
	// DisassociateOpsItemRelatedItem when AssociationId doesn't match any
	// related item on the OpsItem. OpsItemRelatedItemAssociationNotFoundException
	// is the op's own declared exception (ssm@v1.77.0 deserializers.go).
	ErrOpsItemRelatedItemAssociationNotFound = errors.New("OpsItemRelatedItemAssociationNotFoundException")
)
View Source
var (
	ErrResourceDataSyncNotFound    = errors.New("ResourceDataSyncNotFoundException")
	ErrAutomationExecutionNotFound = errors.New("AutomationExecutionNotFoundException")
	ErrExecutionPreviewNotFound    = errors.New("ResourceNotFoundException")
	// ErrResourcePolicyNotFound and ErrResourcePolicyConflict are the two real
	// exceptions declared for PutResourcePolicy/DeleteResourcePolicy
	// (ssm@v1.73.4 types/errors.go) around a PolicyId/PolicyHash mismatch.
	ErrResourcePolicyNotFound = errors.New("ResourcePolicyNotFoundException")
	ErrResourcePolicyConflict = errors.New("ResourcePolicyConflictException")
	ErrResourceDataSyncExists = errors.New("ResourceDataSyncAlreadyExistsException")
)
View Source
var (
	// ErrDocumentVersionNotFound is returned when a document version is not found.
	ErrDocumentVersionNotFound = errors.New("InvalidDocumentVersion")
	// ErrInvalidAggregator is returned by ListNodesSummary when Aggregators is
	// missing or empty. InvalidAggregatorException is one of the op's own
	// declared exceptions (awsAwsjson11_deserializeOpErrorListNodesSummary,
	// ssm@v1.73.4 deserializers.go), not the generic ValidationException.
	ErrInvalidAggregator = errors.New("InvalidAggregatorException")
	// ErrDocumentStillShared is returned by DeleteDocument when the document
	// still has active AccountIdsToAdd shares. InvalidDocumentOperation is one
	// of DeleteDocument's own declared exceptions (ssm@v1.73.4
	// deserializers.go:2225-2226), whose message reads: you attempted to
	// delete a document while it is still shared, and must stop sharing it
	// first.
	ErrDocumentStillShared = errors.New("InvalidDocumentOperation")
	// ErrInvalidResourceID is returned by the resource-tagging ops
	// (AddTagsToResource/RemoveTagsFromResource/ListTagsForResource) when the
	// target resource doesn't exist. Their own deserializers model
	// InvalidResourceId for this, not the per-resource NotFound sentinel
	// (e.g. ErrParameterNotFound) that GetParameter/PutParameter use.
	ErrInvalidResourceID = errors.New("InvalidResourceId")
	// ErrParameterNamePattern is returned by PutParameter when Name fails its
	// length/character/reserved-prefix/hierarchy checks. ParameterPatternMismatchException
	// is PutParameter's own declared exception for this
	// (ssm@v1.73.4 deserializers.go:13901), not the generic ValidationException.
	ErrParameterNamePattern = errors.New("ParameterPatternMismatchException")
	// ErrUnsupportedParameterType is returned by PutParameter when Type isn't
	// String, StringList, or SecureString. UnsupportedParameterType is
	// PutParameter's own declared exception for this
	// (ssm@v1.73.4 deserializers.go:13910).
	ErrUnsupportedParameterType = errors.New("UnsupportedParameterType")
	// ErrInvalidAllowedPattern is returned by PutParameter when AllowedPattern
	// is malformed or Value doesn't match it. InvalidAllowedPatternException is
	// PutParameter's own declared exception for this
	// (ssm@v1.73.4 deserializers.go:13880).
	ErrInvalidAllowedPattern = errors.New("InvalidAllowedPatternException")
)
View Source
var (
	ErrInvalidNextToken           = errors.New("InvalidNextToken")
	ErrInvalidFilterKey           = errors.New("InvalidFilterKey")
	ErrInvalidFilterValue         = errors.New("InvalidFilterValue")
	ErrOpsMetadataInvalidArgument = errors.New("OpsMetadataInvalidArgumentException")
	ErrOpsItemInvalidParameter    = errors.New("OpsItemInvalidParameterException")
)
View Source
var ErrCloudConnectorNotFound = errors.New("ResourceNotFoundException")

ErrCloudConnectorNotFound is returned when a CloudConnectorId does not match any stored cloud connector. It maps to the SDK's generic ResourceNotFoundException (no CloudConnector-specific error type exists).

View Source
var ErrNilAppContext = errors.New("ssm: nil app context")

ErrNilAppContext is returned when Init is called with a nil AppContext.

View Source
var ErrUnknownOperation = errors.New("UnknownOperationException")

Functions

func UnixTimeFloat

func UnixTimeFloat(t time.Time) float64

func WithRegion

func WithRegion(ctx context.Context, region string) context.Context

WithRegion returns ctx carrying the region SSM resolves parameters in.

Types

type AccessRequest added in v1.2.0

type AccessRequest struct {
	AccessRequestID string                `json:"AccessRequestId"`
	Reason          string                `json:"Reason"`
	Status          string                `json:"Status"`
	Targets         []AccessRequestTarget `json:"Targets"`
	CreatedAt       float64               `json:"CreatedAt"`
}

AccessRequest is a stored just-in-time node access request created by StartAccessRequest and consumed by GetAccessToken. Real AWS routes approval through configured approvers; this emulator auto-approves every request immediately since no approval workflow exists to model, and documents that choice rather than leaving GetAccessToken as a dead end.

type AccessRequestTarget added in v1.2.0

type AccessRequestTarget struct {
	Key    string   `json:"Key"`
	Values []string `json:"Values"`
}

AccessRequestTarget names a managed node targeted by a just-in-time access request. Matches the SDK's generic types.Target{Key,Values} shape.

type AccountSharingInfo added in v1.5.0

type AccountSharingInfo struct {
	AccountID             string `json:"AccountId,omitempty"`
	SharedDocumentVersion string `json:"SharedDocumentVersion,omitempty"`
}

AccountSharingInfo is the wire shape of one DescribeDocumentPermissionOutput. AccountSharingInfoList entry (aws-sdk-go-v2/service/ssm@v1.73.4 types.AccountSharingInfo: AccountId, SharedDocumentVersion).

type Activation

type Activation struct {
	ActivationID        string  `json:"ActivationId"`
	ActivationCode      string  `json:"ActivationCode"`
	Description         string  `json:"Description,omitempty"`
	DefaultInstanceName string  `json:"DefaultInstanceName,omitempty"`
	IamRole             string  `json:"IamRole"`
	Tags                []Tag   `json:"Tags,omitempty"`
	ExpirationDate      float64 `json:"ExpirationDate"`
	CreatedDate         float64 `json:"CreatedDate"`
	RegistrationLimit   int32   `json:"RegistrationLimit"`
	RegistrationsCount  int32   `json:"RegistrationsCount"`
	Expired             bool    `json:"Expired"`
}

Activation represents an SSM activation for managed instances.

type AddTagsToResourceInput

type AddTagsToResourceInput struct {
	ResourceType string `json:"ResourceType"`
	ResourceID   string `json:"ResourceId"`
	Tags         []Tag  `json:"Tags"`
}

AddTagsToResourceInput is the request payload for AddTagsToResource.

type AssociateOpsItemRelatedItemInput

type AssociateOpsItemRelatedItemInput struct {
	OpsItemID       string `json:"OpsItemId"`
	AssociationType string `json:"AssociationType"`
	ResourceType    string `json:"ResourceType"`
	ResourceURI     string `json:"ResourceUri"`
}

AssociateOpsItemRelatedItemInput is the request payload for AssociateOpsItemRelatedItem.

type AssociateOpsItemRelatedItemOutput

type AssociateOpsItemRelatedItemOutput struct {
	AssociationID string `json:"AssociationId"`
}

AssociateOpsItemRelatedItemOutput is the response payload for AssociateOpsItemRelatedItem.

type Association

type Association struct {
	Overview                      *AssociationOverview               `json:"Overview,omitempty"`
	OutputLocation                *InstanceAssociationOutputLocation `json:"OutputLocation,omitempty"`
	Duration                      *int32                             `json:"Duration,omitempty"`
	Parameters                    map[string][]string                `json:"Parameters,omitempty"`
	Status                        *AssociationStatusInfo             `json:"Status,omitempty"`
	AssociationID                 string                             `json:"AssociationId"`
	Name                          string                             `json:"Name"`
	SyncCompliance                string                             `json:"SyncCompliance,omitempty"`
	ScheduleExpression            string                             `json:"ScheduleExpression,omitempty"`
	AssociationName               string                             `json:"AssociationName,omitempty"`
	DocumentVersion               string                             `json:"DocumentVersion,omitempty"`
	AutomationTargetParameterName string                             `json:"AutomationTargetParameterName,omitempty"`
	MaxErrors                     string                             `json:"MaxErrors,omitempty"`
	ComplianceSeverity            string                             `json:"ComplianceSeverity,omitempty"`
	InstanceID                    string                             `json:"InstanceId,omitempty"`
	MaxConcurrency                string                             `json:"MaxConcurrency,omitempty"`
	AssociationDispatchAssumeRole string                             `json:"AssociationDispatchAssumeRole,omitempty"`
	AssociationVersion            string                             `json:"AssociationVersion,omitempty"`
	Targets                       []AssociationTarget                `json:"Targets,omitempty"`
	CalendarNames                 []string                           `json:"CalendarNames,omitempty"`
	LastUpdateAssociationDate     float64                            `json:"LastUpdateAssociationDate"`
	ApplyOnlyAtCronInterval       bool                               `json:"ApplyOnlyAtCronInterval,omitempty"`
}

Association represents an SSM association between a document and targets.

type AssociationExecution

type AssociationExecution struct {
	AssociationID string  `json:"AssociationId"`
	ExecutionID   string  `json:"ExecutionId"`
	Status        string  `json:"Status"`
	ExecutionDate float64 `json:"ExecutionDate"`
}

AssociationExecution represents a single execution record of an association.

type AssociationExecutionFilter

type AssociationExecutionFilter struct {
	Key   string `json:"Key"`
	Value string `json:"Value"`
	Type  string `json:"Type"`
}

AssociationExecutionFilter is types.AssociationExecutionFilter.

type AssociationExecutionTarget

type AssociationExecutionTarget struct {
	AssociationID string `json:"AssociationId"`
	ExecutionID   string `json:"ExecutionId"`
	ResourceID    string `json:"ResourceId"`
	ResourceType  string `json:"ResourceType"`
	Status        string `json:"Status"`
}

AssociationExecutionTarget represents a single target of an association execution.

type AssociationExecutionTargetsFilter

type AssociationExecutionTargetsFilter struct {
	Key   string `json:"Key"`
	Value string `json:"Value"`
}

AssociationExecutionTargetsFilter is types.AssociationExecutionTargetsFilter.

type AssociationFilterEntry added in v1.3.1

type AssociationFilterEntry struct {
	Key   string `json:"key,omitempty"`
	Value string `json:"value,omitempty"`
}

AssociationFilterEntry filters ListAssociations results by InstanceId, Name (document name), AssociationId or AssociationName (api_op_ListAssociations.go AssociationFilterList member, types.AssociationFilterKey).

type AssociationOverview

type AssociationOverview struct {
	Status string `json:"Status"`
}

AssociationOverview is a summary of an association.

type AssociationStatusInfo added in v1.5.0

type AssociationStatusInfo struct {
	Message        string  `json:"Message"`
	Name           string  `json:"Name"`
	AdditionalInfo string  `json:"AdditionalInfo,omitempty"`
	Date           float64 `json:"Date"`
}

AssociationStatusInfo is the Status member of Association/AssociationDescription (real SDK types.AssociationStatus, api_op_UpdateAssociationStatus.go / deserializers.go awsAwsjson11_deserializeDocumentAssociationDescription case "Status"). Date/Message/Name are all required on the real type.

type AssociationStatusValue

type AssociationStatusValue struct {
	Message        string  `json:"Message"`
	Name           string  `json:"Name"`
	AdditionalInfo string  `json:"AdditionalInfo,omitempty"`
	Date           float64 `json:"Date"`
}

AssociationStatusValue is the request-side status payload for UpdateAssociationStatus (real SDK types.AssociationStatus, serializers.go awsAwsjson11_serializeDocumentAssociationStatus). Date and Message are both required on the real type -- there is no "ExecutionSummary" member anywhere in that shape.

type AssociationSummary

type AssociationSummary struct {
	Overview           *AssociationOverview `json:"Overview,omitempty"`
	Duration           *int32               `json:"Duration,omitempty"`
	AssociationID      string               `json:"AssociationId"`
	Name               string               `json:"Name"`
	ScheduleExpression string               `json:"ScheduleExpression,omitempty"`
	AssociationName    string               `json:"AssociationName,omitempty"`
	DocumentVersion    string               `json:"DocumentVersion,omitempty"`
	InstanceID         string               `json:"InstanceId,omitempty"`
	AssociationVersion string               `json:"AssociationVersion,omitempty"`
	Targets            []AssociationTarget  `json:"Targets,omitempty"`
}

AssociationSummary mirrors types.Association (ssm@v1.77.0 types.go:111), the narrow ListAssociations element.

type AssociationTarget

type AssociationTarget struct {
	Key    string   `json:"Key"`
	Values []string `json:"Values"`
}

AssociationTarget is a target for an association (key/values).

type AssociationVersionInfo added in v1.3.3

type AssociationVersionInfo struct {
	OutputLocation                *InstanceAssociationOutputLocation `json:"OutputLocation,omitempty"`
	Duration                      *int32                             `json:"Duration,omitempty"`
	Parameters                    map[string][]string                `json:"Parameters,omitempty"`
	MaxErrors                     string                             `json:"MaxErrors,omitempty"`
	DocumentVersion               string                             `json:"DocumentVersion,omitempty"`
	AssociationDispatchAssumeRole string                             `json:"AssociationDispatchAssumeRole,omitempty"`
	AssociationID                 string                             `json:"AssociationId,omitempty"`
	AssociationName               string                             `json:"AssociationName,omitempty"`
	AssociationVersion            string                             `json:"AssociationVersion,omitempty"`
	ComplianceSeverity            string                             `json:"ComplianceSeverity,omitempty"`
	SyncCompliance                string                             `json:"SyncCompliance,omitempty"`
	MaxConcurrency                string                             `json:"MaxConcurrency,omitempty"`
	ScheduleExpression            string                             `json:"ScheduleExpression,omitempty"`
	Name                          string                             `json:"Name,omitempty"`
	CalendarNames                 []string                           `json:"CalendarNames,omitempty"`
	Targets                       []AssociationTarget                `json:"Targets,omitempty"`
	CreatedDate                   float64                            `json:"CreatedDate,omitempty"`
	ApplyOnlyAtCronInterval       bool                               `json:"ApplyOnlyAtCronInterval,omitempty"`
}

AssociationVersionInfo is the narrow element type for ListAssociationVersionsOutput. Real AWS SDK v2 types.AssociationVersionInfo (api_op_ListAssociationVersions.go).

type AttachmentInformation added in v1.5.0

type AttachmentInformation struct {
	Name string `json:"Name,omitempty"`
}

AttachmentInformation is the wire shape of one entry in DocumentDescription.AttachmentsInformation (aws-sdk-go-v2/service/ssm@v1.73.4 types.AttachmentInformation) -- it carries only the attachment's Name. Hash/Size/Url belong to a different type, AttachmentContent, returned by GetDocument's AttachmentsContent -- not modeled here, since deriving a real hash/size/URL would mean fabricating S3 object state this emulator has no backing store for.

type AttachmentsSource

type AttachmentsSource struct {
	Key    string   `json:"Key,omitempty"`
	Name   string   `json:"Name,omitempty"`
	Values []string `json:"Values,omitempty"`
}

AttachmentsSource is a reference to attachments for a document.

type AutomationExecution

type AutomationExecution struct {
	Parameters map[string][]string `json:"Parameters,omitempty"`
	// ProgressCounters is derived on GetAutomationExecution, never stored.
	ProgressCounters  *ProgressCounters `json:"ProgressCounters,omitempty"`
	ChangeRequestName string            `json:"ChangeRequestName,omitempty"`
	// AutomationType is set on DescribeAutomationExecutions metadata only, never stored.
	AutomationType        string `json:"AutomationType,omitempty"`
	Status                string `json:"AutomationExecutionStatus"`
	AutomationExecutionID string `json:"AutomationExecutionId"`
	FailureMessage        string `json:"FailureMessage,omitempty"`
	// AutomationSubtype is "ChangeRequest" for change requests (types.go:874) and omitted otherwise.
	AutomationSubtype string `json:"AutomationSubtype,omitempty"`
	MaxConcurrency    string `json:"MaxConcurrency,omitempty"`
	MaxErrors         string `json:"MaxErrors,omitempty"`
	DocumentName      string `json:"DocumentName"`
	DocumentVersion   string `json:"DocumentVersion"`
	Mode              string `json:"Mode,omitempty"`
	// WarningMessage is never populated: every execution completes all steps to Success.
	WarningMessage string `json:"WarningMessage,omitempty"`
	// Runbooks is set only by StartChangeRequestExecution.
	Runbooks      []Runbook            `json:"Runbooks,omitempty"`
	Steps         []AutomationStepExec `json:"StepExecutions,omitempty"`
	ScheduledTime float64              `json:"ScheduledTime,omitempty"`
	StartTime     float64              `json:"ExecutionStartTime"`
	EndTime       float64              `json:"ExecutionEndTime,omitempty"`
	// contains filtered or unexported fields
}

AutomationExecution represents a running or completed SSM automation execution. Also serialized as AutomationExecutionMetadata for DescribeAutomationExecutions.

type AutomationExecutionFilterEntry added in v1.3.1

type AutomationExecutionFilterEntry struct {
	Key    string   `json:"Key,omitempty"`
	Values []string `json:"Values,omitempty"`
}

AutomationExecutionFilterEntry filters DescribeAutomationExecutions results by ExecutionId, ExecutionStatus or DocumentNamePrefix (api_op_DescribeAutomationExecutions.go Filters member, types.AutomationExecutionFilterKey).

type AutomationStepExec

type AutomationStepExec struct {
	IsCritical  *bool  `json:"IsCritical,omitempty"`
	IsEnd       *bool  `json:"IsEnd,omitempty"`
	MaxAttempts *int32 `json:"MaxAttempts,omitempty"`
	NextStep    string `json:"NextStep,omitempty"`
	OnFailure   string `json:"OnFailure,omitempty"`

	StepName        string `json:"StepName"`
	Action          string `json:"Action"`
	StepStatus      string `json:"StepStatus"`
	StepExecutionID string `json:"StepExecutionId,omitempty"`
	FailureMessage  string `json:"FailureMessage,omitempty"`
	// Never populated: see AutomationExecution.WarningMessage.
	WarningMessage     string  `json:"WarningMessage,omitempty"`
	ExecutionStartTime float64 `json:"ExecutionStartTime,omitempty"`
	ExecutionEndTime   float64 `json:"ExecutionEndTime,omitempty"`
}

AutomationStepExec represents a single step in an automation execution.

type AzureConfiguration

type AzureConfiguration struct {
	Targets                *ConfigurationTargets `json:"Targets,omitempty"`
	ApplicationID          string                `json:"ApplicationId"`
	TenantID               string                `json:"TenantId"`
	ApplicationDisplayName string                `json:"ApplicationDisplayName,omitempty"`
	TenantDisplayName      string                `json:"TenantDisplayName,omitempty"`
}

AzureConfiguration holds the access details for connecting to a Microsoft Azure environment: the application registration used for authentication and the subscriptions to target.

type AzureSubscription

type AzureSubscription struct {
	ID          string `json:"Id"`
	DisplayName string `json:"DisplayName,omitempty"`
}

AzureSubscription identifies one Azure subscription targeted by a cloud connector.

type CancelCommandInput

type CancelCommandInput struct {
	CommandID   string   `json:"CommandId"`
	InstanceIDs []string `json:"InstanceIds,omitempty"`
}

CancelCommandInput is the request payload for CancelCommand.

type CancelCommandOutput

type CancelCommandOutput struct{}

CancelCommandOutput is the response payload for CancelCommand.

type CancelMaintenanceWindowExecutionInput

type CancelMaintenanceWindowExecutionInput struct {
	WindowExecutionID string `json:"WindowExecutionId"`
}

CancelMaintenanceWindowExecutionInput is the request payload for CancelMaintenanceWindowExecution.

type CancelMaintenanceWindowExecutionOutput

type CancelMaintenanceWindowExecutionOutput struct {
	WindowExecutionID string `json:"WindowExecutionId"`
}

CancelMaintenanceWindowExecutionOutput is the response payload for CancelMaintenanceWindowExecution.

type CloudConnector

type CloudConnector struct {
	Configuration      CloudConnectorConfiguration `json:"Configuration"`
	CloudConnectorID   string                      `json:"CloudConnectorId"`
	CloudConnectorArn  string                      `json:"CloudConnectorArn"`
	ConfigConnectorArn string                      `json:"ConfigConnectorArn"`
	Description        string                      `json:"Description,omitempty"`
	DisplayName        string                      `json:"DisplayName"`
	RoleArn            string                      `json:"RoleArn"`
	CreatedAt          float64                     `json:"CreatedAt"`
	UpdatedAt          float64                     `json:"UpdatedAt"`
}

CloudConnector is the internal record for a Systems Manager cloud connector.

type CloudConnectorConfiguration

type CloudConnectorConfiguration struct {
	AzureConfiguration *AzureConfiguration `json:"AzureConfiguration,omitempty"`
}

CloudConnectorConfiguration is the (currently Azure-only) configuration union for a cloud connector, wire-wrapped by member name.

type CloudConnectorFilter

type CloudConnectorFilter struct {
	FilterKey    string   `json:"FilterKey"`
	FilterValues []string `json:"FilterValues,omitempty"`
}

CloudConnectorFilter is a ListCloudConnectors filter (FilterKey: SubscriptionId | TenantId).

type CloudConnectorSummary

type CloudConnectorSummary struct {
	CloudConnectorID string  `json:"CloudConnectorId"`
	Description      string  `json:"Description,omitempty"`
	DisplayName      string  `json:"DisplayName"`
	RoleArn          string  `json:"RoleArn"`
	CreatedAt        float64 `json:"CreatedAt"`
	UpdatedAt        float64 `json:"UpdatedAt"`
}

CloudConnectorSummary is the list-view projection of CloudConnector -- no ARNs, no Configuration (matches ListCloudConnectors' real response shape).

type Command

type Command struct {
	Parameters         map[string][]string `json:"Parameters,omitempty"`
	CommandID          string              `json:"CommandId"`
	DocumentName       string              `json:"DocumentName"`
	DocumentVersion    string              `json:"DocumentVersion,omitempty"`
	Status             string              `json:"Status"`
	Comment            string              `json:"Comment,omitempty"`
	OutputS3BucketName string              `json:"OutputS3BucketName,omitempty"`
	OutputS3KeyPrefix  string              `json:"OutputS3KeyPrefix,omitempty"`
	OutputS3Region     string              `json:"OutputS3Region,omitempty"`
	StatusDetails      string              `json:"StatusDetails,omitempty"`
	// ServiceRole is the real wire key for SendCommandInput.ServiceRoleArn
	// echoed on Command (api_op_SendCommand.go/types.Command -- the input and
	// output member names genuinely differ).
	ServiceRole       string          `json:"ServiceRole,omitempty"`
	MaxConcurrency    string          `json:"MaxConcurrency,omitempty"`
	MaxErrors         string          `json:"MaxErrors,omitempty"`
	InstanceIDs       []string        `json:"InstanceIds,omitempty"`
	Targets           []CommandTarget `json:"Targets,omitempty"`
	RequestedDateTime float64         `json:"RequestedDateTime"`
	ExpiresAfter      float64         `json:"ExpiresAfter"`
	TimeoutSeconds    int32           `json:"TimeoutSeconds,omitempty"`
	// TargetCount/CompletedCount/ErrorCount are computed from the command's
	// invocations at read time (commandCounts, commands.go) -- not stored,
	// so they can never drift from the invocations they summarize.
	TargetCount    int32 `json:"TargetCount,omitempty"`
	CompletedCount int32 `json:"CompletedCount,omitempty"`
	ErrorCount     int32 `json:"ErrorCount,omitempty"`
	// contains filtered or unexported fields
}

Command represents a recorded SSM command.

type CommandFilter

type CommandFilter struct {
	Key   string `json:"key"`
	Value string `json:"value"`
}

CommandFilter is a ListCommands/ListCommandInvocations Filters entry (api_op_ListCommands.go types.CommandFilter; wire keys "key"/"value" per serializers.go:9891-9897, not "Key"/"Value").

type CommandInvocation

type CommandInvocation struct {
	CommandID             string `json:"CommandId"`
	InstanceID            string `json:"InstanceId"`
	DocumentName          string `json:"DocumentName"`
	DocumentVersion       string `json:"DocumentVersion,omitempty"`
	Status                string `json:"Status"`
	StatusDetails         string `json:"StatusDetails"`
	StandardOutputContent string `json:"StandardOutputContent,omitempty"`
	StandardErrorContent  string `json:"StandardErrorContent,omitempty"`
	StandardOutputURL     string `json:"StandardOutputUrl,omitempty"`
	StandardErrorURL      string `json:"StandardErrorUrl,omitempty"`
	Comment               string `json:"Comment,omitempty"`

	RequestedDateTime float64 `json:"RequestedDateTime"`
	// contains filtered or unexported fields
}

CommandInvocation represents the invocation of a command on an instance.

type CommandTarget added in v1.5.0

type CommandTarget struct {
	Key    string   `json:"Key"`
	Values []string `json:"Values"`
}

CommandTarget names managed nodes via a Key/Values search criterion. Matches the SDK's generic types.Target{Key,Values} shape (same convention as AccessRequestTarget in models_sessions.go). SendCommand's own doc comment on types.Command.Targets: "Targets is required if you don't provide one or more managed node IDs in the call" -- the documented at-scale alternative to InstanceIds.

type ComplianceCountSummary

type ComplianceCountSummary struct {
	SeveritySummary   *SeveritySummary `json:"SeveritySummary,omitempty"`
	CompliantCount    int              `json:"CompliantCount,omitempty"`
	NonCompliantCount int              `json:"NonCompliantCount,omitempty"`
}

ComplianceCountSummary holds compliant or non-compliant item counts, plus their per-severity breakdown (types.SeveritySummary, a real member of both types.CompliantSummary and types.NonCompliantSummary).

type ComplianceExecutionSummary added in v1.3.1

type ComplianceExecutionSummary struct {
	ExecutionID   string  `json:"ExecutionId,omitempty"`
	ExecutionType string  `json:"ExecutionType,omitempty"`
	ExecutionTime float64 `json:"ExecutionTime"`
}

ComplianceExecutionSummary is the required execution metadata for a PutComplianceItems call (types.ComplianceExecutionSummary, api_op_PutComplianceItems.go: ExecutionTime is required). ExecutionTime is this package's usual epoch-seconds convention, matching every other awsjson1.1 DateTime field.

type ComplianceItem

type ComplianceItem struct {
	Details          map[string]string           `json:"Details,omitempty"`
	ExecutionSummary *ComplianceExecutionSummary `json:"ExecutionSummary,omitempty"`
	ResourceID       string                      `json:"ResourceId"`
	ResourceType     string                      `json:"ResourceType"`
	ComplianceType   string                      `json:"ComplianceType,omitempty"`
	Status           string                      `json:"Status,omitempty"`
	Severity         string                      `json:"Severity,omitempty"`
	Title            string                      `json:"Title,omitempty"`
	ID               string                      `json:"Id,omitempty"`
}

ComplianceItem is a single compliance data item for a resource. Fields are ordered for optimal struct alignment.

type ComplianceSummaryItem

type ComplianceSummaryItem struct {
	ComplianceType      string                 `json:"ComplianceType"`
	NonCompliantSummary ComplianceCountSummary `json:"NonCompliantSummary"`
	CompliantSummary    ComplianceCountSummary `json:"CompliantSummary"`
}

ComplianceSummaryItem represents a rolled-up compliance summary by type.

type ConfigProvider

type ConfigProvider interface {
	GetSSMSettings() Settings
}

ConfigProvider is a private interface to extract SSM configuration from the abstract AppContext Config.

type ConfigurationTargets

type ConfigurationTargets struct {
	Subscriptions []AzureSubscription `json:"Subscriptions,omitempty"`
}

ConfigurationTargets lists the Azure subscriptions targeted by a cloud connector.

type CreateActivationInput

type CreateActivationInput struct {
	DefaultInstanceName string  `json:"DefaultInstanceName,omitempty"`
	Description         string  `json:"Description,omitempty"`
	IamRole             string  `json:"IamRole"`
	Tags                []Tag   `json:"Tags,omitempty"`
	ExpirationDate      float64 `json:"ExpirationDate,omitempty"`
	RegistrationLimit   int32   `json:"RegistrationLimit,omitempty"`
}

CreateActivationInput is the request payload for CreateActivation.

type CreateActivationOutput

type CreateActivationOutput struct {
	ActivationCode string `json:"ActivationCode"`
	ActivationID   string `json:"ActivationId"`
}

CreateActivationOutput is the response payload for CreateActivation.

type CreateAssociationBatchInput

type CreateAssociationBatchInput struct {
	AssociationDispatchAssumeRole string                               `json:"AssociationDispatchAssumeRole,omitempty"`
	Entries                       []CreateAssociationBatchRequestEntry `json:"Entries"`
}

CreateAssociationBatchInput is the request payload for CreateAssociationBatch.

type CreateAssociationBatchOutput

type CreateAssociationBatchOutput struct {
	Failed     []FailedCreateAssociation `json:"Failed"`
	Successful []Association             `json:"Successful"`
}

CreateAssociationBatchOutput is the response payload for CreateAssociationBatch.

type CreateAssociationBatchRequestEntry

type CreateAssociationBatchRequestEntry struct {
	Parameters                    map[string][]string                `json:"Parameters,omitempty"`
	OutputLocation                *InstanceAssociationOutputLocation `json:"OutputLocation,omitempty"`
	Duration                      *int32                             `json:"Duration,omitempty"`
	AutomationTargetParameterName string                             `json:"AutomationTargetParameterName,omitempty"`
	ComplianceSeverity            string                             `json:"ComplianceSeverity,omitempty"`
	SyncCompliance                string                             `json:"SyncCompliance,omitempty"`
	ScheduleExpression            string                             `json:"ScheduleExpression,omitempty"`
	AssociationDispatchAssumeRole string                             `json:"AssociationDispatchAssumeRole,omitempty"`
	Name                          string                             `json:"Name"`
	AssociationName               string                             `json:"AssociationName,omitempty"`
	InstanceID                    string                             `json:"InstanceId,omitempty"`
	DocumentVersion               string                             `json:"DocumentVersion,omitempty"`
	MaxConcurrency                string                             `json:"MaxConcurrency,omitempty"`
	MaxErrors                     string                             `json:"MaxErrors,omitempty"`
	CalendarNames                 []string                           `json:"CalendarNames,omitempty"`
	Targets                       []AssociationTarget                `json:"Targets,omitempty"`
	ApplyOnlyAtCronInterval       bool                               `json:"ApplyOnlyAtCronInterval,omitempty"`
}

CreateAssociationBatchRequestEntry is a single entry in a batch create association request.

type CreateAssociationInput

type CreateAssociationInput struct {
	Parameters                    map[string][]string                `json:"Parameters,omitempty"`
	OutputLocation                *InstanceAssociationOutputLocation `json:"OutputLocation,omitempty"`
	Duration                      *int32                             `json:"Duration,omitempty"`
	AutomationTargetParameterName string                             `json:"AutomationTargetParameterName,omitempty"`
	ComplianceSeverity            string                             `json:"ComplianceSeverity,omitempty"`
	SyncCompliance                string                             `json:"SyncCompliance,omitempty"`
	ScheduleExpression            string                             `json:"ScheduleExpression,omitempty"`
	AssociationDispatchAssumeRole string                             `json:"AssociationDispatchAssumeRole,omitempty"`
	Name                          string                             `json:"Name"`
	AssociationName               string                             `json:"AssociationName,omitempty"`
	InstanceID                    string                             `json:"InstanceId,omitempty"`
	DocumentVersion               string                             `json:"DocumentVersion,omitempty"`
	MaxConcurrency                string                             `json:"MaxConcurrency,omitempty"`
	MaxErrors                     string                             `json:"MaxErrors,omitempty"`
	CalendarNames                 []string                           `json:"CalendarNames,omitempty"`
	Targets                       []AssociationTarget                `json:"Targets,omitempty"`
	Tags                          []Tag                              `json:"Tags,omitempty"`
	ApplyOnlyAtCronInterval       bool                               `json:"ApplyOnlyAtCronInterval,omitempty"`
}

CreateAssociationInput is the request payload for CreateAssociation.

type CreateAssociationOutput

type CreateAssociationOutput struct {
	AssociationDescription Association `json:"AssociationDescription"`
}

CreateAssociationOutput is the response payload for CreateAssociation.

type CreateCloudConnectorInput

type CreateCloudConnectorInput struct {
	ConfigConnectorArn string                      `json:"ConfigConnectorArn"`
	Configuration      CloudConnectorConfiguration `json:"Configuration"`
	Description        string                      `json:"Description,omitempty"`
	DisplayName        string                      `json:"DisplayName"`
	RoleArn            string                      `json:"RoleArn"`
	Tags               []Tag                       `json:"Tags,omitempty"`
}

CreateCloudConnectorInput is the request payload for CreateCloudConnector.

type CreateCloudConnectorOutput

type CreateCloudConnectorOutput struct {
	CloudConnectorID string `json:"CloudConnectorId"`
}

CreateCloudConnectorOutput is the response payload for CreateCloudConnector.

type CreateDocumentInput

type CreateDocumentInput struct {
	Name           string              `json:"Name"`
	Content        string              `json:"Content"`
	DisplayName    string              `json:"DisplayName,omitempty"`
	DocumentType   string              `json:"DocumentType,omitempty"`
	DocumentFormat string              `json:"DocumentFormat,omitempty"`
	TargetType     string              `json:"TargetType,omitempty"`
	Description    string              `json:"Description,omitempty"`
	VersionName    string              `json:"VersionName,omitempty"`
	PlatformTypes  []string            `json:"PlatformTypes,omitempty"`
	Attachments    []AttachmentsSource `json:"Attachments,omitempty"`
	Requires       []DocumentRequires  `json:"Requires,omitempty"`
	Tags           []Tag               `json:"Tags,omitempty"`
}

CreateDocumentInput is the request payload for CreateDocument.

type CreateDocumentOutput

type CreateDocumentOutput struct {
	DocumentDescription DocumentDescription `json:"DocumentDescription"`
}

CreateDocumentOutput is the response payload for CreateDocument.

type CreateMaintenanceWindowInput

type CreateMaintenanceWindowInput struct {
	ClientToken              string `json:"ClientToken,omitempty"`
	Name                     string `json:"Name"`
	Description              string `json:"Description,omitempty"`
	Schedule                 string `json:"Schedule"`
	ScheduleTimezone         string `json:"ScheduleTimezone,omitempty"`
	StartDate                string `json:"StartDate,omitempty"`
	EndDate                  string `json:"EndDate,omitempty"`
	Tags                     []Tag  `json:"Tags,omitempty"`
	ScheduleOffset           int32  `json:"ScheduleOffset,omitempty"`
	Duration                 int32  `json:"Duration"`
	Cutoff                   int32  `json:"Cutoff"`
	AllowUnassociatedTargets bool   `json:"AllowUnassociatedTargets"`
}

CreateMaintenanceWindowInput is the request payload for CreateMaintenanceWindow.

type CreateMaintenanceWindowOutput

type CreateMaintenanceWindowOutput struct {
	WindowID string `json:"WindowId"`
}

CreateMaintenanceWindowOutput is the response payload for CreateMaintenanceWindow.

type CreateOpsItemInput

type CreateOpsItemInput struct {
	OperationalData  map[string]OpsItemDataValue `json:"OperationalData,omitempty"`
	PlannedEndTime   *float64                    `json:"PlannedEndTime,omitempty"`
	PlannedStartTime *float64                    `json:"PlannedStartTime,omitempty"`
	ActualStartTime  *float64                    `json:"ActualStartTime,omitempty"`
	ActualEndTime    *float64                    `json:"ActualEndTime,omitempty"`
	Title            string                      `json:"Title"`
	Source           string                      `json:"Source"`
	Description      string                      `json:"Description,omitempty"`
	OpsItemType      string                      `json:"OpsItemType,omitempty"`
	Severity         string                      `json:"Severity,omitempty"`
	Category         string                      `json:"Category,omitempty"`
	AccountID        string                      `json:"AccountId,omitempty"`
	Notifications    []OpsItemNotification       `json:"Notifications,omitempty"`
	Tags             []Tag                       `json:"Tags,omitempty"`
	RelatedOpsItems  []RelatedOpsItemRef         `json:"RelatedOpsItems,omitempty"`
	Priority         int32                       `json:"Priority,omitempty"`
}

CreateOpsItemInput is the request payload for CreateOpsItem.

type CreateOpsItemOutput

type CreateOpsItemOutput struct {
	OpsItemArn string `json:"OpsItemArn,omitempty"`
	OpsItemID  string `json:"OpsItemId"`
}

CreateOpsItemOutput is the response payload for CreateOpsItem.

type CreateOpsMetadataInput

type CreateOpsMetadataInput struct {
	ResourceID string                   `json:"ResourceId"`
	Metadata   map[string]MetadataValue `json:"Metadata,omitempty"`
	Tags       []Tag                    `json:"Tags,omitempty"`
}

CreateOpsMetadataInput is the request payload for CreateOpsMetadata.

type CreateOpsMetadataOutput

type CreateOpsMetadataOutput struct {
	OpsMetadataArn string `json:"OpsMetadataArn"`
}

CreateOpsMetadataOutput is the response payload for CreateOpsMetadata.

type CreatePatchBaselineInput

type CreatePatchBaselineInput struct {
	ClientToken                              string            `json:"ClientToken,omitempty"`
	ApprovalRules                            *PatchRuleGroup   `json:"ApprovalRules,omitempty"`
	ApprovedPatchesEnableNonSecurity         *bool             `json:"ApprovedPatchesEnableNonSecurity,omitempty"`
	GlobalFilters                            *PatchFilterGroup `json:"GlobalFilters,omitempty"`
	ApprovedPatchesComplianceLevel           string            `json:"ApprovedPatchesComplianceLevel,omitempty"`
	AvailableSecurityUpdatesComplianceStatus string            `json:"AvailableSecurityUpdatesComplianceStatus,omitempty"`
	RejectedPatchesAction                    string            `json:"RejectedPatchesAction,omitempty"`
	Name                                     string            `json:"Name"`
	OperatingSystem                          string            `json:"OperatingSystem,omitempty"`
	Description                              string            `json:"Description,omitempty"`
	ApprovedPatches                          []string          `json:"ApprovedPatches,omitempty"`
	RejectedPatches                          []string          `json:"RejectedPatches,omitempty"`
	Sources                                  []PatchSource     `json:"Sources,omitempty"`
	Tags                                     []Tag             `json:"Tags,omitempty"`
}

CreatePatchBaselineInput is the request payload for CreatePatchBaseline.

type CreatePatchBaselineOutput

type CreatePatchBaselineOutput struct {
	BaselineID string `json:"BaselineId"`
}

CreatePatchBaselineOutput is the response payload for CreatePatchBaseline.

type CreateResourceDataSyncInput

type CreateResourceDataSyncInput struct {
	S3Destination *ResourceDataSyncS3Destination `json:"S3Destination,omitempty"`
	SyncSource    *ResourceDataSyncSource        `json:"SyncSource,omitempty"`
	SyncName      string                         `json:"SyncName"`
	SyncType      string                         `json:"SyncType,omitempty"`
}

CreateResourceDataSyncInput is the request for CreateResourceDataSync.

type CreateResourceDataSyncOutput

type CreateResourceDataSyncOutput struct{}

type Credentials added in v1.2.0

type Credentials struct {
	AccessKeyID     string  `json:"AccessKeyId"`
	SecretAccessKey string  `json:"SecretAccessKey"`
	SessionToken    string  `json:"SessionToken"`
	ExpirationTime  float64 `json:"ExpirationTime"`
}

Credentials mirrors the SDK's types.Credentials (temporary security credentials returned for an approved just-in-time access request).

type DeleteActivationInput

type DeleteActivationInput struct {
	ActivationID string `json:"ActivationId"`
}

DeleteActivationInput is the request for DeleteActivation.

type DeleteActivationOutput

type DeleteActivationOutput struct{}

DeleteActivationOutput is the response for DeleteActivation.

type DeleteAssociationInput

type DeleteAssociationInput struct {
	AssociationID string `json:"AssociationId,omitempty"`
	Name          string `json:"Name,omitempty"`
	InstanceID    string `json:"InstanceId,omitempty"`
}

DeleteAssociationInput is the request for DeleteAssociation.

type DeleteAssociationOutput

type DeleteAssociationOutput struct{}

DeleteAssociationOutput is the response for DeleteAssociation.

type DeleteCloudConnectorInput

type DeleteCloudConnectorInput struct {
	CloudConnectorID string `json:"CloudConnectorId"`
}

DeleteCloudConnectorInput is the request payload for DeleteCloudConnector.

type DeleteCloudConnectorOutput

type DeleteCloudConnectorOutput struct {
	CloudConnectorID string `json:"CloudConnectorId"`
}

DeleteCloudConnectorOutput is the response payload for DeleteCloudConnector.

type DeleteDocumentInput

type DeleteDocumentInput struct {
	Name            string `json:"Name"`
	DocumentVersion string `json:"DocumentVersion,omitempty"`
	VersionName     string `json:"VersionName,omitempty"`
	Force           bool   `json:"Force,omitempty"`
}

DeleteDocumentInput is the request payload for DeleteDocument. DocumentVersion/ VersionName scope the delete to a single version (aws-sdk-go-v2/service/ ssm@v1.73.4 api_op_DeleteDocument.go:34-49: "If not provided, all versions of the document are deleted"); omitting both deletes every version. Force is parsed but not consulted -- real AWS requires it only to delete a document of type ApplicationConfigurationSchema, which this backend does not model.

type DeleteDocumentOutput

type DeleteDocumentOutput struct{}

DeleteDocumentOutput is the response payload for DeleteDocument.

type DeleteInventoryInput

type DeleteInventoryInput struct {
	TypeName           string `json:"TypeName"`
	SchemaDeleteOption string `json:"SchemaDeleteOption,omitempty"`
	DryRun             bool   `json:"DryRun,omitempty"`
}

DeleteInventoryInput is the request payload for DeleteInventory. SchemaDeleteOption is validated but has no effect: only items are tracked, not schemas (see PARITY.md).

type DeleteInventoryOutput

type DeleteInventoryOutput struct {
	DeletionSummary *InventoryDeletionSummary `json:"DeletionSummary,omitempty"`
	DeletionID      string                    `json:"DeletionId,omitempty"`
	TypeName        string                    `json:"TypeName,omitempty"`
}

DeleteInventoryOutput is the response for DeleteInventory.

type DeleteMaintenanceWindowInput

type DeleteMaintenanceWindowInput struct {
	WindowID string `json:"WindowId"`
}

DeleteMaintenanceWindowInput is the request for DeleteMaintenanceWindow.

type DeleteMaintenanceWindowOutput

type DeleteMaintenanceWindowOutput struct {
	WindowID string `json:"WindowId"`
}

DeleteMaintenanceWindowOutput is the response payload for DeleteMaintenanceWindow.

type DeleteOpsItemInput

type DeleteOpsItemInput struct {
	OpsItemID string `json:"OpsItemId"`
}

DeleteOpsItemInput is the request for DeleteOpsItem.

type DeleteOpsItemOutput

type DeleteOpsItemOutput struct{}

DeleteOpsItemOutput is the response for DeleteOpsItem.

type DeleteOpsMetadataInput

type DeleteOpsMetadataInput struct {
	OpsMetadataArn string `json:"OpsMetadataArn"`
}

DeleteOpsMetadataInput is the request for DeleteOpsMetadata.

type DeleteOpsMetadataOutput

type DeleteOpsMetadataOutput struct{}

DeleteOpsMetadataOutput is the response for DeleteOpsMetadata.

type DeleteParameterInput

type DeleteParameterInput struct {
	Name string `json:"Name"`
}

DeleteParameterInput represents the request payload for DeleteParameter.

type DeleteParameterOutput

type DeleteParameterOutput struct{}

DeleteParameterOutput represents the response payload for DeleteParameter.

type DeleteParametersInput

type DeleteParametersInput struct {
	Names []string `json:"Names"`
}

DeleteParametersInput represents the request payload for DeleteParameters.

type DeleteParametersOutput

type DeleteParametersOutput struct {
	DeletedParameters []string `json:"DeletedParameters"`
	InvalidParameters []string `json:"InvalidParameters"`
}

DeleteParametersOutput represents the response payload for DeleteParameters.

type DeletePatchBaselineInput

type DeletePatchBaselineInput struct {
	BaselineID string `json:"BaselineId"`
}

DeletePatchBaselineInput is the request payload for DeletePatchBaseline.

type DeletePatchBaselineOutput

type DeletePatchBaselineOutput struct {
	BaselineID string `json:"BaselineId"`
}

DeletePatchBaselineOutput is the response payload for DeletePatchBaseline.

type DeleteResourceDataSyncInput

type DeleteResourceDataSyncInput struct {
	SyncName string `json:"SyncName"`
}

DeleteResourceDataSyncInput is the request for DeleteResourceDataSync.

type DeleteResourceDataSyncOutput

type DeleteResourceDataSyncOutput struct{}

DeleteResourceDataSyncOutput is the response for DeleteResourceDataSync.

type DeleteResourcePolicyInput

type DeleteResourcePolicyInput struct {
	ResourceARN string `json:"ResourceArn"`
	PolicyID    string `json:"PolicyId"`
	PolicyHash  string `json:"PolicyHash"`
}

DeleteResourcePolicyInput is the request for DeleteResourcePolicy.

type DeleteResourcePolicyOutput

type DeleteResourcePolicyOutput struct{}

DeleteResourcePolicyOutput is the response for DeleteResourcePolicy.

type DeregisterManagedInstanceInput

type DeregisterManagedInstanceInput struct {
	InstanceID string `json:"InstanceId"`
}

DeregisterManagedInstanceInput is the request for DeregisterManagedInstance.

type DeregisterManagedInstanceOutput

type DeregisterManagedInstanceOutput struct{}

DeregisterManagedInstanceOutput is the response for DeregisterManagedInstance.

type DeregisterPatchBaselineForPatchGroupInput

type DeregisterPatchBaselineForPatchGroupInput struct {
	BaselineID string `json:"BaselineId"`
	PatchGroup string `json:"PatchGroup"`
}

DeregisterPatchBaselineForPatchGroupInput is the request for DeregisterPatchBaselineForPatchGroup.

type DeregisterPatchBaselineForPatchGroupOutput

type DeregisterPatchBaselineForPatchGroupOutput struct {
	BaselineID string `json:"BaselineId"`
	PatchGroup string `json:"PatchGroup"`
}

DeregisterPatchBaselineForPatchGroupOutput is the response for DeregisterPatchBaselineForPatchGroup.

type DeregisterTargetFromMaintenanceWindowInput

type DeregisterTargetFromMaintenanceWindowInput struct {
	WindowID       string `json:"WindowId"`
	WindowTargetID string `json:"WindowTargetId"`
	Safe           bool   `json:"Safe,omitempty"`
}

DeregisterTargetFromMaintenanceWindowInput is the request for DeregisterTargetFromMaintenanceWindow.

type DeregisterTargetFromMaintenanceWindowOutput

type DeregisterTargetFromMaintenanceWindowOutput struct {
	WindowID       string `json:"WindowId"`
	WindowTargetID string `json:"WindowTargetId"`
}

DeregisterTargetFromMaintenanceWindowOutput is the response for DeregisterTargetFromMaintenanceWindow.

type DeregisterTaskFromMaintenanceWindowInput

type DeregisterTaskFromMaintenanceWindowInput struct {
	WindowID     string `json:"WindowId"`
	WindowTaskID string `json:"WindowTaskId"`
}

DeregisterTaskFromMaintenanceWindowInput is the request for DeregisterTaskFromMaintenanceWindow.

type DeregisterTaskFromMaintenanceWindowOutput

type DeregisterTaskFromMaintenanceWindowOutput struct {
	WindowID     string `json:"WindowId"`
	WindowTaskID string `json:"WindowTaskId"`
}

DeregisterTaskFromMaintenanceWindowOutput is the response for DeregisterTaskFromMaintenanceWindow.

type DescribeActivationsFilter added in v1.3.1

type DescribeActivationsFilter struct {
	FilterKey    string   `json:"FilterKey,omitempty"`
	FilterValues []string `json:"FilterValues,omitempty"`
}

DescribeActivationsFilter filters DescribeActivations results by ActivationIds, DefaultInstanceName or IamRole (api_op_DescribeActivations.go, types.DescribeActivationsFilterKeys).

type DescribeActivationsInput

type DescribeActivationsInput struct {
	MaxResults *int32                      `json:"MaxResults,omitempty"`
	NextToken  string                      `json:"NextToken,omitempty"`
	Filters    []DescribeActivationsFilter `json:"Filters,omitempty"`
}

DescribeActivationsInput is the request for DescribeActivations.

type DescribeActivationsOutput

type DescribeActivationsOutput struct {
	NextToken      string       `json:"NextToken,omitempty"`
	ActivationList []Activation `json:"ActivationList"`
}

DescribeActivationsOutput is the response for DescribeActivations.

type DescribeAssociationExecutionTargetsInput

type DescribeAssociationExecutionTargetsInput struct {
	MaxResults    *int32                              `json:"MaxResults,omitempty"`
	AssociationID string                              `json:"AssociationId"`
	ExecutionID   string                              `json:"ExecutionId,omitempty"`
	NextToken     string                              `json:"NextToken,omitempty"`
	Filters       []AssociationExecutionTargetsFilter `json:"Filters,omitempty"`
}

DescribeAssociationExecutionTargetsInput is the request for DescribeAssociationExecutionTargets.

type DescribeAssociationExecutionTargetsOutput

type DescribeAssociationExecutionTargetsOutput struct{}

DescribeAssociationExecutionTargetsOutput is the response for DescribeAssociationExecutionTargets.

type DescribeAssociationExecutionTargetsOutputFull

type DescribeAssociationExecutionTargetsOutputFull struct {
	NextToken                   string                       `json:"NextToken,omitempty"`
	AssociationExecutionTargets []AssociationExecutionTarget `json:"AssociationExecutionTargets"`
}

DescribeAssociationExecutionTargetsOutputFull extends the empty output.

type DescribeAssociationExecutionsInput

type DescribeAssociationExecutionsInput struct {
	MaxResults    *int32                       `json:"MaxResults,omitempty"`
	AssociationID string                       `json:"AssociationId"`
	NextToken     string                       `json:"NextToken,omitempty"`
	Filters       []AssociationExecutionFilter `json:"Filters,omitempty"`
}

DescribeAssociationExecutionsInput is the request for DescribeAssociationExecutions.

type DescribeAssociationExecutionsOutput

type DescribeAssociationExecutionsOutput struct{}

DescribeAssociationExecutionsOutput is the response for DescribeAssociationExecutions.

type DescribeAssociationExecutionsOutputFull

type DescribeAssociationExecutionsOutputFull struct {
	NextToken             string                 `json:"NextToken,omitempty"`
	AssociationExecutions []AssociationExecution `json:"AssociationExecutions"`
}

DescribeAssociationExecutionsOutputFull extends the empty output.

type DescribeAssociationInput

type DescribeAssociationInput struct {
	AssociationVersion string `json:"AssociationVersion,omitempty"`
	AssociationID      string `json:"AssociationId,omitempty"`
	Name               string `json:"Name,omitempty"`
	InstanceID         string `json:"InstanceId,omitempty"`
}

DescribeAssociationInput is the request for DescribeAssociation.

type DescribeAssociationOutput

type DescribeAssociationOutput struct {
	AssociationDescription Association `json:"AssociationDescription"`
}

DescribeAssociationOutput is the response for DescribeAssociation.

type DescribeAutomationExecutionsInput

type DescribeAutomationExecutionsInput struct {
	MaxResults *int32                           `json:"MaxResults,omitempty"`
	NextToken  string                           `json:"NextToken,omitempty"`
	Filters    []AutomationExecutionFilterEntry `json:"Filters,omitempty"`
}

DescribeAutomationExecutionsInput is the request for DescribeAutomationExecutions.

type DescribeAutomationExecutionsOutput

type DescribeAutomationExecutionsOutput struct{}

DescribeAutomationExecutionsOutput is the response for DescribeAutomationExecutions.

type DescribeAutomationExecutionsOutputFull

type DescribeAutomationExecutionsOutputFull struct {
	NextToken                       string                `json:"NextToken,omitempty"`
	AutomationExecutionMetadataList []AutomationExecution `json:"AutomationExecutionMetadataList"`
}

DescribeAutomationExecutionsOutputFull extends the empty stub output.

type DescribeAutomationStepExecutionsInput

type DescribeAutomationStepExecutionsInput struct {
	MaxResults            *int32                `json:"MaxResults,omitempty"`
	ReverseOrder          *bool                 `json:"ReverseOrder,omitempty"`
	AutomationExecutionID string                `json:"AutomationExecutionId"`
	NextToken             string                `json:"NextToken,omitempty"`
	Filters               []StepExecutionFilter `json:"Filters,omitempty"`
}

DescribeAutomationStepExecutionsInput is the request for DescribeAutomationStepExecutions.

type DescribeAutomationStepExecutionsOutput

type DescribeAutomationStepExecutionsOutput struct{}

DescribeAutomationStepExecutionsOutput is the response for DescribeAutomationStepExecutions.

type DescribeAutomationStepExecutionsOutputFull

type DescribeAutomationStepExecutionsOutputFull struct {
	NextToken      string               `json:"NextToken,omitempty"`
	StepExecutions []AutomationStepExec `json:"StepExecutions"`
}

DescribeAutomationStepExecutionsOutputFull extends the empty stub output.

type DescribeAvailablePatchesInput

type DescribeAvailablePatchesInput struct {
	MaxResults *int64        `json:"MaxResults,omitempty"`
	NextToken  string        `json:"NextToken,omitempty"`
	Filters    []PatchFilter `json:"Filters,omitempty"`
}

DescribeAvailablePatchesInput is the request for DescribeAvailablePatches.

type DescribeAvailablePatchesOutput

type DescribeAvailablePatchesOutput struct {
	NextToken string  `json:"NextToken,omitempty"`
	Patches   []Patch `json:"Patches"`
}

DescribeAvailablePatchesOutput is the response for DescribeAvailablePatches.

type DescribeDocumentInput

type DescribeDocumentInput struct {
	Name            string `json:"Name"`
	DocumentVersion string `json:"DocumentVersion,omitempty"`
	VersionName     string `json:"VersionName,omitempty"`
}

DescribeDocumentInput is the request payload for DescribeDocument.

type DescribeDocumentOutput

type DescribeDocumentOutput struct {
	Document DocumentDescription `json:"Document"`
}

DescribeDocumentOutput is the response payload for DescribeDocument.

type DescribeDocumentPermissionInput

type DescribeDocumentPermissionInput struct {
	Name           string `json:"Name"`
	PermissionType string `json:"PermissionType"`
	MaxResults     *int64 `json:"MaxResults,omitempty"`
	NextToken      string `json:"NextToken,omitempty"`
}

DescribeDocumentPermissionInput is the request payload for DescribeDocumentPermission.

type DescribeDocumentPermissionOutput

type DescribeDocumentPermissionOutput struct {
	NextToken              string               `json:"NextToken,omitempty"`
	AccountIDs             []string             `json:"AccountIds"`
	AccountSharingInfoList []AccountSharingInfo `json:"AccountSharingInfoList"`
}

DescribeDocumentPermissionOutput is the response payload for DescribeDocumentPermission.

type DescribeEffectiveInstanceAssociationsInput

type DescribeEffectiveInstanceAssociationsInput struct {
	MaxResults *int32 `json:"MaxResults,omitempty"`
	InstanceID string `json:"InstanceId"`
	NextToken  string `json:"NextToken,omitempty"`
}

DescribeEffectiveInstanceAssociationsInput is the request for DescribeEffectiveInstanceAssociations.

type DescribeEffectiveInstanceAssociationsOutput

type DescribeEffectiveInstanceAssociationsOutput struct{}

DescribeEffectiveInstanceAssociationsOutput is the response for DescribeEffectiveInstanceAssociations.

type DescribeEffectiveInstanceAssociationsOutputFull

type DescribeEffectiveInstanceAssociationsOutputFull struct {
	NextToken    string                    `json:"NextToken,omitempty"`
	Associations []InstanceAssociationInfo `json:"Associations"`
}

DescribeEffectiveInstanceAssociationsOutputFull has effective associations.

type DescribeEffectivePatchesForPatchBaselineInput

type DescribeEffectivePatchesForPatchBaselineInput struct {
	MaxResults *int64 `json:"MaxResults,omitempty"`
	BaselineID string `json:"BaselineId"`
	NextToken  string `json:"NextToken,omitempty"`
}

DescribeEffectivePatchesForPatchBaselineInput is the request payload.

type DescribeEffectivePatchesForPatchBaselineOutput

type DescribeEffectivePatchesForPatchBaselineOutput struct {
	NextToken        string           `json:"NextToken,omitempty"`
	EffectivePatches []EffectivePatch `json:"EffectivePatches"`
}

DescribeEffectivePatchesForPatchBaselineOutput is the response payload.

type DescribeInstanceAssociationsStatusInput

type DescribeInstanceAssociationsStatusInput struct {
	MaxResults *int32 `json:"MaxResults,omitempty"`
	InstanceID string `json:"InstanceId"`
	NextToken  string `json:"NextToken,omitempty"`
}

DescribeInstanceAssociationsStatusInput is the request for DescribeInstanceAssociationsStatus.

type DescribeInstanceAssociationsStatusOutput

type DescribeInstanceAssociationsStatusOutput struct{}

DescribeInstanceAssociationsStatusOutput is the response for DescribeInstanceAssociationsStatus.

type DescribeInstanceAssociationsStatusOutputFull

type DescribeInstanceAssociationsStatusOutputFull struct {
	NextToken                      string                          `json:"NextToken,omitempty"`
	InstanceAssociationStatusInfos []InstanceAssociationStatusInfo `json:"InstanceAssociationStatusInfos"`
}

DescribeInstanceAssociationsStatusOutputFull has status info.

type DescribeInstanceInformationInput

type DescribeInstanceInformationInput struct {
	MaxResults                    *int32                                 `json:"MaxResults,omitempty"`
	NextToken                     string                                 `json:"NextToken,omitempty"`
	Filters                       []InstanceInformationStringFilterEntry `json:"Filters,omitempty"`
	InstanceInformationFilterList []InstanceInformationFilterEntry       `json:"InstanceInformationFilterList,omitempty"`
}

DescribeInstanceInformationInput is the request for DescribeInstanceInformation.

type DescribeInstanceInformationOutput

type DescribeInstanceInformationOutput struct{}

DescribeInstanceInformationOutput is the response for DescribeInstanceInformation.

type DescribeInstanceInformationOutputFull

type DescribeInstanceInformationOutputFull struct {
	NextToken               string                `json:"NextToken,omitempty"`
	InstanceInformationList []InstanceInformation `json:"InstanceInformationList"`
}

DescribeInstanceInformationOutputFull extends the empty stub.

type DescribeInstancePatchStatesForPatchGroupInput

type DescribeInstancePatchStatesForPatchGroupInput struct {
	MaxResults *int64                     `json:"MaxResults,omitempty"`
	NextToken  string                     `json:"NextToken,omitempty"`
	PatchGroup string                     `json:"PatchGroup"`
	Filters    []InstancePatchStateFilter `json:"Filters,omitempty"`
}

DescribeInstancePatchStatesForPatchGroupInput is the request for DescribeInstancePatchStatesForPatchGroup.

type DescribeInstancePatchStatesForPatchGroupOutput

type DescribeInstancePatchStatesForPatchGroupOutput struct {
	NextToken           string               `json:"NextToken,omitempty"`
	InstancePatchStates []InstancePatchState `json:"InstancePatchStates"`
}

DescribeInstancePatchStatesForPatchGroupOutput is the response for DescribeInstancePatchStatesForPatchGroup.

type DescribeInstancePatchStatesInput

type DescribeInstancePatchStatesInput struct {
	MaxResults  *int64   `json:"MaxResults,omitempty"`
	NextToken   string   `json:"NextToken,omitempty"`
	InstanceIDs []string `json:"InstanceIds"`
}

DescribeInstancePatchStatesInput is the request for DescribeInstancePatchStates.

type DescribeInstancePatchStatesOutput

type DescribeInstancePatchStatesOutput struct{}

DescribeInstancePatchStatesOutput is the response for DescribeInstancePatchStates.

type DescribeInstancePatchStatesOutputFull

type DescribeInstancePatchStatesOutputFull struct {
	NextToken           string               `json:"NextToken,omitempty"`
	InstancePatchStates []InstancePatchState `json:"InstancePatchStates"`
}

DescribeInstancePatchStatesOutputFull extends the empty stub.

type DescribeInstancePatchesInput

type DescribeInstancePatchesInput struct {
	MaxResults *int64                    `json:"MaxResults,omitempty"`
	InstanceID string                    `json:"InstanceId"`
	NextToken  string                    `json:"NextToken,omitempty"`
	Filters    []PatchOrchestratorFilter `json:"Filters,omitempty"`
}

DescribeInstancePatchesInput is the request for DescribeInstancePatches.

type DescribeInstancePatchesOutput

type DescribeInstancePatchesOutput struct {
	NextToken string                `json:"NextToken,omitempty"`
	Patches   []PatchComplianceData `json:"Patches"`
}

DescribeInstancePatchesOutput is the response for DescribeInstancePatches.

type DescribeInstancePropertiesInput

type DescribeInstancePropertiesInput struct {
	MaxResults                 *int64                         `json:"MaxResults,omitempty"`
	NextToken                  string                         `json:"NextToken,omitempty"`
	FiltersWithOperator        []InstancePropertyStringFilter `json:"FiltersWithOperator,omitempty"`
	InstancePropertyFilterList []InstancePropertyFilter       `json:"InstancePropertyFilterList,omitempty"`
}

DescribeInstancePropertiesInput is the request for DescribeInstanceProperties.

type DescribeInstancePropertiesOutput

type DescribeInstancePropertiesOutput struct {
	NextToken          string             `json:"NextToken,omitempty"`
	InstanceProperties []InstanceProperty `json:"InstanceProperties"`
}

DescribeInstancePropertiesOutput is the response for DescribeInstanceProperties.

type DescribeInventoryDeletionsInput

type DescribeInventoryDeletionsInput struct {
	MaxResults *int64 `json:"MaxResults,omitempty"`
	DeletionID string `json:"DeletionId,omitempty"`
	NextToken  string `json:"NextToken,omitempty"`
}

DescribeInventoryDeletionsInput is the request payload for DescribeInventoryDeletions.

type DescribeInventoryDeletionsOutput

type DescribeInventoryDeletionsOutput struct {
	NextToken          string `json:"NextToken,omitempty"`
	InventoryDeletions []any  `json:"InventoryDeletions"`
}

DescribeInventoryDeletionsOutput is the response payload.

type DescribeMaintenanceWindowExecutionTaskInvocationsInput

type DescribeMaintenanceWindowExecutionTaskInvocationsInput struct {
	MaxResults        *int32                    `json:"MaxResults,omitempty"`
	WindowExecutionID string                    `json:"WindowExecutionId"`
	TaskID            string                    `json:"TaskId"`
	NextToken         string                    `json:"NextToken,omitempty"`
	Filters           []MaintenanceWindowFilter `json:"Filters,omitempty"`
}

DescribeMaintenanceWindowExecutionTaskInvocationsInput is the request payload. TaskId is required on the real op (api_op_DescribeMaintenanceWindowExecutionTaskInvocations.go) despite the name suggesting it might be optional given DescribeMaintenanceWindowExecutionTasks already scopes to WindowExecutionId alone.

type DescribeMaintenanceWindowExecutionTaskInvocationsOutput

type DescribeMaintenanceWindowExecutionTaskInvocationsOutput struct{}

DescribeMaintenanceWindowExecutionTaskInvocationsOutput is the response payload.

type DescribeMaintenanceWindowExecutionTaskInvocationsOutputFull

type DescribeMaintenanceWindowExecutionTaskInvocationsOutputFull struct {
	NextToken                               string                                     `json:"NextToken,omitempty"`
	WindowExecutionTaskInvocationIdentities []MaintenanceWindowExecutionTaskInvocation `json:"WindowExecutionTaskInvocationIdentities"` //nolint:lll // AWS API field name is long by design
}

DescribeMaintenanceWindowExecutionTaskInvocationsOutputFull has invocations.

type DescribeMaintenanceWindowExecutionTasksInput

type DescribeMaintenanceWindowExecutionTasksInput struct {
	MaxResults        *int32                    `json:"MaxResults,omitempty"`
	WindowExecutionID string                    `json:"WindowExecutionId"`
	NextToken         string                    `json:"NextToken,omitempty"`
	Filters           []MaintenanceWindowFilter `json:"Filters,omitempty"`
}

DescribeMaintenanceWindowExecutionTasksInput is the request payload.

type DescribeMaintenanceWindowExecutionTasksOutput

type DescribeMaintenanceWindowExecutionTasksOutput struct{}

DescribeMaintenanceWindowExecutionTasksOutput is the response payload.

type DescribeMaintenanceWindowExecutionTasksOutputFull

type DescribeMaintenanceWindowExecutionTasksOutputFull struct {
	NextToken                     string                           `json:"NextToken,omitempty"`
	WindowExecutionTaskIdentities []MaintenanceWindowExecutionTask `json:"WindowExecutionTaskIdentities"`
}

DescribeMaintenanceWindowExecutionTasksOutputFull has tasks list.

type DescribeMaintenanceWindowExecutionsInput

type DescribeMaintenanceWindowExecutionsInput struct {
	MaxResults *int32                    `json:"MaxResults,omitempty"`
	WindowID   string                    `json:"WindowId"`
	NextToken  string                    `json:"NextToken,omitempty"`
	Filters    []MaintenanceWindowFilter `json:"Filters,omitempty"`
}

DescribeMaintenanceWindowExecutionsInput is the request payload.

type DescribeMaintenanceWindowExecutionsOutput

type DescribeMaintenanceWindowExecutionsOutput struct{}

DescribeMaintenanceWindowExecutionsOutput is the response payload.

type DescribeMaintenanceWindowExecutionsOutputFull

type DescribeMaintenanceWindowExecutionsOutputFull struct {
	NextToken        string                       `json:"NextToken,omitempty"`
	WindowExecutions []MaintenanceWindowExecution `json:"WindowExecutions"`
}

DescribeMaintenanceWindowExecutionsOutputFull has executions list.

type DescribeMaintenanceWindowScheduleInput

type DescribeMaintenanceWindowScheduleInput struct {
	MaxResults   *int32 `json:"MaxResults,omitempty"`
	WindowID     string `json:"WindowId,omitempty"`
	NextToken    string `json:"NextToken,omitempty"`
	ResourceType string `json:"ResourceType,omitempty"`
}

DescribeMaintenanceWindowScheduleInput is the request payload.

type DescribeMaintenanceWindowScheduleOutput

type DescribeMaintenanceWindowScheduleOutput struct{}

DescribeMaintenanceWindowScheduleOutput is the response payload.

type DescribeMaintenanceWindowScheduleOutputFull

type DescribeMaintenanceWindowScheduleOutputFull struct {
	NextToken                 string                     `json:"NextToken,omitempty"`
	ScheduledWindowExecutions []ScheduledWindowExecution `json:"ScheduledWindowExecutions"`
}

DescribeMaintenanceWindowScheduleOutputFull has schedule entries.

type DescribeMaintenanceWindowTargetsInput

type DescribeMaintenanceWindowTargetsInput struct {
	MaxResults *int32                    `json:"MaxResults,omitempty"`
	WindowID   string                    `json:"WindowId"`
	NextToken  string                    `json:"NextToken,omitempty"`
	Filters    []MaintenanceWindowFilter `json:"Filters,omitempty"`
}

DescribeMaintenanceWindowTargetsInput is the request payload.

type DescribeMaintenanceWindowTargetsOutput

type DescribeMaintenanceWindowTargetsOutput struct {
	NextToken string                    `json:"NextToken,omitempty"`
	Targets   []MaintenanceWindowTarget `json:"Targets"`
}

DescribeMaintenanceWindowTargetsOutput is the response payload.

type DescribeMaintenanceWindowTasksInput

type DescribeMaintenanceWindowTasksInput struct {
	MaxResults *int32                    `json:"MaxResults,omitempty"`
	WindowID   string                    `json:"WindowId"`
	NextToken  string                    `json:"NextToken,omitempty"`
	Filters    []MaintenanceWindowFilter `json:"Filters,omitempty"`
}

DescribeMaintenanceWindowTasksInput is the request payload.

type DescribeMaintenanceWindowTasksOutput

type DescribeMaintenanceWindowTasksOutput struct {
	NextToken string                  `json:"NextToken,omitempty"`
	Tasks     []MaintenanceWindowTask `json:"Tasks"`
}

DescribeMaintenanceWindowTasksOutput is the response payload.

type DescribeMaintenanceWindowsForTargetInput

type DescribeMaintenanceWindowsForTargetInput struct {
	MaxResults   *int64         `json:"MaxResults,omitempty"`
	ResourceType string         `json:"ResourceType,omitempty"`
	NextToken    string         `json:"NextToken,omitempty"`
	Targets      []WindowTarget `json:"Targets,omitempty"`
}

DescribeMaintenanceWindowsForTargetInput is the request payload. Fields ordered for alignment.

type DescribeMaintenanceWindowsForTargetOutput

type DescribeMaintenanceWindowsForTargetOutput struct {
	NextToken        string                      `json:"NextToken,omitempty"`
	WindowIdentities []MaintenanceWindowIdentity `json:"WindowIdentities"`
}

DescribeMaintenanceWindowsForTargetOutput is the response payload.

type DescribeMaintenanceWindowsInput

type DescribeMaintenanceWindowsInput struct {
	MaxResults *int64                    `json:"MaxResults,omitempty"`
	NextToken  string                    `json:"NextToken,omitempty"`
	Filters    []MaintenanceWindowFilter `json:"Filters,omitempty"`
}

DescribeMaintenanceWindowsInput is the request payload for DescribeMaintenanceWindows.

type DescribeMaintenanceWindowsOutput

type DescribeMaintenanceWindowsOutput struct {
	NextToken        string                      `json:"NextToken,omitempty"`
	WindowIdentities []MaintenanceWindowIdentity `json:"WindowIdentities"`
}

DescribeMaintenanceWindowsOutput is the response payload for DescribeMaintenanceWindows.

type DescribeOpsItemsInput

type DescribeOpsItemsInput struct {
	MaxResults     *int64          `json:"MaxResults,omitempty"`
	NextToken      string          `json:"NextToken,omitempty"`
	OpsItemFilters []OpsItemFilter `json:"OpsItemFilters,omitempty"`
}

DescribeOpsItemsInput is the request payload for DescribeOpsItems.

type DescribeOpsItemsOutput

type DescribeOpsItemsOutput struct {
	NextToken        string           `json:"NextToken,omitempty"`
	OpsItemSummaries []OpsItemSummary `json:"OpsItemSummaries"`
}

DescribeOpsItemsOutput is the response payload for DescribeOpsItems.

type DescribeParametersInput

type DescribeParametersInput struct {
	MaxResults *int64 `json:"MaxResults,omitempty"`
	// Shared filters to parameters shared with this account from another
	// account. This backend has no cross-account resource sharing for
	// parameters, so Shared=true always yields an empty list -- an honest
	// answer (nothing is ever shared), not a fabricated one.
	Shared           *bool              `json:"Shared,omitempty"`
	NextToken        string             `json:"NextToken,omitempty"`
	ParameterFilters []ParameterFilter  `json:"ParameterFilters,omitempty"`
	Filters          []ParametersFilter `json:"Filters,omitempty"`
}

DescribeParametersInput is the request payload for DescribeParameters.

type DescribeParametersOutput

type DescribeParametersOutput struct {
	NextToken  string              `json:"NextToken,omitempty"`
	Parameters []ParameterMetadata `json:"Parameters"`
}

DescribeParametersOutput is the response payload for DescribeParameters.

type DescribePatchBaselinesInput

type DescribePatchBaselinesInput struct {
	MaxResults *int64                `json:"MaxResults,omitempty"`
	NextToken  string                `json:"NextToken,omitempty"`
	Filters    []PatchBaselineFilter `json:"Filters,omitempty"`
}

DescribePatchBaselinesInput is the request payload for DescribePatchBaselines.

type DescribePatchBaselinesOutput

type DescribePatchBaselinesOutput struct {
	NextToken          string                  `json:"NextToken,omitempty"`
	BaselineIdentities []PatchBaselineIdentity `json:"BaselineIdentities"`
}

DescribePatchBaselinesOutput is the response payload for DescribePatchBaselines.

type DescribePatchGroupStateInput

type DescribePatchGroupStateInput struct {
	PatchGroup string `json:"PatchGroup"`
}

DescribePatchGroupStateInput is the request payload for DescribePatchGroupState.

type DescribePatchGroupStateOutput

type DescribePatchGroupStateOutput struct {
	Instances                                int32 `json:"Instances"`
	InstancesWithCriticalNonCompliantPatches int32 `json:"InstancesWithCriticalNonCompliantPatches"`
	InstancesWithFailedPatches               int32 `json:"InstancesWithFailedPatches"`
	InstancesWithInstalledPatches            int32 `json:"InstancesWithInstalledPatches"`
	InstancesWithInstalledOtherPatches       int32 `json:"InstancesWithInstalledOtherPatches"`
	InstancesWithMissingPatches              int32 `json:"InstancesWithMissingPatches"`
	InstancesWithNotApplicablePatches        int32 `json:"InstancesWithNotApplicablePatches"`
}

DescribePatchGroupStateOutput is the response payload for DescribePatchGroupState.

type DescribePatchGroupsInput

type DescribePatchGroupsInput struct {
	MaxResults *int64        `json:"MaxResults,omitempty"`
	NextToken  string        `json:"NextToken,omitempty"`
	Filters    []PatchFilter `json:"Filters,omitempty"`
}

DescribePatchGroupsInput is the request payload for DescribePatchGroups.

type DescribePatchGroupsOutput

type DescribePatchGroupsOutput struct {
	NextToken string                           `json:"NextToken,omitempty"`
	Mappings  []PatchGroupPatchBaselineMapping `json:"Mappings"`
}

DescribePatchGroupsOutput is the response payload for DescribePatchGroups.

type DescribePatchPropertiesInput

type DescribePatchPropertiesInput struct {
	MaxResults      *int32 `json:"MaxResults,omitempty"`
	OperatingSystem string `json:"OperatingSystem,omitempty"`
	Property        string `json:"Property,omitempty"`
	PatchSet        string `json:"PatchSet,omitempty"`
	NextToken       string `json:"NextToken,omitempty"`
}

DescribePatchPropertiesInput is the request payload for DescribePatchProperties.

type DescribePatchPropertiesOutput

type DescribePatchPropertiesOutput struct {
	NextToken  string              `json:"NextToken,omitempty"`
	Properties []map[string]string `json:"Properties"`
}

DescribePatchPropertiesOutput is the response payload for DescribePatchProperties.

type DescribeSessionsInput

type DescribeSessionsInput struct {
	State      string          `json:"State"`
	NextToken  string          `json:"NextToken,omitempty"`
	Filters    []SessionFilter `json:"Filters,omitempty"`
	MaxResults int32           `json:"MaxResults,omitempty"`
}

DescribeSessionsInput is the request payload.

type DescribeSessionsOutput

type DescribeSessionsOutput struct{}

DescribeSessionsOutput is the response payload.

type DescribeSessionsOutputFull

type DescribeSessionsOutputFull struct {
	NextToken string          `json:"NextToken,omitempty"`
	Sessions  []SessionOutput `json:"Sessions"`
}

DescribeSessionsOutputFull extends the empty stub output.

type DisassociateOpsItemRelatedItemInput

type DisassociateOpsItemRelatedItemInput struct {
	OpsItemID     string `json:"OpsItemId"`
	AssociationID string `json:"AssociationId"`
}

DisassociateOpsItemRelatedItemInput is the request payload.

type DisassociateOpsItemRelatedItemOutput

type DisassociateOpsItemRelatedItemOutput struct{}

DisassociateOpsItemRelatedItemOutput is the response for DisassociateOpsItemRelatedItem.

type Document

type Document struct {
	SchemaVersion          string                  `json:"SchemaVersion"`
	Description            string                  `json:"Description,omitempty"`
	DocumentType           string                  `json:"DocumentType"`
	DocumentFormat         string                  `json:"DocumentFormat"`
	Status                 string                  `json:"Status"`
	StatusInformation      string                  `json:"StatusInformation,omitempty"`
	DefaultVersion         string                  `json:"DefaultVersion"`
	Name                   string                  `json:"Name"`
	DisplayName            string                  `json:"DisplayName,omitempty"`
	Content                string                  `json:"Content"`
	LatestVersion          string                  `json:"LatestVersion"`
	DocumentVersion        string                  `json:"DocumentVersion"`
	TargetType             string                  `json:"TargetType,omitempty"`
	Hash                   string                  `json:"Hash,omitempty"`
	HashType               string                  `json:"HashType,omitempty"`
	Sha1                   string                  `json:"Sha1,omitempty"`
	VersionName            string                  `json:"VersionName,omitempty"`
	AttachmentsInformation []AttachmentInformation `json:"AttachmentsInformation,omitempty"`
	Requires               []DocumentRequires      `json:"Requires,omitempty"`
	PlatformTypes          []string                `json:"PlatformTypes,omitempty"`
	CreatedDate            float64                 `json:"CreatedDate"`
}

Document represents an SSM document.

type DocumentDefaultVersionDescription

type DocumentDefaultVersionDescription struct {
	Name               string `json:"Name"`
	DefaultVersion     string `json:"DefaultVersion"`
	DefaultVersionName string `json:"DefaultVersionName,omitempty"`
}

DocumentDefaultVersionDescription describes a document's default version.

type DocumentDescription

type DocumentDescription struct {
	Description            string                  `json:"Description,omitempty"`
	DocumentVersion        string                  `json:"DocumentVersion"`
	DocumentType           string                  `json:"DocumentType"`
	DocumentFormat         string                  `json:"DocumentFormat"`
	Status                 string                  `json:"Status"`
	StatusInformation      string                  `json:"StatusInformation,omitempty"`
	DefaultVersion         string                  `json:"DefaultVersion"`
	Name                   string                  `json:"Name"`
	DisplayName            string                  `json:"DisplayName,omitempty"`
	SchemaVersion          string                  `json:"SchemaVersion"`
	LatestVersion          string                  `json:"LatestVersion"`
	Hash                   string                  `json:"Hash,omitempty"`
	TargetType             string                  `json:"TargetType,omitempty"`
	HashType               string                  `json:"HashType,omitempty"`
	Sha1                   string                  `json:"Sha1,omitempty"`
	VersionName            string                  `json:"VersionName,omitempty"`
	Owner                  string                  `json:"Owner,omitempty"`
	AttachmentsInformation []AttachmentInformation `json:"AttachmentsInformation,omitempty"`
	Requires               []DocumentRequires      `json:"Requires,omitempty"`
	Tags                   []Tag                   `json:"Tags,omitempty"`
	PlatformTypes          []string                `json:"PlatformTypes,omitempty"`
	Parameters             []DocumentParameter     `json:"Parameters,omitempty"`
	CreatedDate            float64                 `json:"CreatedDate"`
}

DocumentDescription is the document metadata shape returned by CreateDocument, UpdateDocument, and DescribeDocument. Unlike Document (the internal storage representation), AWS's real DocumentDescription structure deliberately omits Content — only GetDocument returns document content, to avoid every metadata call re-transmitting potentially large document bodies.

type DocumentFilter

type DocumentFilter struct {
	Key    string   `json:"Key"`
	Values []string `json:"Values"`
}

DocumentFilter is a filter criterion for ListDocuments.

type DocumentFilterListItem

type DocumentFilterListItem struct {
	Key   string `json:"Key"`
	Value string `json:"Value"`
}

DocumentFilterListItem is types.DocumentFilter (single Value), sent as ListDocuments' DocumentFilterList.

type DocumentIdentifier

type DocumentIdentifier struct {
	Name            string             `json:"Name"`
	DisplayName     string             `json:"DisplayName,omitempty"`
	DocumentType    string             `json:"DocumentType"`
	DocumentFormat  string             `json:"DocumentFormat"`
	DocumentVersion string             `json:"DocumentVersion"`
	SchemaVersion   string             `json:"SchemaVersion"`
	TargetType      string             `json:"TargetType,omitempty"`
	Owner           string             `json:"Owner,omitempty"`
	PlatformTypes   []string           `json:"PlatformTypes,omitempty"`
	Requires        []DocumentRequires `json:"Requires,omitempty"`
	Tags            []Tag              `json:"Tags,omitempty"`
	CreatedDate     float64            `json:"CreatedDate"`
}

DocumentIdentifier is a lightweight document listing entry.

type DocumentMetadataResponseInfo

type DocumentMetadataResponseInfo struct {
	ReviewerResponse []DocumentReviewerResponseSource `json:"ReviewerResponse,omitempty"`
}

DocumentMetadataResponseInfo holds review history.

type DocumentParameter

type DocumentParameter struct {
	Name         string `json:"Name"`
	Type         string `json:"Type,omitempty"`
	Description  string `json:"Description,omitempty"`
	DefaultValue string `json:"DefaultValue,omitempty"`
}

DocumentParameter is one declared document parameter (types.DocumentParameter).

type DocumentRequires

type DocumentRequires struct {
	Name        string `json:"Name"`
	Version     string `json:"Version,omitempty"`
	RequireType string `json:"RequireType,omitempty"`
	VersionName string `json:"VersionName,omitempty"`
}

DocumentRequires describes a document dependency.

type DocumentReviewCommentSource

type DocumentReviewCommentSource struct {
	Type    string `json:"Type,omitempty"`
	Content string `json:"Content,omitempty"`
}

DocumentReviewCommentSource is a single review comment.

type DocumentReviewerResponseSource

type DocumentReviewerResponseSource struct {
	ReviewStatus string                        `json:"ReviewStatus,omitempty"`
	Reviewer     string                        `json:"Reviewer,omitempty"`
	Comment      []DocumentReviewCommentSource `json:"Comment,omitempty"`
	CreatedTime  float64                       `json:"CreatedTime,omitempty"`
	UpdatedTime  float64                       `json:"UpdatedTime,omitempty"`
}

DocumentReviewerResponseSource is a single reviewer response. Fields ordered for alignment.

type DocumentReviews

type DocumentReviews struct {
	Action  string                        `json:"Action"`
	Comment []DocumentReviewCommentSource `json:"Comment,omitempty"`
}

DocumentReviews holds review metadata for a document version.

type DocumentVersion

type DocumentVersion struct {
	Name             string  `json:"Name"`
	DisplayName      string  `json:"DisplayName,omitempty"`
	DocumentVersion  string  `json:"DocumentVersion"`
	DocumentFormat   string  `json:"DocumentFormat"`
	Status           string  `json:"Status"`
	Content          string  `json:"Content,omitempty"`
	VersionName      string  `json:"VersionName,omitempty"`
	CreatedDate      float64 `json:"CreatedDate"`
	IsDefaultVersion bool    `json:"IsDefaultVersion"`
}

DocumentVersion represents a specific version of an SSM document.

type DocumentVersionInfo added in v1.3.3

type DocumentVersionInfo struct {
	Name              string  `json:"Name"`
	DisplayName       string  `json:"DisplayName,omitempty"`
	DocumentVersion   string  `json:"DocumentVersion"`
	DocumentFormat    string  `json:"DocumentFormat"`
	Status            string  `json:"Status"`
	StatusInformation string  `json:"StatusInformation,omitempty"`
	VersionName       string  `json:"VersionName,omitempty"`
	CreatedDate       float64 `json:"CreatedDate"`
	IsDefaultVersion  bool    `json:"IsDefaultVersion"`
}

DocumentVersionInfo is the narrow metadata shape for ListDocumentVersionsOutput matching AWS SDK v2 types.DocumentVersionInfo (api_op_ListDocumentVersions.go). Deliberately omits Content.

type EffectivePatch

type EffectivePatch struct {
	Patch       *Patch       `json:"Patch,omitempty"`
	PatchStatus *PatchStatus `json:"PatchStatus,omitempty"`
}

EffectivePatch represents a patch matched by a baseline rule.

type ExecutionPreview

type ExecutionPreview struct {
	ExecutionPreviewID string `json:"ExecutionPreviewId"`
	Status             string `json:"Status"`
	DocumentName       string `json:"DocumentName"`
}

ExecutionPreview represents a preview of an SSM automation execution.

type FailedCreateAssociation

type FailedCreateAssociation struct {
	Message string                             `json:"Message"`
	Fault   string                             `json:"Fault"`
	Entry   CreateAssociationBatchRequestEntry `json:"Entry"`
}

FailedCreateAssociation represents a failed association entry in a batch.

type GetAccessTokenInput

type GetAccessTokenInput struct {
	AccessRequestID string `json:"AccessRequestId"`
}

GetAccessTokenInput is the request payload.

type GetAccessTokenOutput

type GetAccessTokenOutput struct{}

GetAccessTokenOutput is the response payload.

type GetAccessTokenOutputFull

type GetAccessTokenOutputFull struct {
	Credentials         *Credentials `json:"Credentials,omitempty"`
	AccessRequestStatus string       `json:"AccessRequestStatus"`
}

GetAccessTokenOutputFull extends the empty stub.

type GetAutomationExecutionInput

type GetAutomationExecutionInput struct {
	AutomationExecutionID string `json:"AutomationExecutionId"`
}

GetAutomationExecutionInput is the request payload.

type GetAutomationExecutionOutput

type GetAutomationExecutionOutput struct{}

GetAutomationExecutionOutput is the response payload.

type GetAutomationExecutionOutputFull

type GetAutomationExecutionOutputFull struct {
	AutomationExecution *AutomationExecution `json:"AutomationExecution,omitempty"`
}

GetAutomationExecutionOutputFull extends the empty stub output.

type GetCalendarStateInput

type GetCalendarStateInput struct {
	AtTime        string   `json:"AtTime,omitempty"`
	CalendarNames []string `json:"CalendarNames,omitempty"`
}

GetCalendarStateInput is the request payload.

type GetCalendarStateOutput

type GetCalendarStateOutput struct{}

GetCalendarStateOutput is the response payload.

type GetCalendarStateOutputFull

type GetCalendarStateOutputFull struct {
	State              string `json:"State"`
	AtTime             string `json:"AtTime,omitempty"`
	NextTransitionTime string `json:"NextTransitionTime,omitempty"`
}

GetCalendarStateOutputFull has a State field.

type GetCloudConnectorInput

type GetCloudConnectorInput struct {
	CloudConnectorID string `json:"CloudConnectorId"`
}

GetCloudConnectorInput is the request payload for GetCloudConnector.

type GetCloudConnectorOutput

type GetCloudConnectorOutput struct {
	Configuration      CloudConnectorConfiguration `json:"Configuration"`
	CloudConnectorArn  string                      `json:"CloudConnectorArn"`
	ConfigConnectorArn string                      `json:"ConfigConnectorArn"`
	Description        string                      `json:"Description,omitempty"`
	DisplayName        string                      `json:"DisplayName"`
	RoleArn            string                      `json:"RoleArn"`
	CreatedAt          float64                     `json:"CreatedAt"`
	UpdatedAt          float64                     `json:"UpdatedAt"`
}

GetCloudConnectorOutput is the response payload for GetCloudConnector.

type GetCommandInvocationInput

type GetCommandInvocationInput struct {
	CommandID  string `json:"CommandId"`
	InstanceID string `json:"InstanceId"`
	// PluginName selects one document step's output. This backend has no
	// per-plugin execution model (a whole document runs as a single unit --
	// see CommandPlugins in PARITY.md), so it is accepted and echoed back
	// on the response rather than used to select among plugins.
	PluginName string `json:"PluginName,omitempty"`
}

GetCommandInvocationInput is the request payload for GetCommandInvocation.

type GetCommandInvocationOutput

type GetCommandInvocationOutput struct {
	CommandID              string `json:"CommandId"`
	InstanceID             string `json:"InstanceId"`
	DocumentName           string `json:"DocumentName"`
	DocumentVersion        string `json:"DocumentVersion,omitempty"`
	PluginName             string `json:"PluginName,omitempty"`
	Status                 string `json:"Status"`
	StatusDetails          string `json:"StatusDetails"`
	StandardOutputContent  string `json:"StandardOutputContent,omitempty"`
	StandardErrorContent   string `json:"StandardErrorContent,omitempty"`
	StandardOutputURL      string `json:"StandardOutputUrl,omitempty"`
	StandardErrorURL       string `json:"StandardErrorUrl,omitempty"`
	Comment                string `json:"Comment,omitempty"`
	ExecutionStartDateTime string `json:"ExecutionStartDateTime,omitempty"`
	ExecutionEndDateTime   string `json:"ExecutionEndDateTime,omitempty"`
}

GetCommandInvocationOutput is the response payload for GetCommandInvocation.

type GetConnectionStatusInput

type GetConnectionStatusInput struct {
	Target string `json:"Target"`
}

GetConnectionStatusInput is the request payload.

type GetConnectionStatusOutput

type GetConnectionStatusOutput struct{}

GetConnectionStatusOutput is the response payload.

type GetConnectionStatusOutputFull

type GetConnectionStatusOutputFull struct {
	Target string `json:"Target"`
	Status string `json:"Status"`
}

GetConnectionStatusOutputFull has a status field.

type GetDefaultPatchBaselineInput

type GetDefaultPatchBaselineInput struct {
	OperatingSystem string `json:"OperatingSystem,omitempty"`
}

GetDefaultPatchBaselineInput is the request payload for GetDefaultPatchBaseline.

type GetDefaultPatchBaselineOutput

type GetDefaultPatchBaselineOutput struct {
	BaselineID      string `json:"BaselineId"`
	OperatingSystem string `json:"OperatingSystem,omitempty"`
}

GetDefaultPatchBaselineOutput is the response payload for GetDefaultPatchBaseline.

type GetDeployablePatchSnapshotForInstanceInput

type GetDeployablePatchSnapshotForInstanceInput struct {
	InstanceID             string `json:"InstanceId"`
	SnapshotID             string `json:"SnapshotId"`
	UseS3DualStackEndpoint bool   `json:"UseS3DualStackEndpoint,omitempty"`
}

GetDeployablePatchSnapshotForInstanceInput is the request payload.

type GetDeployablePatchSnapshotForInstanceOutput

type GetDeployablePatchSnapshotForInstanceOutput struct {
	InstanceID          string `json:"InstanceId,omitempty"`
	SnapshotID          string `json:"SnapshotId,omitempty"`
	SnapshotDownloadURL string `json:"SnapshotDownloadUrl,omitempty"`
	Product             string `json:"Product,omitempty"`
}

GetDeployablePatchSnapshotForInstanceOutput is the response payload.

type GetDocumentInput

type GetDocumentInput struct {
	Name            string `json:"Name"`
	DocumentVersion string `json:"DocumentVersion,omitempty"`
	DocumentFormat  string `json:"DocumentFormat,omitempty"`
	VersionName     string `json:"VersionName,omitempty"`
}

GetDocumentInput is the request payload for GetDocument.

type GetDocumentOutput

type GetDocumentOutput struct {
	Name              string             `json:"Name"`
	Content           string             `json:"Content"`
	DisplayName       string             `json:"DisplayName,omitempty"`
	DocumentType      string             `json:"DocumentType"`
	DocumentFormat    string             `json:"DocumentFormat"`
	DocumentVersion   string             `json:"DocumentVersion"`
	Status            string             `json:"Status"`
	StatusInformation string             `json:"StatusInformation,omitempty"`
	VersionName       string             `json:"VersionName,omitempty"`
	Requires          []DocumentRequires `json:"Requires,omitempty"`
	CreatedDate       float64            `json:"CreatedDate"`
}

GetDocumentOutput is the response payload for GetDocument.

type GetExecutionPreviewInput

type GetExecutionPreviewInput struct {
	ExecutionPreviewID string `json:"ExecutionPreviewId"`
}

GetExecutionPreviewInput is the request payload.

type GetExecutionPreviewOutput

type GetExecutionPreviewOutput struct{}

GetExecutionPreviewOutput is the response payload.

type GetExecutionPreviewOutputFull

type GetExecutionPreviewOutputFull struct {
	ExecutionPreview   *ExecutionPreview `json:"ExecutionPreview,omitempty"`
	ExecutionPreviewID string            `json:"ExecutionPreviewId"`
	Status             string            `json:"Status"`
}

GetExecutionPreviewOutputFull extends the empty stub.

type GetInventoryInput

type GetInventoryInput struct {
	MaxResults *int64        `json:"MaxResults,omitempty"`
	NextToken  string        `json:"NextToken,omitempty"`
	Filters    []QueryFilter `json:"Filters,omitempty"`
}

GetInventoryInput is the request payload for GetInventory.

type GetInventoryOutput

type GetInventoryOutput struct {
	NextToken string                  `json:"NextToken,omitempty"`
	Entities  []InventoryResultEntity `json:"Entities"`
}

GetInventoryOutput is the response payload for GetInventory.

type GetInventorySchemaInput

type GetInventorySchemaInput struct {
	MaxResults *int32 `json:"MaxResults,omitempty"`
	TypeName   string `json:"TypeName,omitempty"`
	NextToken  string `json:"NextToken,omitempty"`
}

GetInventorySchemaInput is the request payload for GetInventorySchema.

type GetInventorySchemaOutput

type GetInventorySchemaOutput struct {
	NextToken string `json:"NextToken,omitempty"`
	Schemas   []any  `json:"Schemas"`
}

GetInventorySchemaOutput is the response payload for GetInventorySchema.

type GetMaintenanceWindowExecutionInput

type GetMaintenanceWindowExecutionInput struct {
	WindowID          string `json:"WindowId,omitempty"`
	WindowExecutionID string `json:"WindowExecutionId"`
}

GetMaintenanceWindowExecutionInput is the request payload. WindowID has no member on the real op at all (api_op_GetMaintenanceWindowExecution.go declares only WindowExecutionId) -- harmless for a real aws-sdk-go-v2 caller, which has no struct field to send it in, but kept here as an internal convenience the backend also derives from WindowExecutionId when absent (mwWindowIDFromExec).

type GetMaintenanceWindowExecutionOutput

type GetMaintenanceWindowExecutionOutput struct{}

GetMaintenanceWindowExecutionOutput is the response payload.

type GetMaintenanceWindowExecutionOutputFull

type GetMaintenanceWindowExecutionOutputFull struct {
	WindowID          string  `json:"WindowId"`
	WindowExecutionID string  `json:"WindowExecutionId"`
	Status            string  `json:"Status"`
	StatusDetails     string  `json:"StatusDetails,omitempty"`
	StartTime         float64 `json:"StartTime"`
	EndTime           float64 `json:"EndTime,omitempty"`
}

GetMaintenanceWindowExecutionOutputFull is the response for GetMaintenanceWindowExecution.

type GetMaintenanceWindowExecutionTaskInput

type GetMaintenanceWindowExecutionTaskInput struct {
	WindowExecutionID string `json:"WindowExecutionId"`
	TaskExecutionID   string `json:"TaskId"`
}

GetMaintenanceWindowExecutionTaskInput is the request payload. GetMaintenanceWindowExecutionTaskInput is the request payload. TaskExecutionID's real wire key is "TaskId", NOT "TaskExecutionId" (serializers.go awsAwsjson11_serializeOpDocumentGetMaintenanceWindowExecutionTaskInput emits only "TaskId"/"WindowExecutionId") -- the response side genuinely does use "TaskExecutionId" for a related-but-distinct member, which is presumably how this got confused. Pre-fix, a real client's TaskId was silently dropped by json.Unmarshal on every call.

type GetMaintenanceWindowExecutionTaskInvocationInput

type GetMaintenanceWindowExecutionTaskInvocationInput struct {
	WindowExecutionID string `json:"WindowExecutionId"`
	TaskExecutionID   string `json:"TaskId"`
	InvocationID      string `json:"InvocationId"`
}

GetMaintenanceWindowExecutionTaskInvocationInput is the request payload. GetMaintenanceWindowExecutionTaskInvocationInput is the request payload. TaskExecutionID's real wire key is "TaskId", NOT "TaskExecutionId" (same bug and same class as GetMaintenanceWindowExecutionTaskInput -- confirmed separately against api_op_GetMaintenanceWindowExecutionTaskInvocation.go).

type GetMaintenanceWindowExecutionTaskInvocationOutput

type GetMaintenanceWindowExecutionTaskInvocationOutput struct{}

GetMaintenanceWindowExecutionTaskInvocationOutput is the response payload.

type GetMaintenanceWindowExecutionTaskInvocationOutputFull

type GetMaintenanceWindowExecutionTaskInvocationOutputFull struct {
	WindowExecutionID string  `json:"WindowExecutionId,omitempty"`
	TaskExecutionID   string  `json:"TaskExecutionId,omitempty"`
	InvocationID      string  `json:"InvocationId,omitempty"`
	ExecutionID       string  `json:"ExecutionId,omitempty"`
	TaskType          string  `json:"TaskType,omitempty"`
	OwnerInformation  string  `json:"OwnerInformation,omitempty"`
	Status            string  `json:"Status"`
	StatusDetails     string  `json:"StatusDetails,omitempty"`
	WindowTargetID    string  `json:"WindowTargetId,omitempty"`
	StartTime         float64 `json:"StartTime"`
	EndTime           float64 `json:"EndTime,omitempty"`
}

GetMaintenanceWindowExecutionTaskInvocationOutputFull is the response for GetMaintenanceWindowExecutionTaskInvocation. Parameters (real, the actual command/automation parameters used for this invocation) is not modeled -- this backend does not track per-invocation parameter snapshots, only the task-level defaults (MaintenanceWindowTask), disclosed rather than fabricated.

type GetMaintenanceWindowExecutionTaskOutput

type GetMaintenanceWindowExecutionTaskOutput struct{}

GetMaintenanceWindowExecutionTaskOutput is the response payload.

type GetMaintenanceWindowExecutionTaskOutputFull

type GetMaintenanceWindowExecutionTaskOutputFull struct {
	WindowExecutionID string  `json:"WindowExecutionId,omitempty"`
	TaskExecutionID   string  `json:"TaskExecutionId,omitempty"`
	TaskARN           string  `json:"TaskArn,omitempty"`
	TaskType          string  `json:"Type,omitempty"`
	Status            string  `json:"Status"`
	StatusDetails     string  `json:"StatusDetails,omitempty"`
	MaxConcurrency    string  `json:"MaxConcurrency,omitempty"`
	MaxErrors         string  `json:"MaxErrors,omitempty"`
	ServiceRole       string  `json:"ServiceRole,omitempty"`
	StartTime         float64 `json:"StartTime"`
	EndTime           float64 `json:"EndTime,omitempty"`
	Priority          int32   `json:"Priority,omitempty"`
}

GetMaintenanceWindowExecutionTaskOutputFull is the response for GetMaintenanceWindowExecutionTask. Its task-type member's real wire key is "Type" (deserializers.go awsAwsjson11_deserializeOpDocumentGetMaintenanceWindowExecutionTaskOutput, case "Type") -- an AWS API inconsistency, since the sibling DescribeMaintenanceWindowExecutionTasks/MaintenanceWindowExecutionTaskIdentity really does use "TaskType" for the same concept, confirmed separately. ServiceRole is a real member with no Go field at all.

type GetMaintenanceWindowInput

type GetMaintenanceWindowInput struct {
	WindowID string `json:"WindowId"`
}

GetMaintenanceWindowInput is the request payload for GetMaintenanceWindow.

type GetMaintenanceWindowOutput

type GetMaintenanceWindowOutput struct {
	MaintenanceWindow
}

GetMaintenanceWindowOutput is the response payload for GetMaintenanceWindow.

type GetMaintenanceWindowTaskInput

type GetMaintenanceWindowTaskInput struct {
	WindowID     string `json:"WindowId"`
	WindowTaskID string `json:"WindowTaskId"`
}

GetMaintenanceWindowTaskInput is the request payload for GetMaintenanceWindowTask.

type GetMaintenanceWindowTaskOutput

type GetMaintenanceWindowTaskOutput struct {
	LoggingInfo              *MaintenanceWindowLoggingInfo                  `json:"LoggingInfo,omitempty"`
	TaskInvocationParameters *MaintenanceWindowTaskInvocationParameters     `json:"TaskInvocationParameters,omitempty"`
	TaskParameters           map[string]MaintenanceWindowTaskParameterValue `json:"TaskParameters,omitempty"`
	WindowID                 string                                         `json:"WindowId,omitempty"`
	WindowTaskID             string                                         `json:"WindowTaskId,omitempty"`
	TaskArn                  string                                         `json:"TaskArn,omitempty"`
	TaskType                 string                                         `json:"TaskType,omitempty"`
	Name                     string                                         `json:"Name,omitempty"`
	Description              string                                         `json:"Description,omitempty"`
	ServiceRoleArn           string                                         `json:"ServiceRoleArn,omitempty"`
	MaxConcurrency           string                                         `json:"MaxConcurrency,omitempty"`
	MaxErrors                string                                         `json:"MaxErrors,omitempty"`
	CutoffBehavior           string                                         `json:"CutoffBehavior,omitempty"`
	Targets                  []WindowTarget                                 `json:"Targets,omitempty"`
	Priority                 int32                                          `json:"Priority,omitempty"`
}

GetMaintenanceWindowTaskOutput is the response payload for GetMaintenanceWindowTask. It cannot simply embed MaintenanceWindowTask: despite describing the same concept, the two real response shapes use different wire keys for the task-type member -- GetMaintenanceWindowTaskOutput itself (api_op_GetMaintenanceWindowTask.go) uses "TaskType" (deserializers.go awsAwsjson11_deserializeOpDocumentGetMaintenanceWindowTaskOutput, case "TaskType"), while the shared types.MaintenanceWindowTask used by DescribeMaintenanceWindowTasks uses "Type" instead, confirmed separately.

type GetOpsItemInput

type GetOpsItemInput struct {
	OpsItemID string `json:"OpsItemId"`
}

GetOpsItemInput is the request payload for GetOpsItem.

type GetOpsItemOutput

type GetOpsItemOutput struct {
	OpsItem OpsItemOutput `json:"OpsItem"`
}

GetOpsItemOutput is the response payload for GetOpsItem.

type GetOpsMetadataInput

type GetOpsMetadataInput struct {
	MaxResults     *int32 `json:"MaxResults,omitempty"`
	OpsMetadataArn string `json:"OpsMetadataArn"`
	NextToken      string `json:"NextToken,omitempty"`
}

GetOpsMetadataInput is the request payload for GetOpsMetadata.

type GetOpsMetadataOutput

type GetOpsMetadataOutput struct {
	Metadata   map[string]MetadataValue `json:"Metadata,omitempty"`
	NextToken  string                   `json:"NextToken,omitempty"`
	ResourceID string                   `json:"ResourceId,omitempty"`
}

GetOpsMetadataOutput is the response payload for GetOpsMetadata (real api_op_GetOpsMetadata.go). It is deliberately NOT the full OpsMetadata shape -- the real op has no OpsMetadataArn/CreationDate/LastModifiedDate members at all, only Metadata/NextToken/ResourceId; those other three are members of the OpsMetadata type itself (used by ListOpsMetadata), a different real response shape. NextToken/MaxResults pagination over Metadata's keys is accepted-and-ignored -- disclosed, not implemented.

type GetOpsSummaryInput

type GetOpsSummaryInput struct{}

GetOpsSummaryInput is the request payload. The real GetOpsSummaryInput (api_op_GetOpsSummary.go) also declares Aggregators, Filters, MaxResults, NextToken, ResultAttributes and SyncName, but this backend's GetOpsSummary (ops_items.go) always returns a single fixed "AWS:OpsItem"/Count entity -- it has no queryable multi-type OpsData dataset for Aggregators/ResultAttributes to project across or for Filters to subset, unlike DescribeActivations/ListAssociations/etc, which filter a real typed collection this backend already tracks. Left struct{} deliberately (gopherstack-a250 triage): wiring these members would mean inventing query semantics this backend has no honest state to back.

type GetOpsSummaryOutput

type GetOpsSummaryOutput struct{}

GetOpsSummaryOutput is the response payload.

type GetOpsSummaryOutputFull

type GetOpsSummaryOutputFull struct {
	Entities []OpsSummaryEntity `json:"Entities,omitempty"`
}

GetOpsSummaryOutputFull has summary counts.

type GetParameterHistoryInput

type GetParameterHistoryInput struct {
	Name           string `json:"Name"`
	MaxResults     *int64 `json:"MaxResults,omitempty"` // 0 to 50, defaults to 50
	NextToken      string `json:"NextToken,omitempty"`
	WithDecryption bool   `json:"WithDecryption,omitempty"`
}

GetParameterHistoryInput represents the request payload for GetParameterHistory.

type GetParameterHistoryOutput

type GetParameterHistoryOutput struct {
	NextToken  string                   `json:"NextToken,omitempty"`
	Parameters []ParameterHistoryOutput `json:"Parameters"`
}

GetParameterHistoryOutput represents the response payload for GetParameterHistory.

type GetParameterInput

type GetParameterInput struct {
	Name           string `json:"Name"`
	WithDecryption bool   `json:"WithDecryption,omitempty"`
}

GetParameterInput represents the request payload for GetParameter.

type GetParameterOutput

type GetParameterOutput struct {
	Parameter ParameterOutput `json:"Parameter"`
}

GetParameterOutput represents the response payload for GetParameter.

type GetParametersByPathInput

type GetParametersByPathInput struct {
	MaxResults       *int64            `json:"MaxResults,omitempty"`
	Path             string            `json:"Path"`
	NextToken        string            `json:"NextToken,omitempty"`
	ParameterFilters []ParameterFilter `json:"ParameterFilters,omitempty"`
	WithDecryption   bool              `json:"WithDecryption,omitempty"`
	Recursive        bool              `json:"Recursive,omitempty"`
}

GetParametersByPathInput is the request payload for GetParametersByPath.

type GetParametersByPathOutput

type GetParametersByPathOutput struct {
	NextToken  string            `json:"NextToken,omitempty"`
	Parameters []ParameterOutput `json:"Parameters"`
}

GetParametersByPathOutput is the response payload for GetParametersByPath.

type GetParametersInput

type GetParametersInput struct {
	Names          []string `json:"Names"`
	WithDecryption bool     `json:"WithDecryption,omitempty"`
}

GetParametersInput represents the request payload for GetParameters.

type GetParametersOutput

type GetParametersOutput struct {
	Parameters        []ParameterOutput `json:"Parameters"`
	InvalidParameters []string          `json:"InvalidParameters"`
}

GetParametersOutput represents the response payload for GetParameters.

type GetPatchBaselineForPatchBaselineOutput

type GetPatchBaselineForPatchBaselineOutput struct {
	BaselineID      string `json:"BaselineId"`
	PatchGroup      string `json:"PatchGroup,omitempty"`
	OperatingSystem string `json:"OperatingSystem,omitempty"`
}

GetPatchBaselineForPatchBaselineOutput is the response for GetPatchBaselineForPatchGroup.

type GetPatchBaselineForPatchGroupInput

type GetPatchBaselineForPatchGroupInput struct {
	PatchGroup      string `json:"PatchGroup"`
	OperatingSystem string `json:"OperatingSystem,omitempty"`
}

GetPatchBaselineForPatchGroupInput is the request payload for GetPatchBaselineForPatchGroup.

type GetPatchBaselineInput

type GetPatchBaselineInput struct {
	BaselineID string `json:"BaselineId"`
}

GetPatchBaselineInput is the request payload for GetPatchBaseline.

type GetPatchBaselineOutput

type GetPatchBaselineOutput struct {
	PatchGroups []string `json:"PatchGroups,omitempty"`
	PatchBaseline
}

GetPatchBaselineOutput is the response payload for GetPatchBaseline. PatchGroups (the patch groups currently registered with this baseline) is unique to GetPatchBaselineOutput -- confirmed absent from UpdatePatchBaselineOutput/CreatePatchBaselineOutput in aws-sdk-go-v2/service/ssm@v1.73.4's api_op_UpdatePatchBaseline.go -- so it lives here rather than on the shared embedded PatchBaseline struct.

type GetResourcePoliciesInput

type GetResourcePoliciesInput struct {
	ResourceARN string `json:"ResourceArn"`
	NextToken   string `json:"NextToken"`
	MaxResults  int32  `json:"MaxResults"`
}

GetResourcePoliciesInput is the request payload.

type GetResourcePoliciesOutput

type GetResourcePoliciesOutput struct{}

GetResourcePoliciesOutput is the response payload.

type GetResourcePoliciesOutputFull

type GetResourcePoliciesOutputFull struct {
	NextToken string           `json:"NextToken,omitempty"`
	Policies  []ResourcePolicy `json:"Policies"`
}

GetResourcePoliciesOutputFull extends the empty stub output.

type GetServiceSettingInput

type GetServiceSettingInput struct {
	SettingID string `json:"SettingId"`
}

GetServiceSettingInput is the request payload.

type GetServiceSettingOutput

type GetServiceSettingOutput struct{}

GetServiceSettingOutput is the response payload.

type GetServiceSettingOutputFull

type GetServiceSettingOutputFull struct {
	ServiceSetting *ServiceSetting `json:"ServiceSetting,omitempty"`
}

GetServiceSettingOutputFull extends the empty stub output.

type Handler

type Handler struct {
	Backend StorageBackend
	// contains filtered or unexported fields
}

Handler is the Echo HTTP service handler for SSM operations.

func NewHandler

func NewHandler(backend StorageBackend) *Handler

NewHandler creates a new SSM handler with the given storage backend.

func (*Handler) ChaosOperations

func (h *Handler) ChaosOperations() []string

ChaosOperations returns all operations that can be fault-injected.

func (*Handler) ChaosRegions

func (h *Handler) ChaosRegions() []string

ChaosRegions returns all regions this SSM instance handles.

func (*Handler) ChaosServiceName

func (h *Handler) ChaosServiceName() string

ChaosServiceName returns the lowercase AWS service name for fault rule matching.

func (*Handler) ExtractOperation

func (h *Handler) ExtractOperation(c *echo.Context) string

ExtractOperation attempts to extract the specific SSM operation from the request.

func (*Handler) ExtractResource

func (h *Handler) ExtractResource(c *echo.Context) string

ExtractResource attempts to extract the specific SSM resource from the request.

func (*Handler) GetSupportedOperations

func (h *Handler) GetSupportedOperations() []string

GetSupportedOperations returns the sorted list of mocked SSM operations. The set is derived from the dispatch table itself (built once per Handler in NewHandler from the family ssm*Ops() maps) so it can never drift from what is actually routable.

func (*Handler) Handler

func (h *Handler) Handler() echo.HandlerFunc

Handler is the Echo HTTP handler for SSM operations.

func (*Handler) MatchPriority

func (h *Handler) MatchPriority() int

MatchPriority returns the routing priority for the SSM handler.

func (*Handler) Name

func (h *Handler) Name() string

Name returns the service name.

func (*Handler) Reset

func (h *Handler) Reset()

Reset clears all in-memory state from the backend. It is used by the POST /_gopherstack/reset endpoint for CI pipelines and rapid local development.

func (*Handler) Restore

func (h *Handler) Restore(ctx context.Context, data []byte) error

Restore implements persistence.Persistable by delegating to the backend.

func (*Handler) RouteMatcher

func (h *Handler) RouteMatcher() service.Matcher

RouteMatcher returns a function that matches incoming requests for SSM.

func (*Handler) Snapshot

func (h *Handler) Snapshot(ctx context.Context) []byte

Snapshot implements persistence.Persistable by delegating to the backend.

func (*Handler) StartWorker

func (h *Handler) StartWorker(ctx context.Context) error

StartWorker starts the background janitor if it is configured.

func (*Handler) WithJanitor

func (h *Handler) WithJanitor(interval time.Duration, taskTimeout ...time.Duration) *Handler

WithJanitor attaches a background janitor to the handler. The janitor periodically evicts expired commands. interval=0 uses the default.

type InMemoryBackend

type InMemoryBackend struct {
	// contains filtered or unexported fields
}

InMemoryBackend implements StorageBackend using a concurrency-safe map.

func NewInMemoryBackend

func NewInMemoryBackend() *InMemoryBackend

NewInMemoryBackend creates a new empty InMemoryBackend.

func (*InMemoryBackend) AccountID

func (b *InMemoryBackend) AccountID() string

AccountID returns the mocked AWS account ID used by this backend.

func (*InMemoryBackend) AddTagsToResource

func (b *InMemoryBackend) AddTagsToResource(
	ctx context.Context,
	input *AddTagsToResourceInput,
) error

AddTagsToResource adds or updates tags for a resource.

func (*InMemoryBackend) AssociateOpsItemRelatedItem

AssociateOpsItemRelatedItem associates a related item to an OpsItem.

func (*InMemoryBackend) CancelCommand

func (b *InMemoryBackend) CancelCommand(
	ctx context.Context,
	input *CancelCommandInput,
) (*CancelCommandOutput, error)

CancelCommand cancels a running command (sets status to Cancelled).

func (*InMemoryBackend) CancelMaintenanceWindowExecution

CancelMaintenanceWindowExecution cancels a maintenance window execution. This backend has no state machine for window executions -- they're derived deterministically from the owning window (mwExecID) rather than stored, so there is no CANCELLING/CANCELLED transition to apply. What Cancel CAN do honestly is validate that input.WindowExecutionId actually names a derivable execution of a window that still exists; an unrecognized or stale ID returns the real DoesNotExistException instead of fabricating success, matching GetMaintenanceWindowExecution's existing not-found handling for a known windowID.

func (*InMemoryBackend) CreateActivation

func (b *InMemoryBackend) CreateActivation(
	ctx context.Context,
	input *CreateActivationInput,
) (*CreateActivationOutput, error)

CreateActivation creates a new activation for managed instances.

func (*InMemoryBackend) CreateAssociation

func (b *InMemoryBackend) CreateAssociation(
	ctx context.Context,
	input *CreateAssociationInput,
) (*CreateAssociationOutput, error)

CreateAssociation creates a new association between a document and targets.

func (*InMemoryBackend) CreateAssociationBatch

func (b *InMemoryBackend) CreateAssociationBatch(
	ctx context.Context,
	input *CreateAssociationBatchInput,
) (*CreateAssociationBatchOutput, error)

CreateAssociationBatch creates multiple associations in a batch.

func (*InMemoryBackend) CreateCloudConnector

func (b *InMemoryBackend) CreateCloudConnector(
	ctx context.Context,
	input *CreateCloudConnectorInput,
) (*CreateCloudConnectorOutput, error)

CreateCloudConnector creates a new cloud connector.

func (*InMemoryBackend) CreateDocument

func (b *InMemoryBackend) CreateDocument(
	ctx context.Context,
	input *CreateDocumentInput,
) (*CreateDocumentOutput, error)

CreateDocument stores a new SSM document.

func (*InMemoryBackend) CreateMaintenanceWindow

func (b *InMemoryBackend) CreateMaintenanceWindow(
	ctx context.Context,
	input *CreateMaintenanceWindowInput,
) (*CreateMaintenanceWindowOutput, error)

CreateMaintenanceWindow creates a new maintenance window.

func (*InMemoryBackend) CreateOpsItem

func (b *InMemoryBackend) CreateOpsItem(
	ctx context.Context,
	input *CreateOpsItemInput,
) (*CreateOpsItemOutput, error)

CreateOpsItem creates a new OpsItem.

func (*InMemoryBackend) CreateOpsMetadata

func (b *InMemoryBackend) CreateOpsMetadata(
	ctx context.Context,
	input *CreateOpsMetadataInput,
) (*CreateOpsMetadataOutput, error)

CreateOpsMetadata creates OpsMetadata for a resource.

func (*InMemoryBackend) CreatePatchBaseline

func (b *InMemoryBackend) CreatePatchBaseline(
	ctx context.Context,
	input *CreatePatchBaselineInput,
) (*CreatePatchBaselineOutput, error)

CreatePatchBaseline creates a new patch baseline.

func (*InMemoryBackend) CreateResourceDataSync

func (b *InMemoryBackend) CreateResourceDataSync(
	ctx context.Context,
	input *CreateResourceDataSyncInput,
) (*CreateResourceDataSyncOutput, error)

CreateResourceDataSync stores a new resource data sync configuration. S3Destination and SyncSource are optional on the wire (neither carries "This member is required." in types.go), but api_op_CreateResourceDataSync.go's own doc comment states S3Destination "is required if the SyncType value is SyncToDestination" (the default when SyncType is omitted) and SyncSource "is required if the SyncType value is SyncFromSource" -- enforced here since it is the only signal that distinguishes a sync that will ever have a source/destination from one that silently never will.

func (*InMemoryBackend) DeleteActivation

func (b *InMemoryBackend) DeleteActivation(
	ctx context.Context,
	input *DeleteActivationInput,
) (*DeleteActivationOutput, error)

DeleteActivation removes a stored activation by ID.

func (*InMemoryBackend) DeleteAssociation

func (b *InMemoryBackend) DeleteAssociation(
	ctx context.Context,
	input *DeleteAssociationInput,
) (*DeleteAssociationOutput, error)

DeleteAssociation removes a stored association by ID.

func (*InMemoryBackend) DeleteCloudConnector

func (b *InMemoryBackend) DeleteCloudConnector(
	ctx context.Context,
	input *DeleteCloudConnectorInput,
) (*DeleteCloudConnectorOutput, error)

DeleteCloudConnector deletes a cloud connector.

func (*InMemoryBackend) DeleteDocument

func (b *InMemoryBackend) DeleteDocument(
	ctx context.Context,
	input *DeleteDocumentInput,
) (*DeleteDocumentOutput, error)

DeleteDocument removes a document, or one version of it when DocumentVersion/VersionName is given (see DeleteDocumentInput's doc comment). Real AWS also rejects deleting a still-shared document with InvalidDocumentOperation (ErrDocumentStillShared) -- deserializers.go:2225-2226.

func (*InMemoryBackend) DeleteInventory

func (b *InMemoryBackend) DeleteInventory(
	ctx context.Context,
	input *DeleteInventoryInput,
) (*DeleteInventoryOutput, error)

DeleteInventory removes all inventory for the given TypeName across all instances.

DryRun (real member, api_op_DeleteInventory.go: "view a summary of the deletion request without deleting any data") previously had no Go struct field at all, so a caller validating a delete before committing to it got a real, irreversible delete instead -- more permissive than AWS, which would delete nothing. Now honored: DryRun computes and returns the same summary without mutating the store or recording a deletion job.

func (*InMemoryBackend) DeleteMaintenanceWindow

func (b *InMemoryBackend) DeleteMaintenanceWindow(
	ctx context.Context,
	input *DeleteMaintenanceWindowInput,
) (*DeleteMaintenanceWindowOutput, error)

DeleteMaintenanceWindow removes a maintenance window by ID.

func (*InMemoryBackend) DeleteOpsItem

func (b *InMemoryBackend) DeleteOpsItem(
	ctx context.Context,
	input *DeleteOpsItemInput,
) (*DeleteOpsItemOutput, error)

DeleteOpsItem removes an OpsItem by ID.

func (*InMemoryBackend) DeleteOpsMetadata

func (b *InMemoryBackend) DeleteOpsMetadata(
	ctx context.Context,
	input *DeleteOpsMetadataInput,
) (*DeleteOpsMetadataOutput, error)

DeleteOpsMetadata removes OpsMetadata by ARN.

func (*InMemoryBackend) DeleteParameter

func (b *InMemoryBackend) DeleteParameter(
	ctx context.Context,
	input *DeleteParameterInput,
) (*DeleteParameterOutput, error)

DeleteParameter deletes a single parameter.

func (*InMemoryBackend) DeleteParameters

func (b *InMemoryBackend) DeleteParameters(
	ctx context.Context,
	input *DeleteParametersInput,
) (*DeleteParametersOutput, error)

DeleteParameters deletes multiple parameters.

func (*InMemoryBackend) DeletePatchBaseline

func (b *InMemoryBackend) DeletePatchBaseline(
	ctx context.Context,
	input *DeletePatchBaselineInput,
) (*DeletePatchBaselineOutput, error)

DeletePatchBaseline removes a patch baseline by ID.

func (*InMemoryBackend) DeleteResourceDataSync

func (b *InMemoryBackend) DeleteResourceDataSync(
	ctx context.Context,
	input *DeleteResourceDataSyncInput,
) (*DeleteResourceDataSyncOutput, error)

DeleteResourceDataSync removes a resource data sync by name.

func (*InMemoryBackend) DeleteResourcePolicy

func (b *InMemoryBackend) DeleteResourcePolicy(
	ctx context.Context,
	input *DeleteResourcePolicyInput,
) (*DeleteResourcePolicyOutput, error)

DeleteResourcePolicy removes a policy from a resource. ResourceArn, PolicyId and PolicyHash are all required on the real DeleteResourcePolicyInput (api_op_DeleteResourcePolicy.go) -- PolicyHash exists specifically "to prevent multiple calls from attempting to overwrite a policy", so a mismatch is a real ResourcePolicyConflictException, not a silent success.

func (*InMemoryBackend) DeregisterManagedInstance

DeregisterManagedInstance removes the activation associated with a managed instance ID. The InstanceID field is treated as the ActivationID in this in-memory implementation.

func (*InMemoryBackend) DeregisterPatchBaselineForPatchGroup

DeregisterPatchBaselineForPatchGroup removes a patch group association.

func (*InMemoryBackend) DeregisterTargetFromMaintenanceWindow

DeregisterTargetFromMaintenanceWindow removes a target from a maintenance window.

func (*InMemoryBackend) DeregisterTaskFromMaintenanceWindow

DeregisterTaskFromMaintenanceWindow removes a task from a maintenance window.

func (*InMemoryBackend) DescribeActivations

func (b *InMemoryBackend) DescribeActivations(
	ctx context.Context,
	input *DescribeActivationsInput,
) (*DescribeActivationsOutput, error)

DescribeActivations lists stored activations, filtered by input.Filters and paginated by input.MaxResults/NextToken -- real, optional DescribeActivationsInput members (api_op_DescribeActivations.go) a literal struct{} input previously discarded from every request.

func (*InMemoryBackend) DescribeAssociation

func (b *InMemoryBackend) DescribeAssociation(
	ctx context.Context,
	input *DescribeAssociationInput,
) (*DescribeAssociationOutput, error)

DescribeAssociation retrieves an association by name or ID.

func (*InMemoryBackend) DescribeAssociationExecutionTargets

DescribeAssociationExecutionTargets returns the stored targets for a specific association execution. When no ExecutionId is supplied the latest execution is used; both the execution and its targets are stable across calls.

func (*InMemoryBackend) DescribeAssociationExecutions

DescribeAssociationExecutions returns the stored execution history for an association. Records are stable across calls (unlike a freshly minted UUID per request). When the association has no recorded executions yet, one is created lazily so a valid association is never reported as never-run.

func (*InMemoryBackend) DescribeAutomationExecutions

DescribeAutomationExecutions returns automation executions, filtered by input.Filters and paginated by input.MaxResults/NextToken -- real, optional DescribeAutomationExecutionsInput members (api_op_DescribeAutomationExecutions.go) a literal struct{} input previously discarded from every request.

func (*InMemoryBackend) DescribeAutomationStepExecutions

DescribeAutomationStepExecutions returns step executions for an automation.

func (*InMemoryBackend) DescribeAvailablePatches

func (b *InMemoryBackend) DescribeAvailablePatches(
	ctx context.Context,
	input *DescribeAvailablePatchesInput,
) (*DescribeAvailablePatchesOutput, error)

DescribeAvailablePatches returns patches from the available patches catalog, lazily seeding it with the built-in catalogue (defaultPatchCatalog) on the region's first access rather than leaving it permanently empty.

func (*InMemoryBackend) DescribeDocument

func (b *InMemoryBackend) DescribeDocument(
	ctx context.Context,
	input *DescribeDocumentInput,
) (*DescribeDocumentOutput, error)

DescribeDocument returns document metadata.

func (*InMemoryBackend) DescribeDocumentPermission

DescribeDocumentPermission returns the sharing permissions for a document, paginated by MaxResults/NextToken (previously unimplemented: every call returned the full unpaginated list regardless of MaxResults).

func (*InMemoryBackend) DescribeEffectiveInstanceAssociations

DescribeEffectiveInstanceAssociations returns associations targeting an instance.

func (*InMemoryBackend) DescribeEffectivePatchesForPatchBaseline

DescribeEffectivePatchesForPatchBaseline returns the effective patch set for a baseline, derived from its approved/rejected patches plus the region's available-patches catalogue (see effectivePatchesForBaseline). BaselineId is required (confirmed via validateOpDescribeEffectivePatchesForPatchBaselineInput in aws-sdk-go-v2/service/ssm@v1.73.4's validators.go).

func (*InMemoryBackend) DescribeInstanceAssociationsStatus

DescribeInstanceAssociationsStatus returns status of associations on an instance.

func (*InMemoryBackend) DescribeInstanceInformation

DescribeInstanceInformation returns information about managed instances from activations, filtered by input.Filters/InstanceInformationFilterList and paginated by input.MaxResults/NextToken -- real, optional DescribeInstanceInformationInput members (api_op_DescribeInstanceInformation.go) a literal struct{} input previously discarded from every request.

func (*InMemoryBackend) DescribeInstancePatchStates

DescribeInstancePatchStates returns patch compliance state for instances.

func (*InMemoryBackend) DescribeInstancePatchStatesForPatchGroup

DescribeInstancePatchStatesForPatchGroup returns patch states filtered by patch group.

func (*InMemoryBackend) DescribeInstancePatches

func (b *InMemoryBackend) DescribeInstancePatches(
	ctx context.Context,
	input *DescribeInstancePatchesInput,
) (*DescribeInstancePatchesOutput, error)

DescribeInstancePatches returns patch compliance data for an instance.

func (*InMemoryBackend) DescribeInstanceProperties

DescribeInstanceProperties returns properties for managed instances. DescribeInstanceProperties returns properties for managed instances. Any explicitly-stored InstanceProperty (from an earlier UpdateInstanceInformation- style write) wins; every other registered managed instance (i.e. every activation, mirroring DescribeInstanceInformation) is reported too, so the response reflects real registered instances rather than a permanently-empty map.

func (*InMemoryBackend) DescribeInventoryDeletions

DescribeInventoryDeletions returns the recorded DeleteInventory jobs, optionally filtered to a single DeletionId, backed by real stored state.

func (*InMemoryBackend) DescribeMaintenanceWindowExecutionTaskInvocations

DescribeMaintenanceWindowExecutionTaskInvocations returns invocations for a task execution. Derives the window ID from the execution ID and returns one invocation per registered target.

func (*InMemoryBackend) DescribeMaintenanceWindowExecutionTasks

DescribeMaintenanceWindowExecutionTasks returns task executions for a window execution. Derives the window ID from the execution ID and looks up registered tasks for that window.

func (*InMemoryBackend) DescribeMaintenanceWindowExecutions

DescribeMaintenanceWindowExecutions returns execution records for a window. When the window exists it returns a single synthetic execution record derived from the window's state (simulating that the window has run once).

func (*InMemoryBackend) DescribeMaintenanceWindowSchedule

DescribeMaintenanceWindowSchedule returns the upcoming schedule for a window.

func (*InMemoryBackend) DescribeMaintenanceWindowTargets

DescribeMaintenanceWindowTargets lists targets registered with a maintenance window.

func (*InMemoryBackend) DescribeMaintenanceWindowTasks

DescribeMaintenanceWindowTasks lists tasks registered with a maintenance window.

func (*InMemoryBackend) DescribeMaintenanceWindows

DescribeMaintenanceWindows lists maintenance windows.

func (*InMemoryBackend) DescribeMaintenanceWindowsForTarget

DescribeMaintenanceWindowsForTarget returns windows that have registered targets matching the given resource type and target key/value filters.

func (*InMemoryBackend) DescribeOpsItems

func (b *InMemoryBackend) DescribeOpsItems(
	ctx context.Context,
	input *DescribeOpsItemsInput,
) (*DescribeOpsItemsOutput, error)

DescribeOpsItems lists OpsItems.

func (*InMemoryBackend) DescribeParameters

func (b *InMemoryBackend) DescribeParameters(
	ctx context.Context,
	input *DescribeParametersInput,
) (*DescribeParametersOutput, error)

DescribeParameters returns metadata for all parameters (no values).

func (*InMemoryBackend) DescribePatchBaselines

func (b *InMemoryBackend) DescribePatchBaselines(
	ctx context.Context,
	input *DescribePatchBaselinesInput,
) (*DescribePatchBaselinesOutput, error)

DescribePatchBaselines lists patch baselines with optional OS and name filters.

func (*InMemoryBackend) DescribePatchGroupState

func (b *InMemoryBackend) DescribePatchGroupState(
	ctx context.Context,
	input *DescribePatchGroupStateInput,
) (*DescribePatchGroupStateOutput, error)

DescribePatchGroupState returns aggregated patch counts for a patch group.

func (*InMemoryBackend) DescribePatchGroups

func (b *InMemoryBackend) DescribePatchGroups(
	ctx context.Context,
	input *DescribePatchGroupsInput,
) (*DescribePatchGroupsOutput, error)

DescribePatchGroups lists the patch group to baseline mappings.

func (*InMemoryBackend) DescribePatchProperties

func (b *InMemoryBackend) DescribePatchProperties(
	ctx context.Context,
	input *DescribePatchPropertiesInput,
) (*DescribePatchPropertiesOutput, error)

DescribePatchProperties returns property data aggregated from patch baselines. OperatingSystem and Property are both required (confirmed via validateOpDescribePatchPropertiesInput in aws-sdk-go-v2/service/ssm@v1.73.4's validators.go). Real AWS instead aggregates distinct values of the requested Property (PRODUCT/ PRODUCT_FAMILY/CLASSIFICATION/MSRC_SEVERITY/PRIORITY/SEVERITY) from its patch catalogue for the given OS; this emulator does not consult either input field and instead lists baseline name/OS pairs -- disclosed rather than fixed, since the real per-Property map-key convention isn't verifiable from the pinned SDK's untyped []map[string]string output (same class as GetInventorySchema.Attributes).

func (*InMemoryBackend) DescribeSessions

func (b *InMemoryBackend) DescribeSessions(
	ctx context.Context,
	input *DescribeSessionsInput,
) (*DescribeSessionsOutputFull, error)

DescribeSessions returns sessions from the in-memory store.

func (*InMemoryBackend) DisassociateOpsItemRelatedItem

DisassociateOpsItemRelatedItem removes a related item from an OpsItem.

func (*InMemoryBackend) GetAccessToken

func (b *InMemoryBackend) GetAccessToken(
	ctx context.Context,
	input *GetAccessTokenInput,
) (*GetAccessTokenOutputFull, error)

GetAccessToken exchanges an approved just-in-time access request for temporary security credentials.

func (*InMemoryBackend) GetAutomationExecution

GetAutomationExecution returns an automation execution by ID.

func (*InMemoryBackend) GetCalendarState

func (b *InMemoryBackend) GetCalendarState(
	ctx context.Context,
	input *GetCalendarStateInput,
) (*GetCalendarStateOutputFull, error)

GetCalendarState returns the current state of an SSM Change Calendar. When CalendarNames is provided, each name is looked up as a ChangeCalendar document. Non-existent names result in an error. The returned state is OPEN unless a ChangeCalendar document explicitly has a Closed state in its content.

func (*InMemoryBackend) GetCloudConnector

func (b *InMemoryBackend) GetCloudConnector(
	ctx context.Context,
	input *GetCloudConnectorInput,
) (*GetCloudConnectorOutput, error)

GetCloudConnector returns detailed information about a cloud connector.

func (*InMemoryBackend) GetCommandInvocation

func (b *InMemoryBackend) GetCommandInvocation(
	ctx context.Context,
	input *GetCommandInvocationInput,
) (*GetCommandInvocationOutput, error)

GetCommandInvocation returns the stored invocation for the given command and instance.

func (*InMemoryBackend) GetConnectionStatus

GetConnectionStatus returns the connection status of a target session.

func (*InMemoryBackend) GetDefaultPatchBaseline

func (b *InMemoryBackend) GetDefaultPatchBaseline(
	ctx context.Context,
	input *GetDefaultPatchBaselineInput,
) (*GetDefaultPatchBaselineOutput, error)

GetDefaultPatchBaseline returns the baseline registered for "default" or a hard-coded fallback baseline ID.

func (*InMemoryBackend) GetDeployablePatchSnapshotForInstance

GetDeployablePatchSnapshotForInstance returns the deployable patch snapshot for an instance. The snapshot is backed by the instance's effective patch baseline (looked up via its recorded patch state or the default baseline for its OS) rather than a random URL, and the Product reflects the real baseline OS. A caller-supplied SnapshotId is preserved so repeated calls are stable.

func (*InMemoryBackend) GetDocument

func (b *InMemoryBackend) GetDocument(
	ctx context.Context,
	input *GetDocumentInput,
) (*GetDocumentOutput, error)

GetDocument retrieves a document's content.

func (*InMemoryBackend) GetExecutionPreview

GetExecutionPreview returns an execution preview by ID.

func (*InMemoryBackend) GetInventory

func (b *InMemoryBackend) GetInventory(
	ctx context.Context,
	input *GetInventoryInput,
) (*GetInventoryOutput, error)

GetInventory returns stored inventory entities across all instances.

func (*InMemoryBackend) GetInventorySchema

func (b *InMemoryBackend) GetInventorySchema(
	_ context.Context,
	input *GetInventorySchemaInput,
) (*GetInventorySchemaOutput, error)

GetInventorySchema returns the built-in AWS SSM inventory schema types. When TypeName is provided, only schemas matching that prefix are returned.

func (*InMemoryBackend) GetMaintenanceWindow

func (b *InMemoryBackend) GetMaintenanceWindow(
	ctx context.Context,
	input *GetMaintenanceWindowInput,
) (*GetMaintenanceWindowOutput, error)

GetMaintenanceWindow retrieves a maintenance window by ID.

func (*InMemoryBackend) GetMaintenanceWindowExecution

GetMaintenanceWindowExecution returns a specific window execution. Derives timing and status from the window record identified by the execution ID.

func (*InMemoryBackend) GetMaintenanceWindowExecutionTask

GetMaintenanceWindowExecutionTask returns a specific task within a window execution. Looks up the stored task record and returns its full attributes.

func (*InMemoryBackend) GetMaintenanceWindowExecutionTaskInvocation

GetMaintenanceWindowExecutionTaskInvocation returns a specific task invocation. Derives target information from the stored window target records.

func (*InMemoryBackend) GetMaintenanceWindowTask

func (b *InMemoryBackend) GetMaintenanceWindowTask(
	ctx context.Context,
	input *GetMaintenanceWindowTaskInput,
) (*GetMaintenanceWindowTaskOutput, error)

GetMaintenanceWindowTask retrieves a task by WindowId and WindowTaskId.

func (*InMemoryBackend) GetOpsItem

func (b *InMemoryBackend) GetOpsItem(
	ctx context.Context,
	input *GetOpsItemInput,
) (*GetOpsItemOutput, error)

GetOpsItem retrieves an OpsItem by ID.

func (*InMemoryBackend) GetOpsMetadata

func (b *InMemoryBackend) GetOpsMetadata(
	ctx context.Context,
	input *GetOpsMetadataInput,
) (*GetOpsMetadataOutput, error)

GetOpsMetadata retrieves OpsMetadata by ARN.

func (*InMemoryBackend) GetOpsSummary

GetOpsSummary returns a summary count of ops items.

func (*InMemoryBackend) GetParameter

func (b *InMemoryBackend) GetParameter(
	ctx context.Context,
	input *GetParameterInput,
) (*GetParameterOutput, error)

GetParameter retrieves a single parameter. The name may carry a version or label selector suffix (e.g. "/a/b:3" or "/a/b:prod"), in which case the matching version is returned and echoed back via Parameter.Selector. The response always includes the parameter ARN.

func (*InMemoryBackend) GetParameterHistory

func (b *InMemoryBackend) GetParameterHistory(
	ctx context.Context,
	input *GetParameterHistoryInput,
) (*GetParameterHistoryOutput, error)

func (*InMemoryBackend) GetParameters

func (b *InMemoryBackend) GetParameters(
	ctx context.Context,
	input *GetParametersInput,
) (*GetParametersOutput, error)

GetParameters retrieves multiple parameters. Missing names are returned as InvalidParameters.

func (*InMemoryBackend) GetParametersByPath

func (b *InMemoryBackend) GetParametersByPath(
	ctx context.Context,
	input *GetParametersByPathInput,
) (*GetParametersByPathOutput, error)

GetParametersByPath returns parameters whose names begin with the given path.

func (*InMemoryBackend) GetPatchBaseline

func (b *InMemoryBackend) GetPatchBaseline(
	ctx context.Context,
	input *GetPatchBaselineInput,
) (*GetPatchBaselineOutput, error)

GetPatchBaseline retrieves a patch baseline by ID.

func (*InMemoryBackend) GetPatchBaselineForPatchGroup

GetPatchBaselineForPatchGroup looks up the baseline for a given patch group. PatchGroup is required (confirmed via validateOpGetPatchBaselineForPatchGroupInput in aws-sdk-go-v2/service/ssm@v1.73.4's validators.go).

func (*InMemoryBackend) GetResourcePolicies

GetResourcePolicies returns policies attached to a resource.

func (*InMemoryBackend) GetServiceSetting

GetServiceSetting returns the value for a service setting.

func (*InMemoryBackend) LabelParameterVersion

LabelParameterVersion adds labels to a specific parameter version. When ParameterVersion is 0, labels are applied to the latest version.

func (*InMemoryBackend) ListAll

func (b *InMemoryBackend) ListAll(ctx context.Context) []Parameter

ListAll returns all parameters sorted by name (useful for Dashboard UI).

func (*InMemoryBackend) ListAssociationVersions

ListAssociationVersions returns the version history of an association.

func (*InMemoryBackend) ListAssociations

func (b *InMemoryBackend) ListAssociations(
	ctx context.Context,
	input *ListAssociationsInput,
) (*ListAssociationsOutputFull, error)

ListAssociations lists stored associations, filtered by input.AssociationFilterList and paginated by input.MaxResults/NextToken -- real, optional ListAssociationsInput members (api_op_ListAssociations.go) a literal struct{} input previously discarded from every request.

func (*InMemoryBackend) ListCloudConnectors

func (b *InMemoryBackend) ListCloudConnectors(
	ctx context.Context,
	input *ListCloudConnectorsInput,
) (*ListCloudConnectorsOutput, error)

ListCloudConnectors returns cloud connectors in the current account/region, optionally filtered by SubscriptionId/TenantId, paginated via the same opaque index-token scheme DescribeParameters/DescribeDocuments use.

func (*InMemoryBackend) ListCommandInvocations

func (b *InMemoryBackend) ListCommandInvocations(
	ctx context.Context,
	input *ListCommandInvocationsInput,
) (*ListCommandInvocationsOutput, error)

ListCommandInvocations returns invocations for a given command.

func (*InMemoryBackend) ListCommands

func (b *InMemoryBackend) ListCommands(
	ctx context.Context,
	input *ListCommandsInput,
) (*ListCommandsOutput, error)

ListCommands returns recorded commands.

func (*InMemoryBackend) ListComplianceItems

func (b *InMemoryBackend) ListComplianceItems(
	ctx context.Context,
	input *ListComplianceItemsInput,
) (*ListComplianceItemsOutput, error)

ListComplianceItems returns stored compliance items, optionally filtered by ResourceId/ResourceType.

func (*InMemoryBackend) ListComplianceSummaries

func (b *InMemoryBackend) ListComplianceSummaries(
	ctx context.Context,
	input *ListComplianceSummariesInput,
) (*ListComplianceSummariesOutput, error)

ListComplianceSummaries aggregates stored compliance items by ComplianceType.

func (*InMemoryBackend) ListDocumentMetadataHistory

ListDocumentMetadataHistory returns an empty approval history. The in-memory backend does not track document review history; this returns a well-formed empty response consistent with the stateless stub approach.

func (*InMemoryBackend) ListDocumentVersions

func (b *InMemoryBackend) ListDocumentVersions(
	ctx context.Context,
	input *ListDocumentVersionsInput,
) (*ListDocumentVersionsOutput, error)

ListDocumentVersions returns all versions of a document.

func (*InMemoryBackend) ListDocuments

func (b *InMemoryBackend) ListDocuments(
	ctx context.Context,
	input *ListDocumentsInput,
) (*ListDocumentsOutput, error)

ListDocuments returns a list of document identifiers filtered by key-value criteria.

func (*InMemoryBackend) ListInventoryEntries

func (b *InMemoryBackend) ListInventoryEntries(
	ctx context.Context,
	input *ListInventoryEntriesInput,
) (*ListInventoryEntriesOutput, error)

ListInventoryEntries returns stored inventory entries for an instance and type.

func (*InMemoryBackend) ListNodes

func (b *InMemoryBackend) ListNodes(
	ctx context.Context,
	input *ListNodesInput,
) (*ListNodesOutputFull, error)

ListNodes returns managed nodes derived from the activations store, filtered by input.Filters and paginated by input.MaxResults/NextToken -- all real, optional ListNodesInput members (api_op_ListNodes.go:31-53) that a literal struct{} input previously discarded from every request.

func (*InMemoryBackend) ListNodesSummary

func (b *InMemoryBackend) ListNodesSummary(
	ctx context.Context,
	input *ListNodesSummaryInput,
) (*ListNodesSummaryOutputFull, error)

ListNodesSummary returns real per-attribute node counts grouped by the caller's Aggregators, matching ListNodesSummaryInput/Output (api_op_ListNodesSummary.go:31-78, ssm@v1.73.4): Aggregators is required and actually drives the grouping instead of being ignored in favor of a synthetic constant.

func (*InMemoryBackend) ListOpsItemEvents

func (b *InMemoryBackend) ListOpsItemEvents(
	ctx context.Context,
	input *ListOpsItemEventsInput,
) (*ListOpsItemEventsOutput, error)

ListOpsItemEvents returns tracked events for OpsItems, optionally filtered by OpsItemID.

func (*InMemoryBackend) ListOpsItemRelatedItems

func (b *InMemoryBackend) ListOpsItemRelatedItems(
	ctx context.Context,
	input *ListOpsItemRelatedItemsInput,
) (*ListOpsItemRelatedItemsOutput, error)

ListOpsItemRelatedItems returns stored related items for an OpsItem.

func (*InMemoryBackend) ListOpsMetadata

func (b *InMemoryBackend) ListOpsMetadata(
	ctx context.Context,
	input *ListOpsMetadataInput,
) (*ListOpsMetadataOutputFull, error)

ListOpsMetadata returns ops metadata entries, filtered by input.Filters and paginated by input.MaxResults/NextToken -- real, optional ListOpsMetadataInput members (api_op_ListOpsMetadata.go) a literal struct{} input previously discarded from every request.

func (*InMemoryBackend) ListResourceComplianceSummaries

ListResourceComplianceSummaries returns per-resource compliance summaries derived from stored compliance items.

func (*InMemoryBackend) ListResourceDataSync

ListResourceDataSync returns resource data syncs, filtered by input.SyncType and paginated by input.MaxResults/NextToken -- real, optional ListResourceDataSyncInput members (api_op_ListResourceDataSync.go) a literal struct{} input previously discarded from every request.

func (*InMemoryBackend) ListTagsForResource

func (b *InMemoryBackend) ListTagsForResource(
	ctx context.Context,
	input *ListTagsForResourceInput,
) (*ListTagsForResourceOutput, error)

ListTagsForResource returns all tags for a resource.

func (*InMemoryBackend) ModifyDocumentPermission

func (b *InMemoryBackend) ModifyDocumentPermission(
	ctx context.Context,
	input *ModifyDocumentPermissionInput,
) (*ModifyDocumentPermissionOutput, error)

ModifyDocumentPermission updates the sharing permissions for a document. SharedDocumentVersion is pinned per account in documentSharedVersionsStore; an omitted SharedDocumentVersion shares the document's current DefaultVersion instead, matching api_op_ModifyDocumentPermission.go:51-53.

func (*InMemoryBackend) PutComplianceItems

func (b *InMemoryBackend) PutComplianceItems(
	ctx context.Context,
	input *PutComplianceItemsInput,
) (*PutComplianceItemsOutput, error)

PutComplianceItems stores compliance items for a resource. Both COMPLETE (default) and PARTIAL UploadType scope the write to ComplianceType, per the SDK doc comment ("this call overwrites existing compliance information on the resource" for COMPLETE; PARTIAL "overwrites compliance information for a specific association" -- api_op_PutComplianceItems.go): a resource's items for a different ComplianceType (e.g. Patch vs Association) are never touched by either mode. PARTIAL additionally merges into the existing items of that ComplianceType by Id instead of replacing them outright.

func (*InMemoryBackend) PutInventory

func (b *InMemoryBackend) PutInventory(
	ctx context.Context,
	input *PutInventoryInput,
) (*PutInventoryOutput, error)

PutInventory stores inventory items for an instance. It fails if InstanceId is empty AND Items are provided.

func (*InMemoryBackend) PutParameter

func (b *InMemoryBackend) PutParameter(
	ctx context.Context,
	input *PutParameterInput,
) (*PutParameterOutput, error)

func (*InMemoryBackend) PutResourcePolicy

PutResourcePolicy creates or updates a policy attached to a resource. Real AWS: omitting PolicyId creates a new policy; supplying PolicyId (and PolicyHash, for optimistic concurrency) updates the existing one in place (api_op_PutResourcePolicy.go doc comment: "Creates or updates ... To update a policy, you must specify PolicyId and PolicyHash").

func (*InMemoryBackend) Region

func (b *InMemoryBackend) Region() string

Region returns the mocked AWS region used by this backend.

func (*InMemoryBackend) RegisterDefaultPatchBaseline

RegisterDefaultPatchBaseline sets the default patch baseline. BaselineId is required (confirmed via validateOpRegisterDefaultPatchBaselineInput in aws-sdk-go-v2/service/ssm@v1.73.4's validators.go).

func (*InMemoryBackend) RegisterPatchBaselineForPatchGroup

RegisterPatchBaselineForPatchGroup associates a baseline with a patch group.

func (*InMemoryBackend) RegisterTargetWithMaintenanceWindow

RegisterTargetWithMaintenanceWindow registers a target with a maintenance window.

func (*InMemoryBackend) RegisterTaskWithMaintenanceWindow

RegisterTaskWithMaintenanceWindow registers a task with a maintenance window.

func (*InMemoryBackend) RemoveTagsFromResource

func (b *InMemoryBackend) RemoveTagsFromResource(
	ctx context.Context,
	input *RemoveTagsFromResourceInput,
) error

RemoveTagsFromResource removes tags from a resource.

func (*InMemoryBackend) Reset

func (b *InMemoryBackend) Reset()

Reset clears all in-memory state from the backend. It is used by the POST /_gopherstack/reset endpoint for CI pipelines and rapid local development.

func (*InMemoryBackend) ResetServiceSetting

ResetServiceSetting removes any custom value for a service setting.

func (*InMemoryBackend) Restore

func (b *InMemoryBackend) Restore(ctx context.Context, data []byte) error

Restore loads backend state from a JSON snapshot.

func (*InMemoryBackend) ResumeSession

func (b *InMemoryBackend) ResumeSession(
	ctx context.Context,
	input *ResumeSessionInput,
) (*ResumeSessionOutputFull, error)

ResumeSession resumes a disconnected session.

func (*InMemoryBackend) SendAutomationSignal

func (b *InMemoryBackend) SendAutomationSignal(
	ctx context.Context,
	input *SendAutomationSignalInput,
) (*SendAutomationSignalOutput, error)

SendAutomationSignal sends a signal to an automation execution. Approve/Reject signals update the execution status accordingly. Payload (real, required for StartStep/StopStep/Resume to name the target step) is accepted but not consulted -- this backend has no per-step InProgress/ Waiting state for a signal to target (completeAutomationLocked drives every step straight to Success), same simplification already disclosed for WarningMessage.

func (*InMemoryBackend) SendCommand

func (b *InMemoryBackend) SendCommand(
	ctx context.Context,
	input *SendCommandInput,
) (*SendCommandOutput, error)

SendCommand creates a command and drives it through the AWS state machine: Pending → InProgress → Success (synchronous no-op runner path).

func (*InMemoryBackend) SetParameterPolicyNotifier added in v1.2.0

func (b *InMemoryBackend) SetParameterPolicyNotifier(n ParameterPolicyNotifier)

SetParameterPolicyNotifier configures the notifier used to publish Parameter Store policy-action events (see ParameterPolicyNotifier). Safe to call at any time, including after the janitor is already running. A nil notifier (the default) makes the policy-notification sweep a no-op -- nothing is evaluated or marked as notified while unconfigured, so once a real notifier is injected, any policy that became due in the meantime is still reported on the next sweep rather than lost.

func (*InMemoryBackend) Snapshot

func (b *InMemoryBackend) Snapshot(ctx context.Context) []byte

Snapshot serialises the backend state to JSON.

func (*InMemoryBackend) StartAccessRequest

StartAccessRequest creates a just-in-time node access request. gopherstack has no approver workflow to model, so every request is auto-approved immediately (Status="Approved") rather than left "Pending" forever, which would make GetAccessToken permanently unusable against it.

func (*InMemoryBackend) StartAssociationsOnce

func (b *InMemoryBackend) StartAssociationsOnce(
	ctx context.Context,
	input *StartAssociationsOnceInput,
) (*StartAssociationsOnceOutput, error)

StartAssociationsOnce triggers a one-time run of the given associations.

func (*InMemoryBackend) StartAutomationExecution

StartAutomationExecution creates a new automation execution.

func (*InMemoryBackend) StartChangeRequestExecution

StartChangeRequestExecution creates a change request automation execution. Runbooks is a required StartChangeRequestExecutionInput member (verified against validateOpStartChangeRequestExecutionInput, validators.go), each entry's own DocumentName required whenever present (validateRunbook) -- the pre-fix request read only the top-level DocumentName (the change template document) and built steps from it directly, when the actual Automation runbook(s) to run live in Runbooks instead.

func (*InMemoryBackend) StartExecutionPreview

StartExecutionPreview creates an execution preview.

func (*InMemoryBackend) StartSession

func (b *InMemoryBackend) StartSession(
	ctx context.Context,
	input *StartSessionInput,
) (*StartSessionOutput, error)

StartSession creates a new SSM Session Manager session.

func (*InMemoryBackend) StopAutomationExecution

func (b *InMemoryBackend) StopAutomationExecution(
	ctx context.Context,
	input *StopAutomationExecutionInput,
) (*StopAutomationExecutionOutput, error)

StopAutomationExecution marks an automation execution as stopped. Type (Cancel/Complete, types.StopType) selects the terminal status: Complete finishes the execution successfully, Cancel (the default, matching the real op's own doc comment) cancels it. Real AutomationExecutionStatus (types/enums.go) has no "Stopped" value at all -- Cancelled is correct.

func (*InMemoryBackend) TerminateSession

func (b *InMemoryBackend) TerminateSession(
	ctx context.Context,
	input *TerminateSessionInput,
) (*TerminateSessionOutput, error)

TerminateSession terminates an active SSM session.

func (*InMemoryBackend) UnlabelParameterVersion

UnlabelParameterVersion removes labels from a specific parameter version. When ParameterVersion is 0, labels are removed from the latest version.

func (*InMemoryBackend) UpdateAssociation

func (b *InMemoryBackend) UpdateAssociation(
	ctx context.Context,
	input *UpdateAssociationInput,
) (*UpdateAssociationOutput, error)

UpdateAssociation updates an existing association.

func (*InMemoryBackend) UpdateAssociationStatus

UpdateAssociationStatus updates the status of an association.

func (*InMemoryBackend) UpdateCloudConnector

func (b *InMemoryBackend) UpdateCloudConnector(
	ctx context.Context,
	input *UpdateCloudConnectorInput,
) (*UpdateCloudConnectorOutput, error)

UpdateCloudConnector updates an existing cloud connector's configuration/description/name.

func (*InMemoryBackend) UpdateDocument

func (b *InMemoryBackend) UpdateDocument(
	ctx context.Context,
	input *UpdateDocumentInput,
) (*UpdateDocumentOutput, error)

UpdateDocument increments the document version and updates content.

func (*InMemoryBackend) UpdateDocumentDefaultVersion

UpdateDocumentDefaultVersion sets the DefaultVersion field on an existing document. It fails if the document or the requested version does not exist, or if Name/DocumentVersion (both required on the real op) are omitted.

func (*InMemoryBackend) UpdateDocumentMetadata

func (b *InMemoryBackend) UpdateDocumentMetadata(
	ctx context.Context,
	input *UpdateDocumentMetadataInput,
) (*UpdateDocumentMetadataOutput, error)

UpdateDocumentMetadata updates document reviews metadata. This is a lightweight implementation that acknowledges the request and returns success without modifying stored state (the AWS API is complex and review state is not tracked in this in-memory implementation).

func (*InMemoryBackend) UpdateMaintenanceWindow

func (b *InMemoryBackend) UpdateMaintenanceWindow(
	ctx context.Context,
	input *UpdateMaintenanceWindowInput,
) (*UpdateMaintenanceWindowOutput, error)

UpdateMaintenanceWindow updates a maintenance window.

func (*InMemoryBackend) UpdateMaintenanceWindowTarget

UpdateMaintenanceWindowTarget updates target fields.

func (*InMemoryBackend) UpdateMaintenanceWindowTask

UpdateMaintenanceWindowTask updates task fields.

func (*InMemoryBackend) UpdateManagedInstanceRole

UpdateManagedInstanceRole updates the IAM role for a managed instance's activation.

func (*InMemoryBackend) UpdateOpsItem

func (b *InMemoryBackend) UpdateOpsItem(
	ctx context.Context,
	input *UpdateOpsItemInput,
) (*UpdateOpsItemOutput, error)

UpdateOpsItem updates an OpsItem including OperationalData.

func (*InMemoryBackend) UpdateOpsMetadata

func (b *InMemoryBackend) UpdateOpsMetadata(
	ctx context.Context,
	input *UpdateOpsMetadataInput,
) (*UpdateOpsMetadataOutput, error)

UpdateOpsMetadata updates OpsMetadata.

func (*InMemoryBackend) UpdatePatchBaseline

func (b *InMemoryBackend) UpdatePatchBaseline(
	ctx context.Context,
	input *UpdatePatchBaselineInput,
) (*UpdatePatchBaselineOutput, error)

UpdatePatchBaseline updates a patch baseline.

func (*InMemoryBackend) UpdateResourceDataSync

func (b *InMemoryBackend) UpdateResourceDataSync(
	ctx context.Context,
	input *UpdateResourceDataSyncInput,
) (*UpdateResourceDataSyncOutput, error)

UpdateResourceDataSync updates an existing resource data sync. SyncType and SyncSource are, along with SyncName, required UpdateResourceDataSyncInput members (verified against validateOpUpdateResourceDataSyncInput, validators.go); SyncSource's own SourceType/SourceRegions are required whenever SyncSource is present (validateResourceDataSyncSource). The pre-fix handler read only SyncName, silently no-opped (returned success) on an empty one instead of erroring, and never errored on an unknown sync name either -- this API only supports updating a SyncFromSource sync (doc comment on api_op_UpdateResourceDataSync.go), which is what the fix below now actually models.

func (*InMemoryBackend) UpdateServiceSetting

func (b *InMemoryBackend) UpdateServiceSetting(
	ctx context.Context,
	input *UpdateServiceSettingInput,
) (*UpdateServiceSettingOutput, error)

UpdateServiceSetting stores a custom value for a service setting.

func (*InMemoryBackend) ValidateCloudConnector

func (b *InMemoryBackend) ValidateCloudConnector(
	ctx context.Context,
	input *ValidateCloudConnectorInput,
) (*ValidateCloudConnectorOutput, error)

ValidateCloudConnector validates a cloud connector's configuration and connectivity. gopherstack has no real Azure tenant to call out to, so the returned findings are derived deterministically from the connector's own persisted configuration (tenant/subscription IDs) rather than a fabricated always-success response: a connector missing its Azure tenant configuration reports an ERROR finding, and a correctly configured one reports one INFO finding per targeted scope (tenant, then each subscription).

func (*InMemoryBackend) WithAutomationExecDelay

func (b *InMemoryBackend) WithAutomationExecDelay(d time.Duration) *InMemoryBackend

WithAutomationExecDelay sets how long a StartAutomationExecution stays in the InProgress state before reaching a terminal status. Zero (the default) completes automations synchronously; a positive delay makes the InProgress window observable, with reads lazily completing the execution once elapsed.

func (*InMemoryBackend) WithCommandExecDelay

func (b *InMemoryBackend) WithCommandExecDelay(d time.Duration) *InMemoryBackend

WithCommandExecDelay sets how long a SendCommand invocation stays in the InProgress state before completing. The default of zero means commands complete synchronously (fast). A positive delay makes the InProgress window observable to SDK waiters: reads lazily complete the command once the delay has elapsed.

func (*InMemoryBackend) WithCommandHistoryRetention

func (b *InMemoryBackend) WithCommandHistoryRetention(d time.Duration) *InMemoryBackend

WithCommandHistoryRetention sets the janitor's command-history window, independent of WithCommandTTL. A zero or negative value keeps the default.

func (*InMemoryBackend) WithCommandTTL

func (b *InMemoryBackend) WithCommandTTL(d time.Duration) *InMemoryBackend

WithCommandTTL sets the TTL used for the ExpiresAfter field on new commands. A zero or negative value falls back to the default (3600 seconds / 1 hour).

func (*InMemoryBackend) WithKMS

WithKMS attaches a KMSEncryptor so SecureString parameters whose KeyID is set are encrypted/decrypted using the real KMS backend instead of the built-in mock key.

type InstanceAssociationInfo

type InstanceAssociationInfo struct {
	AssociationID      string `json:"AssociationId"`
	AssociationVersion string `json:"AssociationVersion"`
	Content            string `json:"Content,omitempty"`
	InstanceID         string `json:"InstanceId"`
}

InstanceAssociationInfo mirrors types.InstanceAssociation (ssm@v1.73.4, api_op_DescribeEffectiveInstanceAssociations.go): AssociationId, AssociationVersion, Content and InstanceId. Name and DocumentVersion are not real members of this type -- they were previously emitted here in error, and InstanceId (always known: it's the input filter key) was silently dropped instead. Content is resolved from the stored document version via Association.Name/DocumentVersion.

type InstanceAssociationOutputLocation added in v1.2.0

type InstanceAssociationOutputLocation struct {
	S3Location *S3OutputLocation `json:"S3Location,omitempty"`
}

InstanceAssociationOutputLocation is an S3 bucket where an association's execution results are stored (CreateAssociationInput.OutputLocation / AssociationDescription.OutputLocation).

type InstanceAssociationStatusInfo

type InstanceAssociationStatusInfo struct {
	AssociationID      string  `json:"AssociationId"`
	AssociationName    string  `json:"AssociationName,omitempty"`
	AssociationVersion string  `json:"AssociationVersion,omitempty"`
	DocumentVersion    string  `json:"DocumentVersion,omitempty"`
	InstanceID         string  `json:"InstanceId"`
	Name               string  `json:"Name"`
	Status             string  `json:"Status"`
	ExecutionDate      float64 `json:"ExecutionDate"`
}

InstanceAssociationStatusInfo has status of an association on an instance. Mirrors types.InstanceAssociationStatusInfo (ssm@v1.73.4). AssociationVersion/DocumentVersion/InstanceId/AssociationName are all real members this backend already tracks on the underlying Association (assoc.AssociationVersion/DocumentVersion/InstanceID/AssociationName) but previously never echoed here. DetailedStatus/ErrorCode/ExecutionSummary/ OutputUrl remain unmodeled -- no per-execution detail/error/S3-output state exists in this backend's synchronous association model.

type InstanceInformation

type InstanceInformation struct {
	InstanceID       string  `json:"InstanceId"`
	PingStatus       string  `json:"PingStatus"`
	AgentVersion     string  `json:"AgentVersion"`
	PlatformType     string  `json:"PlatformType"`
	RegistrationDate float64 `json:"RegistrationDate"`
}

InstanceInformation represents info about a managed instance.

type InstanceInformationFilterEntry added in v1.3.1

type InstanceInformationFilterEntry struct {
	Key      string   `json:"key,omitempty"`
	ValueSet []string `json:"valueSet,omitempty"`
}

InstanceInformationFilterEntry filters DescribeInstanceInformation results by the legacy InstanceInformationFilterList member (deprecated by the real API in favor of Filters/InstanceInformationStringFilter above, but still a live request field -- types.InstanceInformationFilter).

type InstanceInformationStringFilterEntry added in v1.3.1

type InstanceInformationStringFilterEntry struct {
	Key    string   `json:"Key,omitempty"`
	Values []string `json:"Values,omitempty"`
}

InstanceInformationStringFilterEntry filters DescribeInstanceInformation results by a free-form key (api_op_DescribeInstanceInformation.go Filters member, types.InstanceInformationStringFilter).

type InstancePatchState

type InstancePatchState struct {
	InstanceID         string  `json:"InstanceId"`
	PatchGroup         string  `json:"PatchGroup"`
	BaselineID         string  `json:"BaselineId"`
	Operation          string  `json:"Operation"`
	OperationStartTime float64 `json:"OperationStartTime"`
	OperationEndTime   float64 `json:"OperationEndTime"`
	FailedCount        int     `json:"FailedCount"`
	InstalledCount     int     `json:"InstalledCount"`
	MissingCount       int     `json:"MissingCount"`
}

InstancePatchState represents patch compliance state for an instance. OperationEndTime is a real required member (types.InstancePatchState, ssm@v1.73.4) that had no Go field at all -- always nil on the wire even though every patch operation this backend runs completes synchronously.

type InstancePatchStateFilter

type InstancePatchStateFilter struct {
	Key    string   `json:"Key"`
	Type   string   `json:"Type,omitempty"`
	Values []string `json:"Values"`
}

InstancePatchStateFilter filters patch states by field.

type InstanceProperty

type InstanceProperty struct {
	InstanceID      string `json:"InstanceId"`
	Name            string `json:"Name,omitempty"`
	PlatformType    string `json:"PlatformType,omitempty"`
	PlatformName    string `json:"PlatformName,omitempty"`
	PlatformVersion string `json:"PlatformVersion,omitempty"`
	PingStatus      string `json:"PingStatus,omitempty"`
	AgentVersion    string `json:"AgentVersion,omitempty"`
	ActivationID    string `json:"ActivationId,omitempty"`
}

InstanceProperty represents properties of a managed instance.

type InstancePropertyFilter

type InstancePropertyFilter struct {
	Key      string   `json:"Key"`
	ValueSet []string `json:"ValueSet"`
}

InstancePropertyFilter filters instance properties.

type InstancePropertyStringFilter

type InstancePropertyStringFilter struct {
	Key      string   `json:"Key"`
	Operator string   `json:"Operator,omitempty"`
	Values   []string `json:"Values"`
}

InstancePropertyStringFilter filters instance properties by string field.

type InventoryDeletion

type InventoryDeletion struct {
	DeletionSummary   *InventoryDeletionSummary `json:"DeletionSummary,omitempty"`
	DeletionID        string                    `json:"DeletionId"`
	TypeName          string                    `json:"TypeName"`
	LastStatus        string                    `json:"LastStatus"`
	LastStatusMessage string                    `json:"LastStatusMessage,omitempty"`
	DeletionStartTime float64                   `json:"DeletionStartTime"`

	LastStatusUpdateTime float64 `json:"LastStatusUpdateTime,omitempty"`
}

InventoryDeletion is a record of a DeleteInventory job, returned by DescribeInventoryDeletions.

type InventoryDeletionSummary

type InventoryDeletionSummary struct {
	SummaryItems   []any `json:"SummaryItems,omitempty"`
	RemainingCount int   `json:"RemainingCount"`
	TotalCount     int   `json:"TotalCount"`
}

InventoryDeletionSummary summarises the outcome of a DeleteInventory job.

type InventoryItem

type InventoryItem struct {
	Context       map[string]string   `json:"Context,omitempty"`
	TypeName      string              `json:"TypeName"`
	SchemaVersion string              `json:"SchemaVersion,omitempty"`
	CaptureTime   string              `json:"CaptureTime,omitempty"`
	ContentHash   string              `json:"ContentHash,omitempty"`
	Content       []map[string]string `json:"Content,omitempty"`
}

type InventoryResultEntity

type InventoryResultEntity struct {
	Data map[string]InventoryTypeData `json:"Data,omitempty"`
	ID   string                       `json:"Id"`
}

InventoryResultEntity represents inventory results for a single instance.

type InventorySchemaItem

type InventorySchemaItem struct {
	TypeName string `json:"TypeName"`
	Version  string `json:"Version"`
}

InventorySchemaItem represents a single inventory schema type entry.

type InventoryTypeData

type InventoryTypeData struct {
	TypeName      string              `json:"TypeName"`
	SchemaVersion string              `json:"SchemaVersion,omitempty"`
	CaptureTime   string              `json:"CaptureTime,omitempty"`
	ContentHash   string              `json:"ContentHash,omitempty"`
	Content       []map[string]string `json:"Content,omitempty"`
}

InventoryTypeData holds the data for a single inventory type.

type Janitor

type Janitor struct {
	Backend  *InMemoryBackend
	Interval time.Duration
	// TaskTimeout bounds each individual janitor task. When non-zero, each task
	// runs with a child context that expires after this duration, preventing a
	// stalled operation from blocking the janitor loop indefinitely.
	TaskTimeout time.Duration
}

Janitor is the SSM background worker that evicts expired commands and their invocations to prevent unbounded growth of in-memory state.

func NewJanitor

func NewJanitor(backend *InMemoryBackend, interval time.Duration) *Janitor

NewJanitor creates a new SSM Janitor for the given backend. If interval is zero it falls back to defaultSSMJanitorInterval.

func (*Janitor) Run

func (j *Janitor) Run(ctx context.Context)

Run runs the janitor loop until ctx is cancelled.

func (*Janitor) SweepOnce

func (j *Janitor) SweepOnce(ctx context.Context)

SweepOnce runs a single sweep pass. Exposed for testing.

sweepParameterPolicyNotifications runs before sweepExpiredParameters so an ExpirationNotification due in the same tick a parameter's Expiration policy also becomes due still gets reported before the parameter (and its policy-notification dedupe state) is deleted.

type KMSEncryptor

type KMSEncryptor interface {
	// EncryptSSM encrypts plaintext using the given KMS key and returns ciphertext bytes.
	EncryptSSM(keyID string, plaintext []byte) ([]byte, error)
	// DecryptSSM decrypts ciphertext and returns plaintext bytes.
	DecryptSSM(ciphertext []byte) ([]byte, error)
}

KMSEncryptor provides symmetric encrypt/decrypt for SecureString parameters. Implemented by an adapter wrapping the KMS backend.

type LabelParameterVersionInput

type LabelParameterVersionInput struct {
	Name             string   `json:"Name"`
	Labels           []string `json:"Labels"`
	ParameterVersion int64    `json:"ParameterVersion,omitempty"`
}

LabelParameterVersionInput is the request payload.

type LabelParameterVersionOutput

type LabelParameterVersionOutput struct{}

LabelParameterVersionOutput is the response payload.

type LabelParameterVersionOutputFull

type LabelParameterVersionOutputFull struct {
	InvalidLabels []string `json:"InvalidLabels"`
	// ParameterVersion is the version of the parameter the labels were attached
	// to. AWS returns this so callers know which version a label-without-version
	// request resolved to.
	ParameterVersion int64 `json:"ParameterVersion"`
}

LabelParameterVersionOutputFull extends the empty stub.

type ListAssociationVersionsInput

type ListAssociationVersionsInput struct {
	MaxResults    *int64 `json:"MaxResults,omitempty"`
	AssociationID string `json:"AssociationId"`
	NextToken     string `json:"NextToken,omitempty"`
}

ListAssociationVersionsInput is the request payload.

type ListAssociationVersionsOutput

type ListAssociationVersionsOutput struct{}

ListAssociationVersionsOutput is the response payload.

type ListAssociationVersionsOutputFull

type ListAssociationVersionsOutputFull struct {
	NextToken           string                   `json:"NextToken,omitempty"`
	AssociationVersions []AssociationVersionInfo `json:"AssociationVersions"`
}

ListAssociationVersionsOutputFull extends the empty output.

type ListAssociationsInput

type ListAssociationsInput struct {
	MaxResults            *int32                   `json:"MaxResults,omitempty"`
	NextToken             string                   `json:"NextToken,omitempty"`
	AssociationFilterList []AssociationFilterEntry `json:"AssociationFilterList,omitempty"`
}

ListAssociationsInput is the request payload.

type ListAssociationsOutput

type ListAssociationsOutput struct {
	Associations []Association `json:"Associations"`
}

ListAssociationsOutput is the response payload.

type ListAssociationsOutputFull

type ListAssociationsOutputFull struct {
	NextToken    string               `json:"NextToken,omitempty"`
	Associations []AssociationSummary `json:"Associations"`
}

ListAssociationsOutputFull extends the stub list output.

type ListCloudConnectorsInput

type ListCloudConnectorsInput struct {
	MaxResults *int64                 `json:"MaxResults,omitempty"`
	NextToken  string                 `json:"NextToken,omitempty"`
	Filters    []CloudConnectorFilter `json:"Filters,omitempty"`
}

ListCloudConnectorsInput is the request payload for ListCloudConnectors.

type ListCloudConnectorsOutput

type ListCloudConnectorsOutput struct {
	NextToken       string                  `json:"NextToken,omitempty"`
	CloudConnectors []CloudConnectorSummary `json:"CloudConnectors"`
}

ListCloudConnectorsOutput is the response payload for ListCloudConnectors.

type ListCommandInvocationsInput

type ListCommandInvocationsInput struct {
	MaxResults *int64          `json:"MaxResults,omitempty"`
	CommandID  string          `json:"CommandId,omitempty"`
	InstanceID string          `json:"InstanceId,omitempty"`
	NextToken  string          `json:"NextToken,omitempty"`
	Filters    []CommandFilter `json:"Filters,omitempty"`
	Details    bool            `json:"Details,omitempty"`
}

ListCommandInvocationsInput is the request payload for ListCommandInvocations. ListCommandInvocationsInput is the request payload for ListCommandInvocations.

Details is not modeled: real AWS only populates CommandInvocation. CommandPlugins (per-plugin status/output) when Details=true, and this backend has no CommandPlugin type or per-plugin execution state at all (CommandInvocation stores one flat stdout/stderr per invocation) -- accepted on the wire and otherwise inert.

type ListCommandInvocationsOutput

type ListCommandInvocationsOutput struct {
	NextToken          string              `json:"NextToken,omitempty"`
	CommandInvocations []CommandInvocation `json:"CommandInvocations"`
}

ListCommandInvocationsOutput is the response payload for ListCommandInvocations.

type ListCommandsInput

type ListCommandsInput struct {
	MaxResults *int64          `json:"MaxResults,omitempty"`
	CommandID  string          `json:"CommandId,omitempty"`
	InstanceID string          `json:"InstanceId,omitempty"`
	NextToken  string          `json:"NextToken,omitempty"`
	Filters    []CommandFilter `json:"Filters,omitempty"`
}

ListCommandsInput is the request payload for ListCommands.

type ListCommandsOutput

type ListCommandsOutput struct {
	NextToken string    `json:"NextToken,omitempty"`
	Commands  []Command `json:"Commands"`
}

ListCommandsOutput is the response payload for ListCommands.

type ListComplianceItemsInput

type ListComplianceItemsInput struct {
	Filters       []QueryFilter `json:"Filters,omitempty"`
	MaxResults    *int64        `json:"MaxResults,omitempty"`
	NextToken     string        `json:"NextToken,omitempty"`
	ResourceIDs   []string      `json:"ResourceIds,omitempty"`
	ResourceTypes []string      `json:"ResourceTypes,omitempty"`
}

ListComplianceItemsInput is the request payload for ListComplianceItems. ResourceIds/ResourceTypes are real *list* members (api_op_ListComplianceItems.go) -- previously gopherstack modeled a singular "ResourceId" wire key that no real client ever sends, so filtering silently never matched.

type ListComplianceItemsOutput

type ListComplianceItemsOutput struct {
	NextToken       string           `json:"NextToken,omitempty"`
	ComplianceItems []ComplianceItem `json:"ComplianceItems"`
}

ListComplianceItemsOutput is the response payload for ListComplianceItems.

type ListComplianceSummariesInput

type ListComplianceSummariesInput struct {
	MaxResults *int64        `json:"MaxResults,omitempty"`
	NextToken  string        `json:"NextToken,omitempty"`
	Filters    []QueryFilter `json:"Filters,omitempty"`
}

ListComplianceSummariesInput is the request payload.

type ListComplianceSummariesOutput

type ListComplianceSummariesOutput struct {
	NextToken              string `json:"NextToken,omitempty"`
	ComplianceSummaryItems []any  `json:"ComplianceSummaryItems"`
}

ListComplianceSummariesOutput is the response payload.

type ListDocumentMetadataHistoryInput

type ListDocumentMetadataHistoryInput struct {
	MaxResults      *int64 `json:"MaxResults,omitempty"`
	Name            string `json:"Name"`
	DocumentVersion string `json:"DocumentVersion,omitempty"`
	Metadata        string `json:"Metadata,omitempty"`
	NextToken       string `json:"NextToken,omitempty"`
}

ListDocumentMetadataHistoryInput is the request payload. Fields ordered for alignment.

type ListDocumentMetadataHistoryOutput

type ListDocumentMetadataHistoryOutput struct {
	Metadata        *DocumentMetadataResponseInfo `json:"Metadata,omitempty"`
	Name            string                        `json:"Name,omitempty"`
	DocumentVersion string                        `json:"DocumentVersion,omitempty"`
	Author          string                        `json:"Author,omitempty"`
	NextToken       string                        `json:"NextToken,omitempty"`
}

ListDocumentMetadataHistoryOutput is the response payload.

type ListDocumentVersionsInput

type ListDocumentVersionsInput struct {
	Name       string `json:"Name"`
	MaxResults *int64 `json:"MaxResults,omitempty"`
	NextToken  string `json:"NextToken,omitempty"`
}

ListDocumentVersionsInput is the request payload for ListDocumentVersions.

type ListDocumentVersionsOutput

type ListDocumentVersionsOutput struct {
	NextToken        string                `json:"NextToken,omitempty"`
	DocumentVersions []DocumentVersionInfo `json:"DocumentVersions"`
}

ListDocumentVersionsOutput is the response payload for ListDocumentVersions.

type ListDocumentsInput

type ListDocumentsInput struct {
	MaxResults         *int64                   `json:"MaxResults,omitempty"`
	NextToken          string                   `json:"NextToken,omitempty"`
	Filters            []DocumentFilter         `json:"Filters,omitempty"`
	DocumentFilterList []DocumentFilterListItem `json:"DocumentFilterList,omitempty"`
}

ListDocumentsInput is the request payload for ListDocuments.

type ListDocumentsOutput

type ListDocumentsOutput struct {
	NextToken           string               `json:"NextToken,omitempty"`
	DocumentIdentifiers []DocumentIdentifier `json:"DocumentIdentifiers"`
}

ListDocumentsOutput is the response payload for ListDocuments.

type ListInventoryEntriesInput

type ListInventoryEntriesInput struct {
	MaxResults *int64        `json:"MaxResults,omitempty"`
	InstanceID string        `json:"InstanceId"`
	TypeName   string        `json:"TypeName"`
	NextToken  string        `json:"NextToken,omitempty"`
	Filters    []QueryFilter `json:"Filters,omitempty"`
}

ListInventoryEntriesInput is the request payload for ListInventoryEntries.

type ListInventoryEntriesOutput

type ListInventoryEntriesOutput struct {
	InstanceID    string              `json:"InstanceId,omitempty"`
	TypeName      string              `json:"TypeName,omitempty"`
	NextToken     string              `json:"NextToken,omitempty"`
	CaptureTime   string              `json:"CaptureTime,omitempty"`
	SchemaVersion string              `json:"SchemaVersion,omitempty"`
	Entries       []map[string]string `json:"Entries"`
}

ListInventoryEntriesOutput is the response payload for ListInventoryEntries. CaptureTime/SchemaVersion (real members, api_op_ListInventoryEntries.go) were previously absent entirely -- the matched InventoryItem already carries both, they were just never echoed back on the response envelope.

type ListNodesInput

type ListNodesInput struct {
	MaxResults *int32       `json:"MaxResults,omitempty"`
	NextToken  string       `json:"NextToken,omitempty"`
	SyncName   string       `json:"SyncName,omitempty"`
	Filters    []NodeFilter `json:"Filters,omitempty"`
}

ListNodesInput is the request payload. Matches ListNodesInput in the pinned SDK (api_op_ListNodes.go:31-53): Filters, MaxResults, NextToken and SyncName are all optional -- unlike ListNodesSummaryInput's Aggregators, nothing here is required, so an empty body is genuinely valid. The previous literal struct{} still had a real bug: it silently discarded Filters/MaxResults/NextToken/SyncName from every real request instead of declining to bind them because none were required.

type ListNodesOutput

type ListNodesOutput struct{}

ListNodesOutput is the response payload.

type ListNodesOutputFull

type ListNodesOutputFull struct {
	NextToken string `json:"NextToken,omitempty"`
	Nodes     []Node `json:"Nodes"`
}

ListNodesOutputFull has nodes list.

type ListNodesSummaryInput

type ListNodesSummaryInput struct {
	MaxResults  *int32           `json:"MaxResults,omitempty"`
	NextToken   string           `json:"NextToken,omitempty"`
	SyncName    string           `json:"SyncName,omitempty"`
	Aggregators []NodeAggregator `json:"Aggregators"`
	Filters     []NodeFilter     `json:"Filters,omitempty"`
}

ListNodesSummaryInput is the request payload. Field set matches ListNodesSummaryInput in the pinned SDK (api_op_ListNodesSummary.go:31-62): Aggregators is required.

type ListNodesSummaryOutput

type ListNodesSummaryOutput struct{}

ListNodesSummaryOutput is the response payload.

type ListNodesSummaryOutputFull

type ListNodesSummaryOutputFull struct {
	NextToken string              `json:"NextToken,omitempty"`
	Summary   []map[string]string `json:"Summary"`
}

ListNodesSummaryOutputFull has summary.

type ListOpsItemEventsInput

type ListOpsItemEventsInput struct {
	MaxResults *int64            `json:"MaxResults,omitempty"`
	OpsItemID  string            `json:"OpsItemId,omitempty"`
	NextToken  string            `json:"NextToken,omitempty"`
	Filters    []OpsItemFilterKV `json:"Filters,omitempty"`
}

ListOpsItemEventsInput is the request payload.

type ListOpsItemEventsOutput

type ListOpsItemEventsOutput struct {
	NextToken string                `json:"NextToken,omitempty"`
	Summaries []OpsItemEventSummary `json:"Summaries"`
}

ListOpsItemEventsOutput is the response payload.

type ListOpsItemRelatedItemsInput

type ListOpsItemRelatedItemsInput struct {
	MaxResults *int64            `json:"MaxResults,omitempty"`
	OpsItemID  string            `json:"OpsItemId,omitempty"`
	NextToken  string            `json:"NextToken,omitempty"`
	Filters    []OpsItemFilterKV `json:"Filters,omitempty"`
}

ListOpsItemRelatedItemsInput is the request payload.

type ListOpsItemRelatedItemsOutput

type ListOpsItemRelatedItemsOutput struct {
	NextToken string               `json:"NextToken,omitempty"`
	Summaries []OpsItemRelatedItem `json:"Summaries"`
}

ListOpsItemRelatedItemsOutput is the response payload.

type ListOpsMetadataInput

type ListOpsMetadataInput struct {
	MaxResults *int32                   `json:"MaxResults,omitempty"`
	NextToken  string                   `json:"NextToken,omitempty"`
	Filters    []OpsMetadataFilterEntry `json:"Filters,omitempty"`
}

ListOpsMetadataInput is the request payload.

type ListOpsMetadataOutput

type ListOpsMetadataOutput struct{}

ListOpsMetadataOutput is the response payload.

type ListOpsMetadataOutputFull

type ListOpsMetadataOutputFull struct {
	NextToken       string                `json:"NextToken,omitempty"`
	OpsMetadataList []OpsMetadataListItem `json:"OpsMetadataList"`
}

ListOpsMetadataOutputFull extends the empty output.

type ListResourceComplianceSummariesInput

type ListResourceComplianceSummariesInput struct {
	MaxResults *int64        `json:"MaxResults,omitempty"`
	NextToken  string        `json:"NextToken,omitempty"`
	Filters    []QueryFilter `json:"Filters,omitempty"`
}

ListResourceComplianceSummariesInput is the request payload.

type ListResourceComplianceSummariesOutput

type ListResourceComplianceSummariesOutput struct {
	NextToken                      string `json:"NextToken,omitempty"`
	ResourceComplianceSummaryItems []any  `json:"ResourceComplianceSummaryItems"`
}

ListResourceComplianceSummariesOutput is the response payload.

type ListResourceDataSyncInput

type ListResourceDataSyncInput struct {
	MaxResults *int32 `json:"MaxResults,omitempty"`
	NextToken  string `json:"NextToken,omitempty"`
	SyncType   string `json:"SyncType,omitempty"`
}

ListResourceDataSyncInput is the request payload.

type ListResourceDataSyncOutput

type ListResourceDataSyncOutput struct{}

ListResourceDataSyncOutput is the response payload.

type ListResourceDataSyncOutputFull

type ListResourceDataSyncOutputFull struct {
	NextToken             string             `json:"NextToken,omitempty"`
	ResourceDataSyncItems []ResourceDataSync `json:"ResourceDataSyncItems"`
}

ListResourceDataSyncOutputFull extends the empty stub output.

type ListTagsForResourceInput

type ListTagsForResourceInput struct {
	ResourceType string `json:"ResourceType"`
	ResourceID   string `json:"ResourceId"`
}

ListTagsForResourceInput is the request payload for ListTagsForResource.

type ListTagsForResourceOutput

type ListTagsForResourceOutput struct {
	TagList []Tag `json:"TagList"`
}

ListTagsForResourceOutput is the response payload for ListTagsForResource.

type MaintenanceWindow

type MaintenanceWindow struct {
	WindowID         string `json:"WindowId"`
	Name             string `json:"Name"`
	Description      string `json:"Description,omitempty"`
	Schedule         string `json:"Schedule"`
	ScheduleTimezone string `json:"ScheduleTimezone,omitempty"`
	StartDate        string `json:"StartDate,omitempty"`
	EndDate          string `json:"EndDate,omitempty"`
	// NextExecutionTime is real (types.go GetMaintenanceWindowOutput) but
	// output-only -- it is computed fresh per response (mwNextExecutionTime),
	// never persisted, matching the same fixed-offset heuristic
	// DescribeMaintenanceWindowSchedule already uses.
	NextExecutionTime        string  `json:"NextExecutionTime,omitempty"`
	ScheduleOffset           int32   `json:"ScheduleOffset,omitempty"`
	Duration                 int32   `json:"Duration"`
	Cutoff                   int32   `json:"Cutoff"`
	AllowUnassociatedTargets bool    `json:"AllowUnassociatedTargets"`
	Enabled                  bool    `json:"Enabled"`
	CreatedDate              float64 `json:"CreatedDate"`
	ModifiedDate             float64 `json:"ModifiedDate"`
}

MaintenanceWindow represents an SSM maintenance window.

type MaintenanceWindowAutomationParameters

type MaintenanceWindowAutomationParameters struct {
	Parameters      map[string][]string `json:"Parameters,omitempty"`
	DocumentVersion string              `json:"DocumentVersion,omitempty"`
}

MaintenanceWindowAutomationParameters mirrors types.MaintenanceWindowAutomationParameters (types.go:3540).

type MaintenanceWindowCloudWatchOutputConfig

type MaintenanceWindowCloudWatchOutputConfig struct {
	CloudWatchLogGroupName  string `json:"CloudWatchLogGroupName,omitempty"`
	CloudWatchOutputEnabled bool   `json:"CloudWatchOutputEnabled,omitempty"`
}

MaintenanceWindowCloudWatchOutputConfig mirrors types.CloudWatchOutputConfig (types.go:1171).

type MaintenanceWindowExecution

type MaintenanceWindowExecution struct {
	WindowID          string  `json:"WindowId"`
	WindowExecutionID string  `json:"WindowExecutionId"`
	Status            string  `json:"Status"`
	StartTime         float64 `json:"StartTime"`
	EndTime           float64 `json:"EndTime,omitempty"`
}

MaintenanceWindowExecution represents a single execution of a maintenance window.

type MaintenanceWindowExecutionTask

type MaintenanceWindowExecutionTask struct {
	WindowExecutionID string  `json:"WindowExecutionId"`
	TaskExecutionID   string  `json:"TaskExecutionId"`
	TaskARN           string  `json:"TaskArn"`
	Status            string  `json:"Status"`
	StartTime         float64 `json:"StartTime"`
}

MaintenanceWindowExecutionTask represents a task run within a window execution.

type MaintenanceWindowExecutionTaskInvocation

type MaintenanceWindowExecutionTaskInvocation struct {
	WindowExecutionID string  `json:"WindowExecutionId"`
	TaskExecutionID   string  `json:"TaskExecutionId"`
	InvocationID      string  `json:"InvocationId"`
	Status            string  `json:"Status"`
	StartTime         float64 `json:"StartTime"`
}

MaintenanceWindowExecutionTaskInvocation represents a single invocation of a task.

type MaintenanceWindowFilter

type MaintenanceWindowFilter struct {
	Key    string   `json:"Key,omitempty"`
	Values []string `json:"Values,omitempty"`
}

MaintenanceWindowFilter is a Key/Values filter (real types.MaintenanceWindowFilter, api_op_DescribeMaintenanceWindowTargets.go) shared by DescribeMaintenanceWindowTargets, DescribeMaintenanceWindowTasks and DescribeMaintenanceWindowExecutionTasks -- each op documents its own supported Key set in its own doc comment.

type MaintenanceWindowIdentity

type MaintenanceWindowIdentity struct {
	WindowID          string `json:"WindowId"`
	Name              string `json:"Name"`
	Description       string `json:"Description,omitempty"`
	Schedule          string `json:"Schedule"`
	ScheduleTimezone  string `json:"ScheduleTimezone,omitempty"`
	StartDate         string `json:"StartDate,omitempty"`
	EndDate           string `json:"EndDate,omitempty"`
	NextExecutionTime string `json:"NextExecutionTime,omitempty"`
	Duration          int32  `json:"Duration"`
	Cutoff            int32  `json:"Cutoff"`
	ScheduleOffset    int32  `json:"ScheduleOffset,omitempty"`
	Enabled           bool   `json:"Enabled"`
}

MaintenanceWindowIdentity is a lightweight maintenance window listing entry (real types.MaintenanceWindowIdentity, types.go:3706). NextExecutionTime uses the same fixed mwExecutionScheduleHours-from-now heuristic DescribeMaintenanceWindowSchedule already uses -- this backend has no real cron/rate-expression evaluator to derive a genuine next-run time from Schedule.

type MaintenanceWindowLambdaParameters

type MaintenanceWindowLambdaParameters struct {
	ClientContext string `json:"ClientContext,omitempty"`
	Qualifier     string `json:"Qualifier,omitempty"`
	Payload       []byte `json:"Payload,omitempty"`
}

MaintenanceWindowLambdaParameters mirrors types.MaintenanceWindowLambdaParameters (types.go:3780).

type MaintenanceWindowLoggingInfo

type MaintenanceWindowLoggingInfo struct {
	S3BucketName string `json:"S3BucketName"`
	S3Region     string `json:"S3Region"`
	S3KeyPrefix  string `json:"S3KeyPrefix,omitempty"`
}

MaintenanceWindowLoggingInfo mirrors types.LoggingInfo (ssm@v1.77.0 types.go:3521).

type MaintenanceWindowNotificationConfig

type MaintenanceWindowNotificationConfig struct {
	NotificationArn    string   `json:"NotificationArn,omitempty"`
	NotificationType   string   `json:"NotificationType,omitempty"`
	NotificationEvents []string `json:"NotificationEvents,omitempty"`
}

MaintenanceWindowNotificationConfig mirrors types.NotificationConfig (types.go:4205).

type MaintenanceWindowRunCommandParameters

type MaintenanceWindowRunCommandParameters struct {
	CloudWatchOutputConfig *MaintenanceWindowCloudWatchOutputConfig `json:"CloudWatchOutputConfig,omitempty"`
	NotificationConfig     *MaintenanceWindowNotificationConfig     `json:"NotificationConfig,omitempty"`
	Parameters             map[string][]string                      `json:"Parameters,omitempty"`
	TimeoutSeconds         *int32                                   `json:"TimeoutSeconds,omitempty"`
	Comment                string                                   `json:"Comment,omitempty"`
	DocumentHash           string                                   `json:"DocumentHash,omitempty"`
	DocumentHashType       string                                   `json:"DocumentHashType,omitempty"`
	DocumentVersion        string                                   `json:"DocumentVersion,omitempty"`
	OutputS3BucketName     string                                   `json:"OutputS3BucketName,omitempty"`
	OutputS3KeyPrefix      string                                   `json:"OutputS3KeyPrefix,omitempty"`
	ServiceRoleArn         string                                   `json:"ServiceRoleArn,omitempty"`
}

MaintenanceWindowRunCommandParameters mirrors types.MaintenanceWindowRunCommandParameters (types.go:3817).

type MaintenanceWindowStepFunctionsParameters

type MaintenanceWindowStepFunctionsParameters struct {
	Input string `json:"Input,omitempty"`
	Name  string `json:"Name,omitempty"`
}

MaintenanceWindowStepFunctionsParameters mirrors types.MaintenanceWindowStepFunctionsParameters (types.go:3897).

type MaintenanceWindowTarget

type MaintenanceWindowTarget struct {
	WindowID       string         `json:"WindowId"`
	WindowTargetID string         `json:"WindowTargetId"`
	ResourceType   string         `json:"ResourceType"`
	OwnerInfo      string         `json:"OwnerInformation,omitempty"`
	Name           string         `json:"Name,omitempty"`
	Description    string         `json:"Description,omitempty"`
	Targets        []WindowTarget `json:"Targets,omitempty"`
}

MaintenanceWindowTarget represents a registered target for a maintenance window.

type MaintenanceWindowTask

type MaintenanceWindowTask struct {
	LoggingInfo              *MaintenanceWindowLoggingInfo                  `json:"LoggingInfo,omitempty"`
	TaskInvocationParameters *MaintenanceWindowTaskInvocationParameters     `json:"TaskInvocationParameters,omitempty"`
	TaskParameters           map[string]MaintenanceWindowTaskParameterValue `json:"TaskParameters,omitempty"`
	WindowID                 string                                         `json:"WindowId"`
	WindowTaskID             string                                         `json:"WindowTaskId"`
	TaskArn                  string                                         `json:"TaskArn"`
	TaskType                 string                                         `json:"Type"`
	Name                     string                                         `json:"Name,omitempty"`
	Description              string                                         `json:"Description,omitempty"`
	ServiceRoleArn           string                                         `json:"ServiceRoleArn,omitempty"`
	MaxConcurrency           string                                         `json:"MaxConcurrency,omitempty"`
	MaxErrors                string                                         `json:"MaxErrors,omitempty"`
	CutoffBehavior           string                                         `json:"CutoffBehavior,omitempty"`
	Targets                  []WindowTarget                                 `json:"Targets,omitempty"`
	Priority                 int32                                          `json:"Priority,omitempty"`
}

MaintenanceWindowTask represents a registered task for a maintenance window. MaintenanceWindowTask's TaskType member has real wire key "Type" (deserializers.go awsAwsjson11_deserializeDocumentMaintenanceWindowTask, used by DescribeMaintenanceWindowTasks/GetMaintenanceWindowTask), NOT "TaskType" -- the request side (RegisterTaskWithMaintenanceWindowInput) genuinely does use "TaskType" (serializers.go awsAwsjson11_serializeOpDocumentRegisterTaskWithMaintenanceWindowInput), the same request/response wire-key inconsistency already found on GetMaintenanceWindowExecutionTask.

type MaintenanceWindowTaskInvocationParameters

type MaintenanceWindowTaskInvocationParameters struct {
	Automation    *MaintenanceWindowAutomationParameters    `json:"Automation,omitempty"`
	Lambda        *MaintenanceWindowLambdaParameters        `json:"Lambda,omitempty"`
	RunCommand    *MaintenanceWindowRunCommandParameters    `json:"RunCommand,omitempty"`
	StepFunctions *MaintenanceWindowStepFunctionsParameters `json:"StepFunctions,omitempty"`
}

MaintenanceWindowTaskInvocationParameters mirrors types.MaintenanceWindowTaskInvocationParameters (types.go:4050).

type MaintenanceWindowTaskParameterValue

type MaintenanceWindowTaskParameterValue struct {
	Values []string `json:"Values,omitempty"`
}

MaintenanceWindowTaskParameterValue mirrors types.MaintenanceWindowTaskParameterValueExpression (types.go:4068).

type MetadataValue

type MetadataValue struct {
	Value string `json:"Value,omitempty"`
}

MetadataValue represents a single metadata entry value.

type ModifyDocumentPermissionInput

type ModifyDocumentPermissionInput struct {
	Name                  string   `json:"Name"`
	PermissionType        string   `json:"PermissionType"`
	SharedDocumentVersion string   `json:"SharedDocumentVersion,omitempty"`
	AccountIDsToAdd       []string `json:"AccountIdsToAdd,omitempty"`
	AccountIDsToRemove    []string `json:"AccountIdsToRemove,omitempty"`
}

ModifyDocumentPermissionInput is the request payload for ModifyDocumentPermission. SharedDocumentVersion pins the version shared with the added accounts; if omitted, real AWS shares the document's current DefaultVersion instead (api_op_ModifyDocumentPermission.go:51-53).

type ModifyDocumentPermissionOutput

type ModifyDocumentPermissionOutput struct{}

ModifyDocumentPermissionOutput is the response payload for ModifyDocumentPermission.

type Node added in v1.3.1

type Node struct {
	NodeType    *NodeType      `json:"NodeType,omitempty"`
	Owner       *NodeOwnerInfo `json:"Owner,omitempty"`
	ID          string         `json:"Id,omitempty"`
	Region      string         `json:"Region,omitempty"`
	CaptureTime float64        `json:"CaptureTime,omitempty"`
}

Node is the real ListNodesOutput element, types.Node (types/types.go:4087- 4106, ssm@v1.73.4): CaptureTime, Id, NodeType, Owner and Region, all optional. This backend previously serialized NodeInfo directly under top-level InstanceId/PlatformType/AgentVersion/RegistrationDate keys, none of which exist on the real wire -- PlatformType and AgentVersion are real fields, but nested three levels down inside NodeType.Instance, and RegistrationDate does not exist at all (the real field is CaptureTime, deserializers.go:36710, an epoch-seconds number like every other timestamp in this service).

type NodeAggregator added in v1.3.1

type NodeAggregator struct {
	AggregatorType string           `json:"AggregatorType"`
	AttributeName  string           `json:"AttributeName"`
	TypeName       string           `json:"TypeName"`
	Aggregators    []NodeAggregator `json:"Aggregators,omitempty"`
}

NodeAggregator mirrors types.NodeAggregator in the pinned SDK (types/types.go:4109-4132): AggregatorType, AttributeName and TypeName are all required. Nested Aggregators (multi-level grouping) are accepted on the wire but not applied -- this backend only groups by the top-level AttributeName.

type NodeFilter added in v1.3.1

type NodeFilter struct {
	Key    string   `json:"Key"`
	Type   string   `json:"Type,omitempty"`
	Values []string `json:"Values"`
}

NodeFilter mirrors types.NodeFilter (types/types.go:4135-4152).

type NodeInfo

type NodeInfo struct {
	InstanceID       string
	PlatformType     string
	AgentVersion     string
	RegistrationDate float64
}

NodeInfo is this backend's internal representation of a managed node, used for filtering/aggregation (nodeAttributeValue, matchesNodeFilter, aggregateNodes) and converted to the real wire shape Node by nodeToWire before a ListNodes response is built. It is not itself marshaled.

type NodeInstanceInfo added in v1.3.1

type NodeInstanceInfo struct {
	AgentVersion string `json:"AgentVersion,omitempty"`
	PlatformType string `json:"PlatformType,omitempty"`
}

NodeInstanceInfo mirrors types.InstanceInfo (types/types.go:2693-2747, ssm@v1.73.4), the payload of a Node's NodeType.Instance member. Only AgentVersion and PlatformType have backing state in this in-memory implementation (see nodeAttributeValue); every other member (AgentType, AvailabilityZone, ComputerName, InstanceStatus, IpAddress, ManagedStatus, Name, PlatformName, PlatformVersion, ResourceType, SourceId, SourceLocation, SourceType) has none and is left absent rather than fabricated.

type NodeOwnerInfo added in v1.3.1

type NodeOwnerInfo struct {
	AccountID              string `json:"AccountId,omitempty"`
	OrganizationalUnitID   string `json:"OrganizationalUnitId,omitempty"`
	OrganizationalUnitPath string `json:"OrganizationalUnitPath,omitempty"`
}

NodeOwnerInfo mirrors types.NodeOwnerInfo (types/types.go:4155-4171, ssm@v1.73.4). This backend has no account/OU tracking, so Node.Owner is always nil rather than fabricated.

type NodeType added in v1.3.1

type NodeType struct {
	Instance *NodeInstanceInfo `json:"Instance,omitempty"`
}

NodeType mirrors the types.NodeType tagged union (types/types.go:4172- 4189, ssm@v1.73.4); Instance is its only known member (NodeTypeMemberInstance), wire key "Instance" (deserializers.go:36943).

type OpsItem

type OpsItem struct {
	OperationalData  map[string]OpsItemDataValue `json:"OperationalData,omitempty"`
	PlannedEndTime   *float64                    `json:"PlannedEndTime,omitempty"`
	PlannedStartTime *float64                    `json:"PlannedStartTime,omitempty"`
	ActualEndTime    *float64                    `json:"ActualEndTime,omitempty"`
	ActualStartTime  *float64                    `json:"ActualStartTime,omitempty"`
	OpsItemID        string                      `json:"OpsItemId"`
	Description      string                      `json:"Description,omitempty"`
	Status           string                      `json:"Status"`
	Severity         string                      `json:"Severity,omitempty"`
	Category         string                      `json:"Category,omitempty"`
	Source           string                      `json:"Source"`
	OpsItemArn       string                      `json:"OpsItemArn,omitempty"`
	OpsItemType      string                      `json:"OpsItemType,omitempty"`
	AccountID        string                      `json:"AccountId,omitempty"`
	Title            string                      `json:"Title"`
	Version          string                      `json:"Version,omitempty"`
	RelatedOpsItems  []RelatedOpsItemRef         `json:"RelatedOpsItems,omitempty"`
	Notifications    []OpsItemNotification       `json:"Notifications,omitempty"`
	LastModifiedTime float64                     `json:"LastModifiedTime"`
	CreatedTime      float64                     `json:"CreatedTime"`
	Priority         int32                       `json:"Priority,omitempty"`
}

OpsItem represents an SSM OpsItem.

type OpsItemDataValue

type OpsItemDataValue struct {
	Type  string `json:"Type,omitempty"`
	Value string `json:"Value,omitempty"`
}

OpsItemDataValue represents a value in OpsItem OperationalData.

type OpsItemEventSummary

type OpsItemEventSummary struct {
	OpsItemID   string  `json:"OpsItemId,omitempty"`
	EventID     string  `json:"EventId,omitempty"`
	Source      string  `json:"Source,omitempty"`
	Detail      string  `json:"Detail,omitempty"`
	CreatedTime float64 `json:"CreatedTime,omitempty"`
}

OpsItemEventSummary is a summary of an OpsItem event.

type OpsItemFilter

type OpsItemFilter struct {
	Key      string   `json:"Key"`
	Operator string   `json:"Operator,omitempty"`
	Values   []string `json:"Values"`
}

OpsItemFilter is a filter for DescribeOpsItems.

type OpsItemFilterKV

type OpsItemFilterKV struct {
	Key      string   `json:"Key"`
	Operator string   `json:"Operator"`
	Values   []string `json:"Values"`
}

OpsItemFilterKV is types.OpsItemEventFilter / types.OpsItemRelatedItemsFilter.

type OpsItemNotification added in v1.2.0

type OpsItemNotification struct {
	Arn string `json:"Arn,omitempty"`
}

OpsItemNotification is an SNS topic ARN notified when an OpsItem is edited or changed.

type OpsItemOutput added in v1.5.0

type OpsItemOutput struct {
	OperationalData  map[string]OpsItemDataValue `json:"OperationalData,omitempty"`
	PlannedEndTime   *float64                    `json:"PlannedEndTime,omitempty"`
	PlannedStartTime *float64                    `json:"PlannedStartTime,omitempty"`
	ActualEndTime    *float64                    `json:"ActualEndTime,omitempty"`
	ActualStartTime  *float64                    `json:"ActualStartTime,omitempty"`
	OpsItemID        string                      `json:"OpsItemId"`
	Description      string                      `json:"Description,omitempty"`
	Status           string                      `json:"Status"`
	Severity         string                      `json:"Severity,omitempty"`
	Category         string                      `json:"Category,omitempty"`
	Source           string                      `json:"Source"`
	OpsItemArn       string                      `json:"OpsItemArn,omitempty"`
	OpsItemType      string                      `json:"OpsItemType,omitempty"`
	Title            string                      `json:"Title"`
	Version          string                      `json:"Version,omitempty"`
	RelatedOpsItems  []RelatedOpsItemRef         `json:"RelatedOpsItems,omitempty"`
	Notifications    []OpsItemNotification       `json:"Notifications,omitempty"`
	LastModifiedTime float64                     `json:"LastModifiedTime"`
	CreatedTime      float64                     `json:"CreatedTime"`
	Priority         int32                       `json:"Priority,omitempty"`
}

OpsItemOutput is the wire-safe projection of OpsItem -- see opsItemToOutput.

type OpsItemRelatedItem

type OpsItemRelatedItem struct {
	AssociationID   string  `json:"AssociationId"`
	AssociationType string  `json:"AssociationType"`
	OpsItemID       string  `json:"OpsItemId,omitempty"`
	ResourceType    string  `json:"ResourceType"`
	ResourceURI     string  `json:"ResourceUri"`
	CreatedTime     float64 `json:"CreatedTime,omitempty"`
}

OpsItemRelatedItem represents an item related to an OpsItem, field-diffed against types.OpsItemRelatedItemSummary (ssm@v1.77.0). CreatedBy/ LastModifiedBy/LastModifiedTime are not modeled -- no caller-identity infra (same disclosed gap as ServiceSetting.LastModifiedUser) and no update path exists for a related item once associated.

type OpsItemSummary

type OpsItemSummary struct {
	OperationalData  map[string]OpsItemDataValue `json:"OperationalData,omitempty"`
	PlannedEndTime   *float64                    `json:"PlannedEndTime,omitempty"`
	PlannedStartTime *float64                    `json:"PlannedStartTime,omitempty"`
	ActualEndTime    *float64                    `json:"ActualEndTime,omitempty"`
	ActualStartTime  *float64                    `json:"ActualStartTime,omitempty"`
	OpsItemID        string                      `json:"OpsItemId"`
	Title            string                      `json:"Title"`
	Status           string                      `json:"Status"`
	Source           string                      `json:"Source"`
	OpsItemType      string                      `json:"OpsItemType,omitempty"`
	Category         string                      `json:"Category,omitempty"`
	Severity         string                      `json:"Severity,omitempty"`
	CreatedTime      float64                     `json:"CreatedTime"`
	LastModifiedTime float64                     `json:"LastModifiedTime,omitempty"`
	Priority         int32                       `json:"Priority,omitempty"`
}

OpsItemSummary is a lightweight OpsItem listing entry (real types.OpsItemSummary, types.go:4600). CreatedBy/LastModifiedBy are real members not modeled -- no caller-identity/SigV4-principal infra to derive a real IAM ARN from, same disclosed-gap class as ServiceSetting.LastModifiedUser. There is no Version or OpsItemArn member on the real type at all, unlike the full OpsItem (OpsItemOutput.Version/.OpsItemArn).

type OpsMetadata

type OpsMetadata struct {
	Metadata         map[string]MetadataValue `json:"Metadata,omitempty"`
	OpsMetadataArn   string                   `json:"OpsMetadataArn"`
	ResourceID       string                   `json:"ResourceId"`
	CreationDate     float64                  `json:"CreationDate"`
	LastModifiedDate float64                  `json:"LastModifiedDate"`
}

OpsMetadata represents SSM OpsMetadata for a resource.

type OpsMetadataFilterEntry added in v1.3.1

type OpsMetadataFilterEntry struct {
	Key    string   `json:"Key,omitempty"`
	Values []string `json:"Values,omitempty"`
}

OpsMetadataFilterEntry filters ListOpsMetadata results by ResourceId (api_op_ListOpsMetadata.go Filters member, types.OpsMetadataFilter).

type OpsMetadataListItem

type OpsMetadataListItem struct {
	OpsMetadataArn   string  `json:"OpsMetadataArn"`
	ResourceID       string  `json:"ResourceId"`
	CreationDate     float64 `json:"CreationDate"`
	LastModifiedDate float64 `json:"LastModifiedDate"`
}

OpsMetadataListItem is the narrow shape ListOpsMetadata returns, field- diffed against types.OpsMetadata (ssm@v1.77.0): CreationDate, LastModifiedDate, LastModifiedUser, OpsMetadataArn, ResourceId. Unlike the internal OpsMetadata record, it has no Metadata field at all -- that map is Get/CreateOpsMetadata-only (see GetOpsMetadataOutput's own doc comment); embedding the full record here would leak it onto the wire. LastModifiedUser is not modeled -- no caller-identity infra, same disclosed gap as ServiceSetting.LastModifiedUser.

type OpsSummaryEntity

type OpsSummaryEntity struct {
	Data map[string]OpsSummaryValue `json:"Data,omitempty"`
	ID   string                     `json:"Id"`
}

OpsSummaryEntity represents a summary entry for ops items.

type OpsSummaryValue

type OpsSummaryValue struct {
	Unit  string `json:"Unit"`
	Count int    `json:"Count"`
}

OpsSummaryValue holds aggregated value for an ops summary.

type Parameter

type Parameter struct {
	Name           string `json:"Name"`
	Type           string `json:"Type"`
	Value          string `json:"Value"`
	Description    string `json:"Description,omitempty"`
	KeyID          string `json:"KeyId,omitempty"`
	Tier           string `json:"Tier,omitempty"`
	AllowedPattern string `json:"AllowedPattern,omitempty"`
	DataType       string `json:"DataType,omitempty"`
	Policies       string `json:"Policies,omitempty"`
	// ARN is the Amazon Resource Name of the parameter. Real AWS SSM returns this
	// field on GetParameter, GetParameters, and GetParametersByPath responses.
	ARN string `json:"ARN,omitempty"`
	// Selector is the version or label selector used to retrieve this parameter,
	// e.g. ":3" or ":prod". Empty when the latest version is returned without a
	// selector. AWS echoes the selector back in the GetParameter response.
	Selector         string  `json:"Selector,omitempty"`
	LastModifiedDate float64 `json:"LastModifiedDate"`
	Version          int64   `json:"Version"`
}

Parameter represents a single SSM Parameter.

type ParameterFilter

type ParameterFilter struct {
	// Key is the filter key: Name, Type, KeyId, etc.
	Key string `json:"Key"`
	// Option is the comparison operator: Equals, BeginsWith, Contains.
	Option string `json:"Option,omitempty"`
	// Values contains the values to match against.
	Values []string `json:"Values"`
}

ParameterFilter is a filter criterion for parameter queries.

type ParameterHistory

type ParameterHistory struct {
	Name             string   `json:"Name"`
	Type             string   `json:"Type"`
	Value            string   `json:"Value"`
	KeyID            string   `json:"KeyId,omitempty"`
	Tier             string   `json:"Tier,omitempty"`
	AllowedPattern   string   `json:"AllowedPattern,omitempty"`
	DataType         string   `json:"DataType,omitempty"`
	Description      string   `json:"Description,omitempty"`
	Policies         string   `json:"Policies,omitempty"`
	Labels           []string `json:"Labels,omitempty"`
	LastModifiedDate float64  `json:"LastModifiedDate"`
	Version          int64    `json:"Version"`
}

ParameterHistory represents a historical version of a parameter. Policies is the same raw PutParameter-request JSON string convention as Parameter.Policies -- not the wire shape, see ParameterHistoryOutput.

type ParameterHistoryOutput added in v1.5.0

type ParameterHistoryOutput struct {
	Name             string                  `json:"Name"`
	Type             string                  `json:"Type"`
	Value            string                  `json:"Value"`
	KeyID            string                  `json:"KeyId,omitempty"`
	Tier             string                  `json:"Tier,omitempty"`
	AllowedPattern   string                  `json:"AllowedPattern,omitempty"`
	DataType         string                  `json:"DataType,omitempty"`
	Description      string                  `json:"Description,omitempty"`
	Policies         []ParameterInlinePolicy `json:"Policies,omitempty"`
	Labels           []string                `json:"Labels,omitempty"`
	LastModifiedDate float64                 `json:"LastModifiedDate"`
	Version          int64                   `json:"Version"`
}

ParameterHistoryOutput is the real GetParameterHistory wire shape (types.ParameterHistory, types/types.go). Policies is []ParameterInlinePolicy -- see ParameterOutput/parameterPoliciesToWire for the same fabricated-string-instead-of-object-array bug class fixed here. LastModifiedUser (real, ARN of the last-writing caller) is deliberately not modeled -- this backend has no caller-identity infra, same gap as ParameterMetadata.LastModifiedUser.

type ParameterInlinePolicy

type ParameterInlinePolicy struct {
	PolicyText   string `json:"PolicyText"`
	PolicyType   string `json:"PolicyType"`
	PolicyStatus string `json:"PolicyStatus"`
}

type ParameterMetadata

type ParameterMetadata struct {
	Name             string                  `json:"Name"`
	Type             string                  `json:"Type"`
	Description      string                  `json:"Description,omitempty"`
	KeyID            string                  `json:"KeyId,omitempty"`
	Tier             string                  `json:"Tier,omitempty"`
	AllowedPattern   string                  `json:"AllowedPattern,omitempty"`
	DataType         string                  `json:"DataType,omitempty"`
	ARN              string                  `json:"ARN,omitempty"`
	Policies         []ParameterInlinePolicy `json:"Policies,omitempty"`
	LastModifiedDate float64                 `json:"LastModifiedDate"`
	Version          int64                   `json:"Version"`
}

ParameterMetadata contains parameter metadata without the parameter value.

type ParameterOutput added in v1.5.0

type ParameterOutput struct {
	Name             string  `json:"Name"`
	Type             string  `json:"Type"`
	Value            string  `json:"Value"`
	ARN              string  `json:"ARN,omitempty"`
	DataType         string  `json:"DataType,omitempty"`
	Selector         string  `json:"Selector,omitempty"`
	LastModifiedDate float64 `json:"LastModifiedDate"`
	Version          int64   `json:"Version"`
}

ParameterOutput is the real wire shape GetParameter/GetParameters/ GetParametersByPath return (types.Parameter, types/types.go:4738-4782) -- NOT the Parameter domain/storage type below, which additionally carries Description/KeyID/Tier/AllowedPattern/Policies/Tags for persistence and DescribeParameters-style metadata. None of those six have a counterpart on this narrower Get*-family wire shape and were previously fabricated on it (Parameter was reused directly as the wire type). SourceResult (real, populated only for aws:ssm:parameter/aws:ec2:image "advanced parameter" source resolution) is deliberately not modeled -- this backend has no source-resolution engine to derive it from, see PARITY.md gaps.

type ParameterPolicyNotifier added in v1.2.0

type ParameterPolicyNotifier interface {
	// NotifyParameterPolicyAction is called once per (parameter, policy
	// instance) the first time that policy becomes due. parameterName is the
	// parameter's Name; policyType is "Expiration", "ExpirationNotification",
	// or "NoChangeNotification".
	NotifyParameterPolicyAction(ctx context.Context, parameterName, policyType string) error
}

ParameterPolicyNotifier receives Parameter Store policy-action notifications (ExpirationNotification / NoChangeNotification) so they can be delivered as real EventBridge events. Real AWS SSM emits an "aws.ssm" / "Parameter Store Policy Action" event with detail {"parameter-name": <name>, "policy-type": <Expiration|ExpirationNotification| NoChangeNotification>} -- confirmed via https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-cwe.html.

Implemented by an adapter wrapping the EventBridge backend and injected via SetParameterPolicyNotifier, so this package has no direct dependency on services/eventbridge -- the same injectable cross-service-hook pattern services/stepfunctions/asl uses for its EventBridgeIntegration (see services/eventbridge/sfn_integration.go for the analogous adapter).

type ParametersFilter

type ParametersFilter struct {
	Key    string   `json:"Key"`
	Values []string `json:"Values"`
}

ParametersFilter is the deprecated types.ParametersFilter (DescribeParameters.Filters).

type Patch

type Patch struct {
	Name           string  `json:"Name"`
	Product        string  `json:"Product"`
	ProductFamily  string  `json:"ProductFamily,omitempty"`
	Classification string  `json:"Classification"`
	MsrcSeverity   string  `json:"MsrcSeverity,omitempty"`
	Severity       string  `json:"Severity"`
	PatchSet       string  `json:"PatchSet,omitempty"`
	ReleaseDate    float64 `json:"ReleaseDate,omitempty"`
}

Patch represents a patch in the available patches catalog. ReleaseDate is epoch seconds, not an RFC3339 string -- confirmed against aws-sdk-go-v2/service/ssm@v1.73.4's deserializers.go (awsAwsjson11_deserializeDocumentPatch, case "ReleaseDate": smithytime.ParseEpochSeconds(f64)), matching every other timestamp this awsjson1.1 service emits.

type PatchBaseline

type PatchBaseline struct {
	ApprovalRules                            *PatchRuleGroup   `json:"ApprovalRules,omitempty"`
	ApprovedPatchesEnableNonSecurity         *bool             `json:"ApprovedPatchesEnableNonSecurity,omitempty"`
	GlobalFilters                            *PatchFilterGroup `json:"GlobalFilters,omitempty"`
	RejectedPatchesAction                    string            `json:"RejectedPatchesAction,omitempty"`
	ApprovedPatchesComplianceLevel           string            `json:"ApprovedPatchesComplianceLevel,omitempty"`
	AvailableSecurityUpdatesComplianceStatus string            `json:"AvailableSecurityUpdatesComplianceStatus,omitempty"`
	BaselineID                               string            `json:"BaselineId"`
	OperatingSystem                          string            `json:"OperatingSystem,omitempty"`
	Description                              string            `json:"Description,omitempty"`
	Name                                     string            `json:"Name"`
	ApprovedPatches                          []string          `json:"ApprovedPatches,omitempty"`
	RejectedPatches                          []string          `json:"RejectedPatches,omitempty"`
	Sources                                  []PatchSource     `json:"Sources,omitempty"`
	CreatedDate                              float64           `json:"CreatedDate"`
	ModifiedDate                             float64           `json:"ModifiedDate"`
}

PatchBaseline represents an SSM patch baseline.

type PatchBaselineFilter

type PatchBaselineFilter struct {
	Key    string   `json:"Key"`
	Values []string `json:"Values"`
}

PatchBaselineFilter is a key-value filter for DescribePatchBaselines.

type PatchBaselineIdentity

type PatchBaselineIdentity struct {
	BaselineID      string `json:"BaselineId"`
	BaselineName    string `json:"BaselineName"`
	OperatingSystem string `json:"OperatingSystem,omitempty"`
	Description     string `json:"BaselineDescription,omitempty"`
	DefaultBaseline bool   `json:"DefaultBaseline"`
}

PatchBaselineIdentity is a lightweight patch baseline listing entry.

type PatchComplianceData

type PatchComplianceData struct {
	Classification string  `json:"Classification"`
	KBId           string  `json:"KBId,omitempty"`
	Severity       string  `json:"Severity"`
	State          string  `json:"State"`
	Title          string  `json:"Title"`
	InstalledTime  float64 `json:"InstalledTime"`
}

PatchComplianceData holds the patch compliance data for a single patch.

InstalledTime is required on the real wire (types.PatchComplianceData, deserializers.go:41268-41276) but was tagged omitempty: a Missing-state patch (never installed) has a zero installedTime, so the key vanished from the response entirely instead of being present-and-empty.

type PatchFilter

type PatchFilter struct {
	Key    string   `json:"Key"`
	Values []string `json:"Values"`
}

PatchFilter is a filter for patch operations.

type PatchFilterGroup added in v1.2.0

type PatchFilterGroup struct {
	PatchFilters []PatchFilter `json:"PatchFilters"`
}

PatchFilterGroup groups the PatchFilters that make up a PatchRule's matching criteria, or a baseline's top-level GlobalFilters.

type PatchGroupPatchBaselineMapping

type PatchGroupPatchBaselineMapping struct {
	PatchGroup       string                `json:"PatchGroup"`
	BaselineIdentity PatchBaselineIdentity `json:"BaselineIdentity"`
}

PatchGroupPatchBaselineMapping maps a patch group to a baseline identity.

type PatchOrchestratorFilter

type PatchOrchestratorFilter struct {
	Key    string   `json:"Key"`
	Values []string `json:"Values"`
}

PatchOrchestratorFilter filters patches by field.

type PatchRule added in v1.2.0

type PatchRule struct {
	PatchFilterGroup  *PatchFilterGroup `json:"PatchFilterGroup,omitempty"`
	ApproveAfterDays  *int32            `json:"ApproveAfterDays,omitempty"`
	ApproveUntilDate  string            `json:"ApproveUntilDate,omitempty"`
	ComplianceLevel   string            `json:"ComplianceLevel,omitempty"`
	EnableNonSecurity bool              `json:"EnableNonSecurity,omitempty"`
}

PatchRule is one auto-approval rule within a PatchRuleGroup.

type PatchRuleGroup added in v1.2.0

type PatchRuleGroup struct {
	PatchRules []PatchRule `json:"PatchRules"`
}

PatchRuleGroup is the set of auto-approval rules for a patch baseline (CreatePatchBaselineInput/UpdatePatchBaselineInput's ApprovalRules).

type PatchSource added in v1.2.0

type PatchSource struct {
	Name          string   `json:"Name"`
	Configuration string   `json:"Configuration"`
	Products      []string `json:"Products"`
}

PatchSource describes a custom patch repository. Linux managed nodes only.

type PatchStatus

type PatchStatus struct {
	ComplianceLevel  string  `json:"ComplianceLevel,omitempty"`
	DeploymentStatus string  `json:"DeploymentStatus,omitempty"`
	ApprovalDate     float64 `json:"ApprovalDate,omitempty"`
}

PatchStatus holds the deployment/compliance status of a patch. ApprovalDate is epoch seconds, not an RFC3339 string -- confirmed against aws-sdk-go-v2/service/ssm@v1.73.4's deserializers.go (awsAwsjson11_deserializeDocumentPatchStatus, case "ApprovalDate": ParseEpochSeconds(f64)); the real member is a JSON number like every other timestamp this awsjson1.1 service emits.

type ProgressCounters

type ProgressCounters struct {
	CancelledSteps int32 `json:"CancelledSteps"`
	FailedSteps    int32 `json:"FailedSteps"`
	SuccessSteps   int32 `json:"SuccessSteps"`
	TimedOutSteps  int32 `json:"TimedOutSteps"`
	TotalSteps     int32 `json:"TotalSteps"`
}

ProgressCounters mirrors types.ProgressCounters.

type Provider

type Provider struct{}

Provider implements service.Provider for the SSM Parameter Store service.

func (*Provider) Init

Init initializes the SSM service backend and handler.

func (*Provider) Name

func (p *Provider) Name() string

Name returns the logical name of the provider.

type PutComplianceItemsInput

type PutComplianceItemsInput struct {
	ExecutionSummary *ComplianceExecutionSummary `json:"ExecutionSummary,omitempty"`
	ResourceID       string                      `json:"ResourceId"`
	ResourceType     string                      `json:"ResourceType"`
	ComplianceType   string                      `json:"ComplianceType,omitempty"`
	UploadType       string                      `json:"UploadType,omitempty"`
	Items            []ComplianceItem            `json:"Items"`
}

PutComplianceItemsInput is the request payload for PutComplianceItems.

type PutComplianceItemsOutput

type PutComplianceItemsOutput struct{}

PutComplianceItemsOutput is the response for PutComplianceItems.

type PutInventoryInput

type PutInventoryInput struct {
	InstanceID string          `json:"InstanceId"`
	Items      []InventoryItem `json:"Items"`
}

PutInventoryInput is the request payload for PutInventory.

type PutInventoryOutput

type PutInventoryOutput struct{}

PutInventoryOutput is the response for PutInventory.

type PutParameterInput

type PutParameterInput struct {
	Name           string `json:"Name"`
	Type           string `json:"Type"`
	Value          string `json:"Value"`
	Description    string `json:"Description,omitempty"`
	KeyID          string `json:"KeyId,omitempty"`
	Tier           string `json:"Tier,omitempty"`
	AllowedPattern string `json:"AllowedPattern,omitempty"`
	DataType       string `json:"DataType,omitempty"`
	Policies       string `json:"Policies,omitempty"`
	Tags           []Tag  `json:"Tags,omitempty"`
	Overwrite      bool   `json:"Overwrite,omitempty"`
}

PutParameterInput represents the request payload for PutParameter.

type PutParameterOutput

type PutParameterOutput struct {
	Tier    string `json:"Tier,omitempty"`
	Version int64  `json:"Version"`
}

PutParameterOutput represents the response payload for PutParameter.

type PutResourcePolicyInput

type PutResourcePolicyInput struct {
	ResourceARN string `json:"ResourceArn"`
	Policy      string `json:"Policy"`
	PolicyID    string `json:"PolicyId"`
	PolicyHash  string `json:"PolicyHash"`
}

PutResourcePolicyInput is the request payload.

type PutResourcePolicyOutput

type PutResourcePolicyOutput struct{}

PutResourcePolicyOutput is the response payload.

type PutResourcePolicyOutputFull

type PutResourcePolicyOutputFull struct {
	PolicyID   string `json:"PolicyId"`
	PolicyHash string `json:"PolicyHash"`
}

PutResourcePolicyOutputFull extends the empty stub.

type QueryFilter

type QueryFilter struct {
	Key    string   `json:"Key,omitempty"`
	Type   string   `json:"Type,omitempty"`
	Values []string `json:"Values,omitempty"`
}

QueryFilter is the shared wire shape of types.InventoryFilter and types.ComplianceStringFilter.

type RegisterDefaultPatchBaselineInput

type RegisterDefaultPatchBaselineInput struct {
	BaselineID string `json:"BaselineId"`
}

RegisterDefaultPatchBaselineInput is the request payload for RegisterDefaultPatchBaseline.

type RegisterDefaultPatchBaselineOutput

type RegisterDefaultPatchBaselineOutput struct {
	BaselineID string `json:"BaselineId"`
}

RegisterDefaultPatchBaselineOutput is the response payload for RegisterDefaultPatchBaseline.

type RegisterPatchBaselineForPatchGroupInput

type RegisterPatchBaselineForPatchGroupInput struct {
	BaselineID string `json:"BaselineId"`
	PatchGroup string `json:"PatchGroup"`
}

RegisterPatchBaselineForPatchGroupInput is the request payload.

type RegisterPatchBaselineForPatchGroupOutput

type RegisterPatchBaselineForPatchGroupOutput struct {
	BaselineID string `json:"BaselineId"`
	PatchGroup string `json:"PatchGroup"`
}

RegisterPatchBaselineForPatchGroupOutput is the response payload.

type RegisterTargetWithMaintenanceWindowInput

type RegisterTargetWithMaintenanceWindowInput struct {
	ClientToken  string         `json:"ClientToken,omitempty"`
	WindowID     string         `json:"WindowId"`
	ResourceType string         `json:"ResourceType"`
	OwnerInfo    string         `json:"OwnerInformation,omitempty"`
	Name         string         `json:"Name,omitempty"`
	Description  string         `json:"Description,omitempty"`
	Targets      []WindowTarget `json:"Targets"`
}

RegisterTargetWithMaintenanceWindowInput is the request payload.

type RegisterTargetWithMaintenanceWindowOutput

type RegisterTargetWithMaintenanceWindowOutput struct {
	WindowTargetID string `json:"WindowTargetId"`
}

RegisterTargetWithMaintenanceWindowOutput is the response payload.

type RegisterTaskWithMaintenanceWindowInput

type RegisterTaskWithMaintenanceWindowInput struct {
	ClientToken              string                                         `json:"ClientToken,omitempty"`
	LoggingInfo              *MaintenanceWindowLoggingInfo                  `json:"LoggingInfo,omitempty"`
	TaskInvocationParameters *MaintenanceWindowTaskInvocationParameters     `json:"TaskInvocationParameters,omitempty"`
	TaskParameters           map[string]MaintenanceWindowTaskParameterValue `json:"TaskParameters,omitempty"`
	WindowID                 string                                         `json:"WindowId"`
	TaskArn                  string                                         `json:"TaskArn"`
	TaskType                 string                                         `json:"TaskType"`
	Name                     string                                         `json:"Name,omitempty"`
	Description              string                                         `json:"Description,omitempty"`
	ServiceRoleArn           string                                         `json:"ServiceRoleArn,omitempty"`
	MaxConcurrency           string                                         `json:"MaxConcurrency,omitempty"`
	MaxErrors                string                                         `json:"MaxErrors,omitempty"`
	CutoffBehavior           string                                         `json:"CutoffBehavior,omitempty"`
	Targets                  []WindowTarget                                 `json:"Targets,omitempty"`
	Priority                 int32                                          `json:"Priority,omitempty"`
}

RegisterTaskWithMaintenanceWindowInput is the request payload.

type RegisterTaskWithMaintenanceWindowOutput

type RegisterTaskWithMaintenanceWindowOutput struct {
	WindowTaskID string `json:"WindowTaskId"`
}

RegisterTaskWithMaintenanceWindowOutput is the response payload.

type RelatedOpsItemRef added in v1.2.0

type RelatedOpsItemRef struct {
	OpsItemID string `json:"OpsItemId"`
}

RelatedOpsItemRef references another OpsItem that shares something in common with the current one (e.g. similar error messages, impacted resources, or statuses).

type RemoveTagsFromResourceInput

type RemoveTagsFromResourceInput struct {
	ResourceType string   `json:"ResourceType"`
	ResourceID   string   `json:"ResourceId"`
	TagKeys      []string `json:"TagKeys"`
}

RemoveTagsFromResourceInput is the request payload for RemoveTagsFromResource.

type ResetServiceSettingInput

type ResetServiceSettingInput struct {
	SettingID string `json:"SettingId"`
}

ResetServiceSettingInput is the request payload.

type ResetServiceSettingOutput

type ResetServiceSettingOutput struct{}

ResetServiceSettingOutput is the response payload.

type ResetServiceSettingOutputFull

type ResetServiceSettingOutputFull struct {
	ServiceSetting *ServiceSetting `json:"ServiceSetting,omitempty"`
}

ResetServiceSettingOutputFull extends the empty stub.

type ResourceComplianceSummaryItem

type ResourceComplianceSummaryItem struct {
	ResourceID          string                 `json:"ResourceId"`
	ResourceType        string                 `json:"ResourceType"`
	ComplianceType      string                 `json:"ComplianceType"`
	OverallSeverity     string                 `json:"OverallSeverity"`
	Status              string                 `json:"Status"`
	NonCompliantSummary ComplianceCountSummary `json:"NonCompliantSummary"`
	CompliantSummary    ComplianceCountSummary `json:"CompliantSummary"`
}

ResourceComplianceSummaryItem represents per-resource compliance status.

type ResourceDataSync

type ResourceDataSync struct {
	SyncSource      *ResourceDataSyncSource        `json:"SyncSource,omitempty"`
	S3Destination   *ResourceDataSyncS3Destination `json:"S3Destination,omitempty"`
	SyncName        string                         `json:"SyncName"`
	SyncType        string                         `json:"SyncType"`
	LastStatus      string                         `json:"LastStatus"`
	SyncCreatedTime float64                        `json:"SyncCreatedTime"`
	LastSyncTime    float64                        `json:"LastSyncTime,omitempty"`
}

ResourceDataSync represents a resource data sync configuration.

type ResourceDataSyncAwsOrganizationsSource

type ResourceDataSyncAwsOrganizationsSource struct {
	OrganizationSourceType string                         `json:"OrganizationSourceType"`
	OrganizationalUnits    []ResourceDataSyncOrganization `json:"OrganizationalUnits,omitempty"`
}

ResourceDataSyncAwsOrganizationsSource mirrors types.ResourceDataSyncAwsOrganizationsSource (types.go:5483).

type ResourceDataSyncDestinationDataSharing

type ResourceDataSyncDestinationDataSharing struct {
	DestinationDataSharingType string `json:"DestinationDataSharingType,omitempty"`
}

ResourceDataSyncDestinationDataSharing mirrors types.ResourceDataSyncDestinationDataSharing (types.go:5503).

type ResourceDataSyncOrganization

type ResourceDataSyncOrganization struct {
	OrganizationalUnitID string `json:"OrganizationalUnitId,omitempty"`
}

ResourceDataSyncOrganization mirrors types.ResourceDataSyncOrganizationalUnit (types.go:5552).

type ResourceDataSyncS3Destination added in v1.5.0

type ResourceDataSyncS3Destination struct {
	DestinationDataSharing *ResourceDataSyncDestinationDataSharing `json:"DestinationDataSharing,omitempty"`
	BucketName             string                                  `json:"BucketName"`
	Region                 string                                  `json:"Region"`
	SyncFormat             string                                  `json:"SyncFormat"`
	AWSKMSKeyARN           string                                  `json:"AWSKMSKeyARN,omitempty"`
	Prefix                 string                                  `json:"Prefix,omitempty"`
}

ResourceDataSyncS3Destination mirrors types.ResourceDataSyncS3Destination (types.go:5561).

type ResourceDataSyncSource added in v1.3.1

type ResourceDataSyncSource struct {
	AwsOrganizationsSource  *ResourceDataSyncAwsOrganizationsSource `json:"AwsOrganizationsSource,omitempty"`
	SourceType              string                                  `json:"SourceType"`
	SourceRegions           []string                                `json:"SourceRegions"`
	EnableAllOpsDataSources bool                                    `json:"EnableAllOpsDataSources,omitempty"`
	IncludeFutureRegions    bool                                    `json:"IncludeFutureRegions,omitempty"`
}

ResourceDataSyncSource mirrors types.ResourceDataSyncSource (types.go:5593) on the request side and types.ResourceDataSyncSourceWithState (types.go:5641) on the response side -- both wire shapes share the same field set here. Both shapes share one Go type here.

type ResourcePolicy

type ResourcePolicy struct {
	PolicyID   string `json:"PolicyId"`
	PolicyHash string `json:"PolicyHash"`
	Policy     string `json:"Policy"`
}

ResourcePolicy stores a policy document attached to an SSM resource.

type ResumeSessionInput

type ResumeSessionInput struct {
	SessionID string `json:"SessionId"`
}

ResumeSessionInput is the request payload.

type ResumeSessionOutput

type ResumeSessionOutput struct{}

ResumeSessionOutput is the response payload.

type ResumeSessionOutputFull

type ResumeSessionOutputFull struct {
	SessionID  string `json:"SessionId"`
	StreamURL  string `json:"StreamUrl"`
	TokenValue string `json:"TokenValue"`
}

ResumeSessionOutputFull extends the empty stub.

type Runbook added in v1.3.1

type Runbook struct {
	Parameters      map[string][]string `json:"Parameters,omitempty"`
	DocumentName    string              `json:"DocumentName"`
	DocumentVersion string              `json:"DocumentVersion,omitempty"`
	MaxConcurrency  string              `json:"MaxConcurrency,omitempty"`
	MaxErrors       string              `json:"MaxErrors,omitempty"`
}

Runbook mirrors types.Runbook (types.go:5718). TargetLocations/TargetMaps/ TargetParameterName/Targets are deliberately not modeled -- the same shallow-scalar simplification StartAutomationExecutionInput already makes for its own Targets/TargetLocations/TargetParameterName (this file, above), an established convention in this backend, not new scope for this fix.

type S3OutputLocation added in v1.2.0

type S3OutputLocation struct {
	OutputS3BucketName string `json:"OutputS3BucketName,omitempty"`
	OutputS3KeyPrefix  string `json:"OutputS3KeyPrefix,omitempty"`
	OutputS3Region     string `json:"OutputS3Region,omitempty"`
}

S3OutputLocation identifies the S3 bucket/prefix/region an association's execution results are stored to.

type ScheduledWindowExecution

type ScheduledWindowExecution struct {
	WindowID      string `json:"WindowId"`
	Name          string `json:"Name"`
	ExecutionTime string `json:"ExecutionTime"`
}

ScheduledWindowExecution represents a future scheduled window execution.

type SendAutomationSignalInput

type SendAutomationSignalInput struct {
	Payload               map[string][]string `json:"Payload,omitempty"`
	AutomationExecutionID string              `json:"AutomationExecutionId"`
	SignalType            string              `json:"SignalType,omitempty"`
}

SendAutomationSignalInput is the request payload. Payload (real, required for StartStep/StopStep/Resume signal types to name the target step) is accepted but not consulted -- see SendAutomationSignal's doc comment.

type SendAutomationSignalOutput

type SendAutomationSignalOutput struct{}

SendAutomationSignalOutput is the response for SendAutomationSignal.

type SendCommandInput

type SendCommandInput struct {
	Parameters         map[string][]string `json:"Parameters,omitempty"`
	DocumentName       string              `json:"DocumentName"`
	DocumentVersion    string              `json:"DocumentVersion,omitempty"`
	DocumentHashType   string              `json:"DocumentHashType,omitempty"`
	Comment            string              `json:"Comment,omitempty"`
	OutputS3BucketName string              `json:"OutputS3BucketName,omitempty"`
	OutputS3KeyPrefix  string              `json:"OutputS3KeyPrefix,omitempty"`
	OutputS3Region     string              `json:"OutputS3Region,omitempty"`
	ServiceRoleArn     string              `json:"ServiceRoleArn,omitempty"`
	MaxConcurrency     string              `json:"MaxConcurrency,omitempty"`
	MaxErrors          string              `json:"MaxErrors,omitempty"`
	InstanceIDs        []string            `json:"InstanceIds,omitempty"`
	Targets            []CommandTarget     `json:"Targets,omitempty"`
	TimeoutSeconds     int32               `json:"TimeoutSeconds,omitempty"`
}

SendCommandInput is the request payload for SendCommand.

type SendCommandOutput

type SendCommandOutput struct {
	Command Command `json:"Command"`
}

SendCommandOutput is the response payload for SendCommand.

type ServiceSetting

type ServiceSetting struct {
	SettingID        string  `json:"SettingId"`
	SettingValue     string  `json:"SettingValue"`
	Status           string  `json:"Status"`
	ARN              string  `json:"ARN,omitempty"`
	LastModifiedDate float64 `json:"LastModifiedDate,omitempty"`
}

ServiceSetting represents an SSM service setting key-value pair.

LastModifiedUser (real member: "The ARN of the last modified user", api_op_GetServiceSetting.go's ServiceSetting) is deliberately not modeled: this emulator has no caller-identity/SigV4-principal tracking to derive a real IAM ARN from (same disclosed gap class as sns's ConfirmSubscriptionInput.AuthenticateOnUnsubscribe), so fabricating one would be a made-up identity a real client could surface.

type Session

type Session struct {
	Parameters         map[string][]string `json:"Parameters,omitempty"`
	SessionID          string              `json:"SessionId"`
	Target             string              `json:"Target"`
	Status             string              `json:"Status"`
	StreamURL          string              `json:"StreamUrl"`
	TokenValue         string              `json:"TokenValue,omitempty"`
	Owner              string              `json:"Owner,omitempty"`
	Reason             string              `json:"Reason,omitempty"`
	DocumentName       string              `json:"DocumentName,omitempty"`
	AccessType         string              `json:"AccessType,omitempty"`
	MaxSessionDuration string              `json:"MaxSessionDuration,omitempty"`
	StartDate          float64             `json:"StartDate"`
	EndDate            float64             `json:"EndDate,omitempty"`
}

Session represents an SSM Session Manager session.

OutputUrl (types.SessionManagerOutputUrl, members CloudWatchOutputUrl/ S3OutputUrl) and Details are both documented "Reserved for future use" in aws-sdk-go-v2/service/ssm@v1.73.4's types/types.go — real AWS never populates them today, and StartSessionInput has no field that could drive them (it only accepts Target/DocumentName/Parameters/Reason). Both are therefore omitted here entirely rather than modeled with a perpetually-empty struct.

type SessionFilter added in v1.2.0

type SessionFilter struct {
	Key   string `json:"key"`
	Value string `json:"value"`
}

SessionFilter filters DescribeSessions results. Wire key casing ("key"/ "value", lowercase) is a deliberate AWS quirk confirmed against aws-sdk-go-v2/service/ssm@v1.73.4's serializers.go (awsAwsjson11_serializeDocumentSessionFilter) — every other SSM shape uses PascalCase field names, but SessionFilter does not.

type SessionOutput added in v1.5.0

type SessionOutput struct {
	SessionID          string `json:"SessionId"`
	Target             string `json:"Target"`
	Status             string `json:"Status"`
	Owner              string `json:"Owner,omitempty"`
	Reason             string `json:"Reason,omitempty"`
	DocumentName       string `json:"DocumentName,omitempty"`
	AccessType         string `json:"AccessType,omitempty"`
	MaxSessionDuration string `json:"MaxSessionDuration,omitempty"`

	StartDate float64 `json:"StartDate"`
	EndDate   float64 `json:"EndDate,omitempty"`
}

SessionOutput is the wire projection of Session for DescribeSessions. types.Session (aws-sdk-go-v2/service/ssm@v1.73.4) has no Parameters, StreamUrl or TokenValue members -- those are ephemeral values returned only by StartSession/ResumeSession, never echoed back by DescribeSessions -- so they are deliberately dropped here rather than marshalling Session itself.

type Settings

type Settings struct {
	JanitorInterval time.Duration `json:"janitor_interval" env:"SSM_JANITOR_INTERVAL" default:"30s" help:"Janitor tick interval."` //nolint:lll // Kong struct tag makes this line long
	CommandTTL      time.Duration ``                                                                                               //nolint:lll // Kong struct tag makes this line long
	/* 144-byte string literal not displayed */
}

Settings holds service-level configuration for the SSM backend. Fields are picked up by the Kong CLI parser when this struct is embedded in the root CLI command.

type SeveritySummary

type SeveritySummary struct {
	CriticalCount      int `json:"CriticalCount,omitempty"`
	HighCount          int `json:"HighCount,omitempty"`
	MediumCount        int `json:"MediumCount,omitempty"`
	LowCount           int `json:"LowCount,omitempty"`
	InformationalCount int `json:"InformationalCount,omitempty"`
	UnspecifiedCount   int `json:"UnspecifiedCount,omitempty"`
}

SeveritySummary tallies items by ComplianceSeverity, field-diffed against types.SeveritySummary.

type StartAccessRequestInput

type StartAccessRequestInput struct {
	Reason  string                `json:"Reason"`
	Targets []AccessRequestTarget `json:"Targets"`
	Tags    []Tag                 `json:"Tags,omitempty"`
}

StartAccessRequestInput is the request payload.

type StartAccessRequestOutput

type StartAccessRequestOutput struct{}

StartAccessRequestOutput is the response payload.

type StartAccessRequestOutputFull

type StartAccessRequestOutputFull struct {
	AccessRequestID string `json:"AccessRequestId"`
}

StartAccessRequestOutputFull extends the empty stub.

type StartAssociationsOnceInput

type StartAssociationsOnceInput struct {
	AssociationIDs []string `json:"AssociationIds"`
}

StartAssociationsOnceInput is the request payload.

type StartAssociationsOnceOutput

type StartAssociationsOnceOutput struct{}

StartAssociationsOnceOutput is the response for StartAssociationsOnce.

type StartAutomationExecutionInput

type StartAutomationExecutionInput struct {
	ClientToken     string              `json:"ClientToken,omitempty"`
	Parameters      map[string][]string `json:"Parameters,omitempty"`
	DocumentName    string              `json:"DocumentName"`
	DocumentVersion string              `json:"DocumentVersion,omitempty"`
	Mode            string              `json:"Mode,omitempty"`
	MaxConcurrency  string              `json:"MaxConcurrency,omitempty"`
	MaxErrors       string              `json:"MaxErrors,omitempty"`
	Tags            []Tag               `json:"Tags,omitempty"`
}

StartAutomationExecutionInput is the request payload.

type StartAutomationExecutionOutput

type StartAutomationExecutionOutput struct{}

StartAutomationExecutionOutput is the response payload.

type StartAutomationExecutionOutputFull

type StartAutomationExecutionOutputFull struct {
	AutomationExecutionID string `json:"AutomationExecutionId"`
}

StartAutomationExecutionOutputFull extends the empty stub.

type StartChangeRequestExecutionInput

type StartChangeRequestExecutionInput struct {
	ClientToken       string              `json:"ClientToken,omitempty"`
	Parameters        map[string][]string `json:"Parameters,omitempty"`
	DocumentName      string              `json:"DocumentName"`
	DocumentVersion   string              `json:"DocumentVersion,omitempty"`
	ChangeRequestName string              `json:"ChangeRequestName,omitempty"`
	Runbooks          []Runbook           `json:"Runbooks"`
	Tags              []Tag               `json:"Tags,omitempty"`
	ScheduledTime     float64             `json:"ScheduledTime,omitempty"`
}

StartChangeRequestExecutionInput is the request payload.

type StartChangeRequestExecutionOutput

type StartChangeRequestExecutionOutput struct{}

StartChangeRequestExecutionOutput is the response payload.

type StartChangeRequestExecutionOutputFull

type StartChangeRequestExecutionOutputFull struct {
	AutomationExecutionID string `json:"AutomationExecutionId"`
}

StartChangeRequestExecutionOutputFull extends the empty stub.

type StartExecutionPreviewInput

type StartExecutionPreviewInput struct {
	DocumentName    string `json:"DocumentName,omitempty"`
	DocumentVersion string `json:"DocumentVersion,omitempty"`
}

StartExecutionPreviewInput is the request payload. StartExecutionPreviewInput is the request payload for StartExecutionPreview.

DocumentVersion is not modeled: this backend's execution preview never resolves or diffs actual document content by version (ExecutionPreview only records DocumentName/Status), and neither StartExecutionPreviewOutput nor GetExecutionPreviewOutput's types.ExecutionPreview echoes the version back on the real wire either -- there is no observable point to prove this against, so it is accepted on the wire and otherwise inert.

type StartExecutionPreviewOutput

type StartExecutionPreviewOutput struct{}

StartExecutionPreviewOutput is the response payload.

type StartExecutionPreviewOutputFull

type StartExecutionPreviewOutputFull struct {
	ExecutionPreviewID string `json:"ExecutionPreviewId"`
}

StartExecutionPreviewOutputFull extends the empty stub.

type StartSessionInput

type StartSessionInput struct {
	Parameters   map[string][]string `json:"Parameters,omitempty"`
	Target       string              `json:"Target"`
	DocumentName string              `json:"DocumentName,omitempty"`
	Reason       string              `json:"Reason,omitempty"`
}

StartSessionInput is the request payload.

type StartSessionOutput

type StartSessionOutput struct {
	SessionID  string `json:"SessionId"`
	StreamURL  string `json:"StreamUrl"`
	TokenValue string `json:"TokenValue"`
}

StartSessionOutput is the response payload.

type StepExecutionFilter

type StepExecutionFilter struct {
	Key    string   `json:"Key"`
	Values []string `json:"Values"`
}

StepExecutionFilter is types.StepExecutionFilter.

type StopAutomationExecutionInput

type StopAutomationExecutionInput struct {
	AutomationExecutionID string `json:"AutomationExecutionId"`
	Type                  string `json:"Type,omitempty"`
}

StopAutomationExecutionInput is the request payload. Type selects Cancel (the default) or Complete (real SDK types.StopType).

type StopAutomationExecutionOutput

type StopAutomationExecutionOutput struct{}

StopAutomationExecutionOutput is the response for StopAutomationExecution.

type StorageBackend

type StorageBackend interface {
	PutParameter(ctx context.Context, input *PutParameterInput) (*PutParameterOutput, error)
	GetParameter(ctx context.Context, input *GetParameterInput) (*GetParameterOutput, error)
	GetParameters(ctx context.Context, input *GetParametersInput) (*GetParametersOutput, error)
	DeleteParameter(
		ctx context.Context,
		input *DeleteParameterInput,
	) (*DeleteParameterOutput, error)
	DeleteParameters(
		ctx context.Context,
		input *DeleteParametersInput,
	) (*DeleteParametersOutput, error)
	GetParameterHistory(
		ctx context.Context,
		input *GetParameterHistoryInput,
	) (*GetParameterHistoryOutput, error)
	GetParametersByPath(
		ctx context.Context,
		input *GetParametersByPathInput,
	) (*GetParametersByPathOutput, error)
	DescribeParameters(
		ctx context.Context,
		input *DescribeParametersInput,
	) (*DescribeParametersOutput, error)
	AddTagsToResource(ctx context.Context, input *AddTagsToResourceInput) error
	RemoveTagsFromResource(ctx context.Context, input *RemoveTagsFromResourceInput) error
	ListTagsForResource(
		ctx context.Context,
		input *ListTagsForResourceInput,
	) (*ListTagsForResourceOutput, error)
	ListAll(ctx context.Context) []Parameter
	// Document operations.
	CreateDocument(ctx context.Context, input *CreateDocumentInput) (*CreateDocumentOutput, error)
	GetDocument(ctx context.Context, input *GetDocumentInput) (*GetDocumentOutput, error)
	DescribeDocument(
		ctx context.Context,
		input *DescribeDocumentInput,
	) (*DescribeDocumentOutput, error)
	ListDocuments(ctx context.Context, input *ListDocumentsInput) (*ListDocumentsOutput, error)
	UpdateDocument(ctx context.Context, input *UpdateDocumentInput) (*UpdateDocumentOutput, error)
	DeleteDocument(ctx context.Context, input *DeleteDocumentInput) (*DeleteDocumentOutput, error)
	DescribeDocumentPermission(
		ctx context.Context,
		input *DescribeDocumentPermissionInput,
	) (*DescribeDocumentPermissionOutput, error)
	ModifyDocumentPermission(
		ctx context.Context,
		input *ModifyDocumentPermissionInput,
	) (*ModifyDocumentPermissionOutput, error)
	ListDocumentVersions(
		ctx context.Context,
		input *ListDocumentVersionsInput,
	) (*ListDocumentVersionsOutput, error)
	// Command operations.
	SendCommand(ctx context.Context, input *SendCommandInput) (*SendCommandOutput, error)
	ListCommands(ctx context.Context, input *ListCommandsInput) (*ListCommandsOutput, error)
	GetCommandInvocation(
		ctx context.Context,
		input *GetCommandInvocationInput,
	) (*GetCommandInvocationOutput, error)
	ListCommandInvocations(
		ctx context.Context,
		input *ListCommandInvocationsInput,
	) (*ListCommandInvocationsOutput, error)
	// New operations.
	CancelCommand(ctx context.Context, input *CancelCommandInput) (*CancelCommandOutput, error)
	CancelMaintenanceWindowExecution(
		_ context.Context,
		input *CancelMaintenanceWindowExecutionInput,
	) (*CancelMaintenanceWindowExecutionOutput, error)
	CreateActivation(
		ctx context.Context,
		input *CreateActivationInput,
	) (*CreateActivationOutput, error)
	CreateAssociation(
		ctx context.Context,
		input *CreateAssociationInput,
	) (*CreateAssociationOutput, error)
	CreateAssociationBatch(
		ctx context.Context,
		input *CreateAssociationBatchInput,
	) (*CreateAssociationBatchOutput, error)
	CreateMaintenanceWindow(
		ctx context.Context,
		input *CreateMaintenanceWindowInput,
	) (*CreateMaintenanceWindowOutput, error)
	CreateOpsItem(ctx context.Context, input *CreateOpsItemInput) (*CreateOpsItemOutput, error)
	CreateOpsMetadata(
		ctx context.Context,
		input *CreateOpsMetadataInput,
	) (*CreateOpsMetadataOutput, error)
	CreatePatchBaseline(
		ctx context.Context,
		input *CreatePatchBaselineInput,
	) (*CreatePatchBaselineOutput, error)
	AssociateOpsItemRelatedItem(
		ctx context.Context,
		input *AssociateOpsItemRelatedItemInput,
	) (*AssociateOpsItemRelatedItemOutput, error)
	// Document metadata operations (Group 1).
	UpdateDocumentDefaultVersion(
		ctx context.Context,
		input *UpdateDocumentDefaultVersionInput,
	) (*UpdateDocumentDefaultVersionOutput, error)
	UpdateDocumentMetadata(
		ctx context.Context,
		input *UpdateDocumentMetadataInput,
	) (*UpdateDocumentMetadataOutput, error)
	ListDocumentMetadataHistory(
		ctx context.Context,
		input *ListDocumentMetadataHistoryInput,
	) (*ListDocumentMetadataHistoryOutput, error)
	// Inventory operations (Group 2).
	PutInventory(ctx context.Context, input *PutInventoryInput) (*PutInventoryOutput, error)
	GetInventory(ctx context.Context, input *GetInventoryInput) (*GetInventoryOutput, error)
	GetInventorySchema(
		_ context.Context,
		input *GetInventorySchemaInput,
	) (*GetInventorySchemaOutput, error)
	ListInventoryEntries(
		ctx context.Context,
		input *ListInventoryEntriesInput,
	) (*ListInventoryEntriesOutput, error)
	DeleteInventory(
		ctx context.Context,
		input *DeleteInventoryInput,
	) (*DeleteInventoryOutput, error)
	DescribeInventoryDeletions(
		_ context.Context,
		_ *DescribeInventoryDeletionsInput,
	) (*DescribeInventoryDeletionsOutput, error)
	// Compliance operations (Group 3).
	PutComplianceItems(
		ctx context.Context,
		input *PutComplianceItemsInput,
	) (*PutComplianceItemsOutput, error)
	ListComplianceItems(
		ctx context.Context,
		input *ListComplianceItemsInput,
	) (*ListComplianceItemsOutput, error)
	ListComplianceSummaries(
		ctx context.Context,
		_ *ListComplianceSummariesInput,
	) (*ListComplianceSummariesOutput, error)
	ListResourceComplianceSummaries(
		ctx context.Context,
		_ *ListResourceComplianceSummariesInput,
	) (*ListResourceComplianceSummariesOutput, error)
	// Patch baseline operations (Group 4).
	GetPatchBaseline(
		ctx context.Context,
		input *GetPatchBaselineInput,
	) (*GetPatchBaselineOutput, error)
	GetDefaultPatchBaseline(
		ctx context.Context,
		input *GetDefaultPatchBaselineInput,
	) (*GetDefaultPatchBaselineOutput, error)
	GetPatchBaselineForPatchGroup(
		ctx context.Context,
		input *GetPatchBaselineForPatchGroupInput,
	) (*GetPatchBaselineForPatchBaselineOutput, error)
	RegisterDefaultPatchBaseline(
		ctx context.Context,
		input *RegisterDefaultPatchBaselineInput,
	) (*RegisterDefaultPatchBaselineOutput, error)
	RegisterPatchBaselineForPatchGroup(
		ctx context.Context,
		input *RegisterPatchBaselineForPatchGroupInput,
	) (*RegisterPatchBaselineForPatchGroupOutput, error)
	DeregisterPatchBaselineForPatchGroup(
		ctx context.Context,
		input *DeregisterPatchBaselineForPatchGroupInput,
	) (*DeregisterPatchBaselineForPatchGroupOutput, error)
	DeletePatchBaseline(
		ctx context.Context,
		input *DeletePatchBaselineInput,
	) (*DeletePatchBaselineOutput, error)
	DescribePatchBaselines(
		ctx context.Context,
		input *DescribePatchBaselinesInput,
	) (*DescribePatchBaselinesOutput, error)
	DescribePatchGroups(
		ctx context.Context,
		input *DescribePatchGroupsInput,
	) (*DescribePatchGroupsOutput, error)
	DescribePatchGroupState(
		_ context.Context,
		_ *DescribePatchGroupStateInput,
	) (*DescribePatchGroupStateOutput, error)
	DescribePatchProperties(
		_ context.Context,
		_ *DescribePatchPropertiesInput,
	) (*DescribePatchPropertiesOutput, error)
	DescribeEffectivePatchesForPatchBaseline(
		ctx context.Context,
		input *DescribeEffectivePatchesForPatchBaselineInput,
	) (*DescribeEffectivePatchesForPatchBaselineOutput, error)
	GetDeployablePatchSnapshotForInstance(
		_ context.Context,
		input *GetDeployablePatchSnapshotForInstanceInput,
	) (*GetDeployablePatchSnapshotForInstanceOutput, error)
	// Maintenance window operations (Group 5).
	GetMaintenanceWindow(
		ctx context.Context,
		input *GetMaintenanceWindowInput,
	) (*GetMaintenanceWindowOutput, error)
	DeleteMaintenanceWindow(
		ctx context.Context,
		input *DeleteMaintenanceWindowInput,
	) (*DeleteMaintenanceWindowOutput, error)
	UpdateMaintenanceWindow(
		ctx context.Context,
		input *UpdateMaintenanceWindowInput,
	) (*UpdateMaintenanceWindowOutput, error)
	GetMaintenanceWindowTask(
		ctx context.Context,
		input *GetMaintenanceWindowTaskInput,
	) (*GetMaintenanceWindowTaskOutput, error)
	RegisterTargetWithMaintenanceWindow(
		ctx context.Context,
		input *RegisterTargetWithMaintenanceWindowInput,
	) (*RegisterTargetWithMaintenanceWindowOutput, error)
	RegisterTaskWithMaintenanceWindow(
		ctx context.Context,
		input *RegisterTaskWithMaintenanceWindowInput,
	) (*RegisterTaskWithMaintenanceWindowOutput, error)
	DeregisterTargetFromMaintenanceWindow(
		ctx context.Context,
		input *DeregisterTargetFromMaintenanceWindowInput,
	) (*DeregisterTargetFromMaintenanceWindowOutput, error)
	DeregisterTaskFromMaintenanceWindow(
		ctx context.Context,
		input *DeregisterTaskFromMaintenanceWindowInput,
	) (*DeregisterTaskFromMaintenanceWindowOutput, error)
	DescribeMaintenanceWindows(
		ctx context.Context,
		input *DescribeMaintenanceWindowsInput,
	) (*DescribeMaintenanceWindowsOutput, error)
	DescribeMaintenanceWindowsForTarget(
		ctx context.Context,
		input *DescribeMaintenanceWindowsForTargetInput,
	) (*DescribeMaintenanceWindowsForTargetOutput, error)
	DescribeMaintenanceWindowTargets(
		ctx context.Context,
		input *DescribeMaintenanceWindowTargetsInput,
	) (*DescribeMaintenanceWindowTargetsOutput, error)
	DescribeMaintenanceWindowTasks(
		ctx context.Context,
		input *DescribeMaintenanceWindowTasksInput,
	) (*DescribeMaintenanceWindowTasksOutput, error)
	UpdateMaintenanceWindowTarget(
		ctx context.Context,
		input *UpdateMaintenanceWindowTargetInput,
	) (*UpdateMaintenanceWindowTargetOutput, error)
	UpdateMaintenanceWindowTask(
		ctx context.Context,
		input *UpdateMaintenanceWindowTaskInput,
	) (*UpdateMaintenanceWindowTaskOutput, error)
	// OpsItem operations (Group 6).
	GetOpsItem(ctx context.Context, input *GetOpsItemInput) (*GetOpsItemOutput, error)
	DeleteOpsItem(ctx context.Context, input *DeleteOpsItemInput) (*DeleteOpsItemOutput, error)
	DescribeOpsItems(
		ctx context.Context,
		input *DescribeOpsItemsInput,
	) (*DescribeOpsItemsOutput, error)
	UpdateOpsItem(ctx context.Context, input *UpdateOpsItemInput) (*UpdateOpsItemOutput, error)
	DisassociateOpsItemRelatedItem(
		ctx context.Context,
		input *DisassociateOpsItemRelatedItemInput,
	) (*DisassociateOpsItemRelatedItemOutput, error)
	ListOpsItemRelatedItems(
		ctx context.Context,
		input *ListOpsItemRelatedItemsInput,
	) (*ListOpsItemRelatedItemsOutput, error)
	ListOpsItemEvents(
		ctx context.Context,
		input *ListOpsItemEventsInput,
	) (*ListOpsItemEventsOutput, error)
	GetOpsMetadata(ctx context.Context, input *GetOpsMetadataInput) (*GetOpsMetadataOutput, error)
	UpdateOpsMetadata(
		ctx context.Context,
		input *UpdateOpsMetadataInput,
	) (*UpdateOpsMetadataOutput, error)
	DeleteOpsMetadata(
		ctx context.Context,
		input *DeleteOpsMetadataInput,
	) (*DeleteOpsMetadataOutput, error)
	// Remaining operations.
	CreateResourceDataSync(
		ctx context.Context,
		input *CreateResourceDataSyncInput,
	) (*CreateResourceDataSyncOutput, error)
	DeleteActivation(
		ctx context.Context,
		input *DeleteActivationInput,
	) (*DeleteActivationOutput, error)
	DeleteAssociation(
		ctx context.Context,
		input *DeleteAssociationInput,
	) (*DeleteAssociationOutput, error)
	DeleteResourceDataSync(
		ctx context.Context,
		input *DeleteResourceDataSyncInput,
	) (*DeleteResourceDataSyncOutput, error)
	DeleteResourcePolicy(
		ctx context.Context,
		input *DeleteResourcePolicyInput,
	) (*DeleteResourcePolicyOutput, error)
	DeregisterManagedInstance(
		ctx context.Context,
		input *DeregisterManagedInstanceInput,
	) (*DeregisterManagedInstanceOutput, error)
	DescribeActivations(
		ctx context.Context,
		_ *DescribeActivationsInput,
	) (*DescribeActivationsOutput, error)
	DescribeAssociation(
		ctx context.Context,
		input *DescribeAssociationInput,
	) (*DescribeAssociationOutput, error)
	DescribeAssociationExecutionTargets(
		_ context.Context,
		input *DescribeAssociationExecutionTargetsInput,
	) (*DescribeAssociationExecutionTargetsOutputFull, error)
	DescribeAssociationExecutions(
		ctx context.Context,
		input *DescribeAssociationExecutionsInput,
	) (*DescribeAssociationExecutionsOutputFull, error)
	DescribeAutomationExecutions(
		ctx context.Context,
		_ *DescribeAutomationExecutionsInput,
	) (*DescribeAutomationExecutionsOutputFull, error)
	DescribeAutomationStepExecutions(
		ctx context.Context,
		input *DescribeAutomationStepExecutionsInput,
	) (*DescribeAutomationStepExecutionsOutputFull, error)
	DescribeAvailablePatches(
		_ context.Context,
		_ *DescribeAvailablePatchesInput,
	) (*DescribeAvailablePatchesOutput, error)
	DescribeEffectiveInstanceAssociations(
		ctx context.Context,
		input *DescribeEffectiveInstanceAssociationsInput,
	) (*DescribeEffectiveInstanceAssociationsOutputFull, error)
	DescribeInstanceAssociationsStatus(
		ctx context.Context,
		input *DescribeInstanceAssociationsStatusInput,
	) (*DescribeInstanceAssociationsStatusOutputFull, error)
	DescribeInstanceInformation(
		ctx context.Context,
		_ *DescribeInstanceInformationInput,
	) (*DescribeInstanceInformationOutputFull, error)
	DescribeInstancePatchStates(
		_ context.Context,
		_ *DescribeInstancePatchStatesInput,
	) (*DescribeInstancePatchStatesOutputFull, error)
	DescribeInstancePatchStatesForPatchGroup(
		_ context.Context,
		_ *DescribeInstancePatchStatesForPatchGroupInput,
	) (*DescribeInstancePatchStatesForPatchGroupOutput, error)
	DescribeInstancePatches(
		_ context.Context,
		_ *DescribeInstancePatchesInput,
	) (*DescribeInstancePatchesOutput, error)
	DescribeInstanceProperties(
		_ context.Context,
		_ *DescribeInstancePropertiesInput,
	) (*DescribeInstancePropertiesOutput, error)
	DescribeMaintenanceWindowExecutionTaskInvocations(
		_ context.Context,
		input *DescribeMaintenanceWindowExecutionTaskInvocationsInput,
	) (*DescribeMaintenanceWindowExecutionTaskInvocationsOutputFull, error)
	DescribeMaintenanceWindowExecutionTasks(
		_ context.Context,
		input *DescribeMaintenanceWindowExecutionTasksInput,
	) (*DescribeMaintenanceWindowExecutionTasksOutputFull, error)
	DescribeMaintenanceWindowExecutions(
		_ context.Context,
		input *DescribeMaintenanceWindowExecutionsInput,
	) (*DescribeMaintenanceWindowExecutionsOutputFull, error)
	DescribeMaintenanceWindowSchedule(
		ctx context.Context,
		input *DescribeMaintenanceWindowScheduleInput,
	) (*DescribeMaintenanceWindowScheduleOutputFull, error)
	DescribeSessions(
		ctx context.Context,
		input *DescribeSessionsInput,
	) (*DescribeSessionsOutputFull, error)
	GetAccessToken(_ context.Context, input *GetAccessTokenInput) (*GetAccessTokenOutputFull, error)
	GetAutomationExecution(
		ctx context.Context,
		input *GetAutomationExecutionInput,
	) (*GetAutomationExecutionOutputFull, error)
	GetCalendarState(
		ctx context.Context,
		input *GetCalendarStateInput,
	) (*GetCalendarStateOutputFull, error)
	GetConnectionStatus(
		ctx context.Context,
		input *GetConnectionStatusInput,
	) (*GetConnectionStatusOutputFull, error)
	GetExecutionPreview(
		ctx context.Context,
		input *GetExecutionPreviewInput,
	) (*GetExecutionPreviewOutputFull, error)
	GetMaintenanceWindowExecution(
		_ context.Context,
		input *GetMaintenanceWindowExecutionInput,
	) (*GetMaintenanceWindowExecutionOutputFull, error)
	GetMaintenanceWindowExecutionTask(
		_ context.Context,
		input *GetMaintenanceWindowExecutionTaskInput,
	) (*GetMaintenanceWindowExecutionTaskOutputFull, error)
	GetMaintenanceWindowExecutionTaskInvocation(
		_ context.Context,
		input *GetMaintenanceWindowExecutionTaskInvocationInput,
	) (*GetMaintenanceWindowExecutionTaskInvocationOutputFull, error)
	GetOpsSummary(ctx context.Context, _ *GetOpsSummaryInput) (*GetOpsSummaryOutputFull, error)
	GetResourcePolicies(
		ctx context.Context,
		input *GetResourcePoliciesInput,
	) (*GetResourcePoliciesOutputFull, error)
	GetServiceSetting(
		ctx context.Context,
		input *GetServiceSettingInput,
	) (*GetServiceSettingOutputFull, error)
	LabelParameterVersion(
		ctx context.Context,
		input *LabelParameterVersionInput,
	) (*LabelParameterVersionOutputFull, error)
	ListAssociationVersions(
		ctx context.Context,
		input *ListAssociationVersionsInput,
	) (*ListAssociationVersionsOutputFull, error)
	ListAssociations(ctx context.Context, _ *ListAssociationsInput) (*ListAssociationsOutputFull, error)
	ListNodes(ctx context.Context, _ *ListNodesInput) (*ListNodesOutputFull, error)
	ListNodesSummary(
		ctx context.Context,
		_ *ListNodesSummaryInput,
	) (*ListNodesSummaryOutputFull, error)
	ListOpsMetadata(
		ctx context.Context,
		_ *ListOpsMetadataInput,
	) (*ListOpsMetadataOutputFull, error)
	ListResourceDataSync(
		ctx context.Context,
		_ *ListResourceDataSyncInput,
	) (*ListResourceDataSyncOutputFull, error)
	PutResourcePolicy(
		ctx context.Context,
		input *PutResourcePolicyInput,
	) (*PutResourcePolicyOutputFull, error)
	ResetServiceSetting(
		ctx context.Context,
		input *ResetServiceSettingInput,
	) (*ResetServiceSettingOutputFull, error)
	ResumeSession(ctx context.Context, input *ResumeSessionInput) (*ResumeSessionOutputFull, error)
	SendAutomationSignal(
		ctx context.Context,
		input *SendAutomationSignalInput,
	) (*SendAutomationSignalOutput, error)
	StartAccessRequest(
		_ context.Context,
		input *StartAccessRequestInput,
	) (*StartAccessRequestOutputFull, error)
	StartAssociationsOnce(
		ctx context.Context,
		input *StartAssociationsOnceInput,
	) (*StartAssociationsOnceOutput, error)
	StartAutomationExecution(
		ctx context.Context,
		input *StartAutomationExecutionInput,
	) (*StartAutomationExecutionOutputFull, error)
	StartChangeRequestExecution(
		ctx context.Context,
		input *StartChangeRequestExecutionInput,
	) (*StartChangeRequestExecutionOutputFull, error)
	StartExecutionPreview(
		ctx context.Context,
		input *StartExecutionPreviewInput,
	) (*StartExecutionPreviewOutputFull, error)
	StartSession(ctx context.Context, input *StartSessionInput) (*StartSessionOutput, error)
	StopAutomationExecution(
		ctx context.Context,
		input *StopAutomationExecutionInput,
	) (*StopAutomationExecutionOutput, error)
	TerminateSession(
		ctx context.Context,
		input *TerminateSessionInput,
	) (*TerminateSessionOutput, error)
	UnlabelParameterVersion(
		ctx context.Context,
		input *UnlabelParameterVersionInput,
	) (*UnlabelParameterVersionOutputFull, error)
	UpdateAssociation(
		ctx context.Context,
		input *UpdateAssociationInput,
	) (*UpdateAssociationOutput, error)
	UpdateAssociationStatus(
		ctx context.Context,
		input *UpdateAssociationStatusInput,
	) (*UpdateAssociationStatusOutputFull, error)
	UpdateManagedInstanceRole(
		ctx context.Context,
		input *UpdateManagedInstanceRoleInput,
	) (*UpdateManagedInstanceRoleOutput, error)
	UpdatePatchBaseline(
		ctx context.Context,
		input *UpdatePatchBaselineInput,
	) (*UpdatePatchBaselineOutput, error)
	UpdateResourceDataSync(
		ctx context.Context,
		input *UpdateResourceDataSyncInput,
	) (*UpdateResourceDataSyncOutput, error)
	UpdateServiceSetting(
		ctx context.Context,
		input *UpdateServiceSettingInput,
	) (*UpdateServiceSettingOutput, error)
	// Cloud connector operations.
	CreateCloudConnector(
		ctx context.Context,
		input *CreateCloudConnectorInput,
	) (*CreateCloudConnectorOutput, error)
	DeleteCloudConnector(
		ctx context.Context,
		input *DeleteCloudConnectorInput,
	) (*DeleteCloudConnectorOutput, error)
	GetCloudConnector(
		ctx context.Context,
		input *GetCloudConnectorInput,
	) (*GetCloudConnectorOutput, error)
	ListCloudConnectors(
		ctx context.Context,
		input *ListCloudConnectorsInput,
	) (*ListCloudConnectorsOutput, error)
	UpdateCloudConnector(
		ctx context.Context,
		input *UpdateCloudConnectorInput,
	) (*UpdateCloudConnectorOutput, error)
	ValidateCloudConnector(
		ctx context.Context,
		input *ValidateCloudConnectorInput,
	) (*ValidateCloudConnectorOutput, error)
}

StorageBackend defines the interface for an SSM Parameter Store backend.

type Tag

type Tag struct {
	Key   string `json:"Key"`
	Value string `json:"Value"`
}

Tag represents a key/value tag pair.

type TerminateSessionInput

type TerminateSessionInput struct {
	SessionID string `json:"SessionId"`
}

TerminateSessionInput is the request payload.

type TerminateSessionOutput

type TerminateSessionOutput struct {
	SessionID string `json:"SessionId"`
}

TerminateSessionOutput is the response payload.

type UnlabelParameterVersionInput

type UnlabelParameterVersionInput struct {
	Name             string   `json:"Name"`
	Labels           []string `json:"Labels"`
	ParameterVersion int64    `json:"ParameterVersion,omitempty"`
}

UnlabelParameterVersionInput is the request payload.

type UnlabelParameterVersionOutput

type UnlabelParameterVersionOutput struct{}

UnlabelParameterVersionOutput is the response payload.

type UnlabelParameterVersionOutputFull

type UnlabelParameterVersionOutputFull struct {
	InvalidLabels []string `json:"InvalidLabels"`
	RemovedLabels []string `json:"RemovedLabels"`
}

UnlabelParameterVersionOutputFull extends the empty stub.

type UpdateAssociationInput

type UpdateAssociationInput struct {
	Parameters                    map[string][]string                `json:"Parameters,omitempty"`
	Duration                      *int32                             `json:"Duration,omitempty"`
	OutputLocation                *InstanceAssociationOutputLocation `json:"OutputLocation,omitempty"`
	AssociationDispatchAssumeRole *string                            `json:"AssociationDispatchAssumeRole,omitempty"`
	AssociationID                 string                             `json:"AssociationId"`
	SyncCompliance                string                             `json:"SyncCompliance,omitempty"`
	DocumentVersion               *string                            `json:"DocumentVersion,omitempty"`
	AutomationTargetParameterName *string                            `json:"AutomationTargetParameterName,omitempty"`
	ScheduleExpression            *string                            `json:"ScheduleExpression,omitempty"`
	ComplianceSeverity            string                             `json:"ComplianceSeverity,omitempty"`
	AssociationName               *string                            `json:"AssociationName,omitempty"`
	MaxConcurrency                *string                            `json:"MaxConcurrency,omitempty"`
	MaxErrors                     *string                            `json:"MaxErrors,omitempty"`
	Targets                       []AssociationTarget                `json:"Targets,omitempty"`
	CalendarNames                 []string                           `json:"CalendarNames,omitempty"`
	ApplyOnlyAtCronInterval       bool                               `json:"ApplyOnlyAtCronInterval,omitempty"`
}

UpdateAssociationInput is the request payload.

type UpdateAssociationOutput

type UpdateAssociationOutput struct {
	AssociationDescription Association `json:"AssociationDescription"`
}

UpdateAssociationOutput is the response payload.

type UpdateAssociationStatusInput

type UpdateAssociationStatusInput struct {
	InstanceID        string                 `json:"InstanceId"`
	Name              string                 `json:"Name"`
	AssociationStatus AssociationStatusValue `json:"AssociationStatus"`
}

UpdateAssociationStatusInput is the request payload.

type UpdateAssociationStatusOutput

type UpdateAssociationStatusOutput struct {
	AssociationDescription Association `json:"AssociationDescription"`
}

UpdateAssociationStatusOutput is the response payload.

type UpdateAssociationStatusOutputFull

type UpdateAssociationStatusOutputFull struct {
	AssociationDescription Association `json:"AssociationDescription"`
}

UpdateAssociationStatusOutputFull extends the empty stub.

type UpdateCloudConnectorInput

type UpdateCloudConnectorInput struct {
	Configuration    *CloudConnectorConfiguration `json:"Configuration,omitempty"`
	Description      *string                      `json:"Description,omitempty"`
	DisplayName      *string                      `json:"DisplayName,omitempty"`
	CloudConnectorID string                       `json:"CloudConnectorId"`
}

UpdateCloudConnectorInput is the request payload for UpdateCloudConnector.

type UpdateCloudConnectorOutput

type UpdateCloudConnectorOutput struct {
	CloudConnectorID string `json:"CloudConnectorId"`
}

UpdateCloudConnectorOutput is the response payload for UpdateCloudConnector.

type UpdateDocumentDefaultVersionInput

type UpdateDocumentDefaultVersionInput struct {
	Name            string `json:"Name"`
	DocumentVersion string `json:"DocumentVersion"`
}

UpdateDocumentDefaultVersionInput is the request payload for UpdateDocumentDefaultVersion.

type UpdateDocumentDefaultVersionOutput

type UpdateDocumentDefaultVersionOutput struct {
	Description *DocumentDefaultVersionDescription `json:"Description,omitempty"`
}

UpdateDocumentDefaultVersionOutput is the response payload for UpdateDocumentDefaultVersion.

type UpdateDocumentInput

type UpdateDocumentInput struct {
	Name            string              `json:"Name"`
	Content         string              `json:"Content"`
	DisplayName     *string             `json:"DisplayName,omitempty"`
	DocumentFormat  string              `json:"DocumentFormat,omitempty"`
	DocumentVersion *string             `json:"DocumentVersion,omitempty"`
	TargetType      *string             `json:"TargetType,omitempty"`
	VersionName     string              `json:"VersionName,omitempty"`
	Attachments     []AttachmentsSource `json:"Attachments,omitempty"`
}

UpdateDocumentInput is the request payload for UpdateDocument.

type UpdateDocumentMetadataInput

type UpdateDocumentMetadataInput struct {
	DocumentReviews *DocumentReviews `json:"DocumentReviews,omitempty"`
	Name            string           `json:"Name"`
	DocumentVersion string           `json:"DocumentVersion,omitempty"`
}

UpdateDocumentMetadataInput is the request payload for UpdateDocumentMetadata. Fields ordered for alignment.

type UpdateDocumentMetadataOutput

type UpdateDocumentMetadataOutput struct{}

UpdateDocumentMetadataOutput is the response for UpdateDocumentMetadata.

type UpdateDocumentOutput

type UpdateDocumentOutput struct {
	DocumentDescription DocumentDescription `json:"DocumentDescription"`
}

UpdateDocumentOutput is the response payload for UpdateDocument.

type UpdateMaintenanceWindowInput

type UpdateMaintenanceWindowInput struct {
	Enabled                  *bool   `json:"Enabled,omitempty"`
	AllowUnassociatedTargets *bool   `json:"AllowUnassociatedTargets,omitempty"`
	ScheduleOffset           *int32  `json:"ScheduleOffset,omitempty"`
	Duration                 *int32  `json:"Duration,omitempty"`
	Cutoff                   *int32  `json:"Cutoff,omitempty"`
	Name                     *string `json:"Name,omitempty"`
	Description              *string `json:"Description,omitempty"`
	Schedule                 *string `json:"Schedule,omitempty"`
	ScheduleTimezone         *string `json:"ScheduleTimezone,omitempty"`
	StartDate                *string `json:"StartDate,omitempty"`
	EndDate                  *string `json:"EndDate,omitempty"`
	WindowID                 string  `json:"WindowId"`
}

UpdateMaintenanceWindowInput is the request payload for UpdateMaintenanceWindow.

type UpdateMaintenanceWindowOutput

type UpdateMaintenanceWindowOutput struct {
	MaintenanceWindow
}

UpdateMaintenanceWindowOutput is the response payload for UpdateMaintenanceWindow.

type UpdateMaintenanceWindowTargetInput

type UpdateMaintenanceWindowTargetInput struct {
	WindowID       string         `json:"WindowId"`
	WindowTargetID string         `json:"WindowTargetId"`
	OwnerInfo      *string        `json:"OwnerInformation,omitempty"`
	Name           *string        `json:"Name,omitempty"`
	Description    *string        `json:"Description,omitempty"`
	Replace        *bool          `json:"Replace,omitempty"`
	Targets        []WindowTarget `json:"Targets,omitempty"`
}

UpdateMaintenanceWindowTargetInput is the request payload for UpdateMaintenanceWindowTarget. Fields ordered for alignment.

type UpdateMaintenanceWindowTargetOutput

type UpdateMaintenanceWindowTargetOutput struct {
	WindowID       string         `json:"WindowId,omitempty"`
	WindowTargetID string         `json:"WindowTargetId,omitempty"`
	OwnerInfo      string         `json:"OwnerInformation,omitempty"`
	Name           string         `json:"Name,omitempty"`
	Description    string         `json:"Description,omitempty"`
	Targets        []WindowTarget `json:"Targets,omitempty"`
}

UpdateMaintenanceWindowTargetOutput is the response payload for UpdateMaintenanceWindowTarget.

type UpdateMaintenanceWindowTaskInput

type UpdateMaintenanceWindowTaskInput struct {
	LoggingInfo              *MaintenanceWindowLoggingInfo                  `json:"LoggingInfo,omitempty"`
	TaskInvocationParameters *MaintenanceWindowTaskInvocationParameters     `json:"TaskInvocationParameters,omitempty"`
	TaskParameters           map[string]MaintenanceWindowTaskParameterValue `json:"TaskParameters,omitempty"`
	Priority                 *int32                                         `json:"Priority,omitempty"`
	WindowID                 string                                         `json:"WindowId"`
	WindowTaskID             string                                         `json:"WindowTaskId"`
	TaskArn                  *string                                        `json:"TaskArn,omitempty"`
	Name                     *string                                        `json:"Name,omitempty"`
	Description              *string                                        `json:"Description,omitempty"`
	ServiceRoleArn           *string                                        `json:"ServiceRoleArn,omitempty"`
	MaxConcurrency           *string                                        `json:"MaxConcurrency,omitempty"`
	MaxErrors                *string                                        `json:"MaxErrors,omitempty"`
	CutoffBehavior           string                                         `json:"CutoffBehavior,omitempty"`
	Replace                  *bool                                          `json:"Replace,omitempty"`
	Targets                  []WindowTarget                                 `json:"Targets,omitempty"`
}

UpdateMaintenanceWindowTaskInput is the request payload for UpdateMaintenanceWindowTask. Fields ordered for alignment.

type UpdateMaintenanceWindowTaskOutput

type UpdateMaintenanceWindowTaskOutput struct {
	LoggingInfo              *MaintenanceWindowLoggingInfo                  `json:"LoggingInfo,omitempty"`
	TaskInvocationParameters *MaintenanceWindowTaskInvocationParameters     `json:"TaskInvocationParameters,omitempty"`
	TaskParameters           map[string]MaintenanceWindowTaskParameterValue `json:"TaskParameters,omitempty"`
	WindowID                 string                                         `json:"WindowId,omitempty"`
	WindowTaskID             string                                         `json:"WindowTaskId,omitempty"`
	TaskArn                  string                                         `json:"TaskArn,omitempty"`
	Name                     string                                         `json:"Name,omitempty"`
	Description              string                                         `json:"Description,omitempty"`
	ServiceRoleArn           string                                         `json:"ServiceRoleArn,omitempty"`
	MaxConcurrency           string                                         `json:"MaxConcurrency,omitempty"`
	MaxErrors                string                                         `json:"MaxErrors,omitempty"`
	CutoffBehavior           string                                         `json:"CutoffBehavior,omitempty"`
	Targets                  []WindowTarget                                 `json:"Targets,omitempty"`
	Priority                 int32                                          `json:"Priority,omitempty"`
}

UpdateMaintenanceWindowTaskOutput is the response payload for UpdateMaintenanceWindowTask.

type UpdateManagedInstanceRoleInput

type UpdateManagedInstanceRoleInput struct {
	InstanceID string `json:"InstanceId"`
	IamRole    string `json:"IamRole"`
}

UpdateManagedInstanceRoleInput is the request payload.

type UpdateManagedInstanceRoleOutput

type UpdateManagedInstanceRoleOutput struct{}

UpdateManagedInstanceRoleOutput is the response for UpdateManagedInstanceRole.

type UpdateOpsItemInput

type UpdateOpsItemInput struct {
	OperationalData  map[string]OpsItemDataValue `json:"OperationalData,omitempty"`
	Priority         *int32                      `json:"Priority,omitempty"`
	OpsItemID        string                      `json:"OpsItemId"`
	OpsItemArn       *string                     `json:"OpsItemArn,omitempty"`
	Title            *string                     `json:"Title,omitempty"`
	Description      *string                     `json:"Description,omitempty"`
	Status           string                      `json:"Status,omitempty"`
	Severity         *string                     `json:"Severity,omitempty"`
	Category         *string                     `json:"Category,omitempty"`
	ActualStartTime  *float64                    `json:"ActualStartTime,omitempty"`
	ActualEndTime    *float64                    `json:"ActualEndTime,omitempty"`
	Notifications    []OpsItemNotification       `json:"Notifications,omitempty"`
	PlannedStartTime *float64                    `json:"PlannedStartTime,omitempty"`
	PlannedEndTime   *float64                    `json:"PlannedEndTime,omitempty"`
	RelatedOpsItems  []RelatedOpsItemRef         `json:"RelatedOpsItems,omitempty"`

	OperationalDataToDelete []string `json:"OperationalDataToDelete,omitempty"`
}

UpdateOpsItemInput is the request payload for UpdateOpsItem. There is no AccountId member on the real op at all (api_op_UpdateOpsItem.go) -- that member exists only on CreateOpsItemInput; a fabricated AccountId here previously let a caller silently rewrite an OpsItem's AccountId through UpdateOpsItem, an operation the real SDK cannot even express.

type UpdateOpsItemOutput

type UpdateOpsItemOutput struct{}

UpdateOpsItemOutput is the response for UpdateOpsItem.

type UpdateOpsMetadataInput

type UpdateOpsMetadataInput struct {
	Metadata       map[string]MetadataValue `json:"MetadataToUpdate,omitempty"`
	OpsMetadataArn string                   `json:"OpsMetadataArn"`
	KeysToDelete   []string                 `json:"KeysToDelete,omitempty"`
}

UpdateOpsMetadataInput is the request payload for UpdateOpsMetadata.

type UpdateOpsMetadataOutput

type UpdateOpsMetadataOutput struct {
	OpsMetadataArn string `json:"OpsMetadataArn"`
}

UpdateOpsMetadataOutput is the response payload for UpdateOpsMetadata.

type UpdatePatchBaselineInput

type UpdatePatchBaselineInput struct {
	ApprovalRules                            *PatchRuleGroup   `json:"ApprovalRules,omitempty"`
	GlobalFilters                            *PatchFilterGroup `json:"GlobalFilters,omitempty"`
	ApprovedPatchesEnableNonSecurity         *bool             `json:"ApprovedPatchesEnableNonSecurity,omitempty"`
	Replace                                  *bool             `json:"Replace,omitempty"`
	BaselineID                               string            `json:"BaselineId"`
	Name                                     *string           `json:"Name,omitempty"`
	Description                              *string           `json:"Description,omitempty"`
	ApprovedPatchesComplianceLevel           string            `json:"ApprovedPatchesComplianceLevel,omitempty"`
	AvailableSecurityUpdatesComplianceStatus string            `json:"AvailableSecurityUpdatesComplianceStatus,omitempty"`
	RejectedPatchesAction                    string            `json:"RejectedPatchesAction,omitempty"`
	ApprovedPatches                          []string          `json:"ApprovedPatches,omitempty"`
	RejectedPatches                          []string          `json:"RejectedPatches,omitempty"`
	Sources                                  []PatchSource     `json:"Sources,omitempty"`
}

UpdatePatchBaselineInput is the request payload for UpdatePatchBaseline.

type UpdatePatchBaselineOutput

type UpdatePatchBaselineOutput struct {
	PatchBaseline
}

UpdatePatchBaselineOutput is the response payload for UpdatePatchBaseline.

type UpdateResourceDataSyncInput

type UpdateResourceDataSyncInput struct {
	SyncSource *ResourceDataSyncSource `json:"SyncSource"`
	SyncName   string                  `json:"SyncName"`
	SyncType   string                  `json:"SyncType"`
}

UpdateResourceDataSyncInput is the request payload.

type UpdateResourceDataSyncOutput

type UpdateResourceDataSyncOutput struct{}

UpdateResourceDataSyncOutput is the response for UpdateResourceDataSync.

type UpdateServiceSettingInput

type UpdateServiceSettingInput struct {
	SettingID    string `json:"SettingId"`
	SettingValue string `json:"SettingValue"`
}

UpdateServiceSettingInput is the request payload.

type UpdateServiceSettingOutput

type UpdateServiceSettingOutput struct{}

UpdateServiceSettingOutput is the response for UpdateServiceSetting.

type ValidateCloudConnectorInput

type ValidateCloudConnectorInput struct {
	CloudConnectorID string `json:"CloudConnectorId"`
	MaxResults       *int64 `json:"MaxResults,omitempty"`
	NextToken        string `json:"NextToken,omitempty"`
}

ValidateCloudConnectorInput is the request payload for ValidateCloudConnector.

type ValidateCloudConnectorOutput

type ValidateCloudConnectorOutput struct {
	NextToken          string              `json:"NextToken,omitempty"`
	ValidationFindings []ValidationFinding `json:"ValidationFindings"`
}

ValidateCloudConnectorOutput is the response payload for ValidateCloudConnector.

type ValidationFinding

type ValidationFinding struct {
	Code            string                  `json:"Code,omitempty"`
	Message         string                  `json:"Message,omitempty"`
	ProviderMessage string                  `json:"ProviderMessage,omitempty"`
	Scope           *ValidationFindingScope `json:"Scope,omitempty"`
	Type            string                  `json:"Type,omitempty"`
}

ValidationFinding describes one finding from ValidateCloudConnector.

type ValidationFindingScope

type ValidationFindingScope struct {
	ID   string `json:"Id,omitempty"`
	Type string `json:"Type,omitempty"`
}

ValidationFindingScope identifies the specific resource scope of a validation finding.

type WindowTarget

type WindowTarget struct {
	Key    string   `json:"Key"`
	Values []string `json:"Values"`
}

WindowTarget is a target specification for maintenance window tasks.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL