Documentation ¶
Overview ¶
Package main represents the entry point of the agent.
Package main represents the entry point of the agent. Parser contains logic for commandline handling flags
Directories ¶
Path | Synopsis |
---|---|
agentlogstocloudwatch
|
|
cloudwatchlogspublisher
Package cloudwatchlogspublisher is responsible for pulling logs from the log queue and publishing them to cloudwatch
|
Package cloudwatchlogspublisher is responsible for pulling logs from the log queue and publishing them to cloudwatch |
Package appconfig manages the configuration of the agent.
|
Package appconfig manages the configuration of the agent. |
association
|
|
converter
Package converter converts the plugin information from version 1.0 and 1.2 to version 2.0
|
Package converter converts the plugin information from version 1.0 and 1.2 to version 2.0 |
model
Package model provides model definition for association
|
Package model provides model definition for association |
parser
Package parser contains utilities for parsing and encoding MDS/SSM messages.
|
Package parser contains utilities for parsing and encoding MDS/SSM messages. |
processor
Package processor manage polling of associations, dispatching association to processor
|
Package processor manage polling of associations, dispatching association to processor |
rateexpr
Package rateexpr provides logic for parsing and scheduling rate expressions
|
Package rateexpr provides logic for parsing and scheduling rate expressions |
recorder
Package recorder records the association name of the last executed association to avoid duplicate execution
|
Package recorder records the association name of the last executed association to avoid duplicate execution |
scheduleexpression
Package scheduleexpression provides interface for schedule expression and factory for constructing generic parsed schedule expression
|
Package scheduleexpression provides interface for schedule expression and factory for constructing generic parsed schedule expression |
schedulemanager
Package schedulemanager schedules association and submits the association to the task pool schedulemanager is a singleton so it can be access at the plugin level
|
Package schedulemanager schedules association and submits the association to the task pool schedulemanager is a singleton so it can be access at the plugin level |
schedulemanager/signal
Package signal manages signal channel required by sending/receiving request for executing scheduled association
|
Package signal manages signal channel required by sending/receiving request for executing scheduled association |
scheduler
Package scheduler provides ability to create scheduled job
|
Package scheduler provides ability to create scheduled job |
service
Package service wraps SSM service
|
Package service wraps SSM service |
Package cli represents the entry point of the ssm agent cli.
|
Package cli represents the entry point of the ssm agent cli. |
clicommand
Package clicommand contains the implementation of all commands for the ssm agent cli
|
Package clicommand contains the implementation of all commands for the ssm agent cli |
cliutil
Package cliutil contains helper functions for cli and clicommand
|
Package cliutil contains helper functions for cli and clicommand |
Package main represents the entry point of the ssm agent cli.
|
Package main represents the entry point of the ssm agent cli. |
compliance
|
|
Package context defines a type that carries context specific data such as the logger.
|
Package context defines a type that carries context specific data such as the logger. |
Package contracts helps persist documents state to disk
|
Package contracts helps persist documents state to disk |
Package docparser contains methods for parsing and encoding any type of document, i.e.
|
Package docparser contains methods for parsing and encoding any type of document, i.e. |
Package executers contains general purpose (shell) command executing objects.
|
Package executers contains general purpose (shell) command executing objects. |
Package fileutil contains utilities for working with the file system.
|
Package fileutil contains utilities for working with the file system. |
artifact
Package artifact contains utilities for working downloading files.
|
Package artifact contains utilities for working downloading files. |
filemanager
TODO: meloniam@ https://sim.amazon.com/issues/SSM-3322 TODO: This package is a start to migration of the fileutil code to be inside an interface for better mocking.
|
TODO: meloniam@ https://sim.amazon.com/issues/SSM-3322 TODO: This package is a start to migration of the fileutil code to be inside an interface for better mocking. |
filemanager/mock
Package fileutil_mock has mock functions for filemanager package
|
Package fileutil_mock has mock functions for filemanager package |
Package fingerprint contains functions that helps identify an instance this is done to protect customers from launching two instances with the same instance identifier and thus running commands intended for one on the other
|
Package fingerprint contains functions that helps identify an instance this is done to protect customers from launching two instances with the same instance identifier and thus running commands intended for one on the other |
framework
|
|
coremanager
Package coremanager encapsulates the logic for configuring, starting and stopping core modules
|
Package coremanager encapsulates the logic for configuring, starting and stopping core modules |
coremodules
Package coremodules contains a list of implemented core modules.
|
Package coremodules contains a list of implemented core modules. |
docmanager
Package docmanager helps persist documents state to disk
|
Package docmanager helps persist documents state to disk |
processor
Package processor defines the document processing unit interface
|
Package processor defines the document processing unit interface |
processor/executer
Package executer provides interfaces as document execution logic
|
Package executer provides interfaces as document execution logic |
processor/executer/basicexecuter
Package basicexecuter provides interfaces as document execution logic
|
Package basicexecuter provides interfaces as document execution logic |
processor/executer/iohandler
Package iohandler implements the iohandler for the plugins
|
Package iohandler implements the iohandler for the plugins |
processor/executer/iohandler/iomodule
Package iomodule implements the output modules
|
Package iomodule implements the output modules |
processor/executer/iohandler/iomodule/mock
Package iomodulemock implements the mock iomodule
|
Package iomodulemock implements the mock iomodule |
processor/executer/iohandler/mock
Package iohandlermocks implements the mock iohandler
|
Package iohandlermocks implements the mock iohandler |
processor/executer/iohandler/multiwriter
Package multiwriter implements a multi-writer
|
Package multiwriter implements a multi-writer |
processor/executer/iohandler/multiwriter/mock
Package multiwritermock creates the mock mulitwriter
|
Package multiwritermock creates the mock mulitwriter |
processor/executer/mock
Package executer provides interfaces as document execution logic
|
Package executer provides interfaces as document execution logic |
processor/executer/outofproc/proc
Package process wraps up the os.Process interface and also provides os-specific process lookup functions
|
Package process wraps up the os.Process interface and also provides os-specific process lookup functions |
processor/executer/plugin
Package plugin contains general interfaces and types relevant to plugins.
|
Package plugin contains general interfaces and types relevant to plugins. |
runpluginutil
Package runpluginutil run plugin utility functions without referencing the actually plugin impl packages
|
Package runpluginutil run plugin utility functions without referencing the actually plugin impl packages |
Package githubclient contains methods for interacting with git
|
Package githubclient contains methods for interacting with git |
mock
Package mock_githubclient contains methods to mock githubclient package
|
Package mock_githubclient contains methods to mock githubclient package |
Package health contains routines that periodically reports health information of the agent
|
Package health contains routines that periodically reports health information of the agent |
Package hibernation is responsible for the agent in hibernate mode.
|
Package hibernation is responsible for the agent in hibernate mode. |
hummingbird
|
|
module
Package module implements the core module to start connection with HummingBird.
|
Package module implements the core module to start connection with HummingBird. |
service
Package service is a wrapper for the new Service
|
Package service is a wrapper for the new Service |
Package JobObject allows creation of job object for SSM agent process.
|
Package JobObject allows creation of job object for SSM agent process. |
Package jsonutil contains various utilities for dealing with json data.
|
Package jsonutil contains various utilities for dealing with json data. |
Package ssmlog is used to initialize ssm functional logger
|
Package ssmlog is used to initialize ssm functional logger |
ssmlog
Package ssmlog is used to initialize ssm functional logger
|
Package ssmlog is used to initialize ssm functional logger |
Package longrunning implements longrunning plugins
|
Package longrunning implements longrunning plugins |
datastore
Package datastore has utilites to read and write from long running plugins data-store
|
Package datastore has utilites to read and write from long running plugins data-store |
manager
Package manager encapsulates everything related to long running plugin manager that starts, stops & configures long running plugins
|
Package manager encapsulates everything related to long running plugin manager that starts, stops & configures long running plugins |
plugin
Package plugin contains all essential structs/interfaces for long running plugins
|
Package plugin contains all essential structs/interfaces for long running plugins |
plugin/cloudwatch
Package cloudwatch implements cloudwatch plugin and its configuration
|
Package cloudwatch implements cloudwatch plugin and its configuration |
plugin/rundaemon
Package rundaemon implements rundaemon plugin and its configuration
|
Package rundaemon implements rundaemon plugin and its configuration |
managedInstances
|
|
auth
package auth provides methods to implement managed instances auth support
|
package auth provides methods to implement managed instances auth support |
registration
package registration provides managed instance information
|
package registration provides managed instance information |
rolecreds
package rolecreds contains functions that help procure the managed instance auth credentials dependencies
|
package rolecreds contains functions that help procure the managed instance auth credentials dependencies |
sharedCredentials
package sharedCredentials provides access to the aws shared credentials file.
|
package sharedCredentials provides access to the aws shared credentials file. |
Package parameters provides utilities to parse ssm document parameters
|
Package parameters provides utilities to parse ssm document parameters |
Package parameterstore contains modules to resolve ssm parameters present in the document.
|
Package parameterstore contains modules to resolve ssm parameters present in the document. |
Package platform provides instance information
|
Package platform provides instance information |
plugins
|
|
configurecontainers/windowscontainerutil
Package windowscontainerutil implements the the install and uninstall steps for windows for the configurecontainers plugin.
|
Package windowscontainerutil implements the the install and uninstall steps for windows for the configurecontainers plugin. |
configuredaemon
Package configuredaemon implements the ConfigureDaemon plugin.
|
Package configuredaemon implements the ConfigureDaemon plugin. |
configurepackage
Package configurepackage implements the ConfigurePackage plugin.
|
Package configurepackage implements the ConfigurePackage plugin. |
configurepackage/birdwatcher/facade
This interface is created manally based on the ssmiface.SSMAPI.
|
This interface is created manally based on the ssmiface.SSMAPI. |
configurepackage/installer
Package installer implements interfaces for installing and uninstalling packages
|
Package installer implements interfaces for installing and uninstalling packages |
configurepackage/installer/mock
Package installer_mock implements the mock for the installer package
|
Package installer_mock implements the mock for the installer package |
configurepackage/localpackages
Package localpackages implements the local storage for packages managed by the ConfigurePackage plugin.
|
Package localpackages implements the local storage for packages managed by the ConfigurePackage plugin. |
configurepackage/localpackages/mock
Package repository_mock implements the mock for Repository.
|
Package repository_mock implements the mock for Repository. |
configurepackage/ssminstaller
Package ssminstaller implements the installer for ssm packages that use documents or scripts to install and uninstall.
|
Package ssminstaller implements the installer for ssm packages that use documents or scripts to install and uninstall. |
domainjoin
Package domainjoin implements the domainjoin plugin.
|
Package domainjoin implements the domainjoin plugin. |
downloadcontent
Package downloadcontent implements the aws:downloadContent plugin
|
Package downloadcontent implements the aws:downloadContent plugin |
downloadcontent/gitresource
Package gitresource implements the methods to access resources from git
|
Package gitresource implements the methods to access resources from git |
downloadcontent/gitresource/privategithub
Package privategithub deals with all the authorization invocations to access private github
|
Package privategithub deals with all the authorization invocations to access private github |
downloadcontent/remoteresource
Package remoteresource is the factory for creating and developing on multiple remote resources
|
Package remoteresource is the factory for creating and developing on multiple remote resources |
downloadcontent/remoteresource/mock
Package remoteresource_mock has mock functions for remoteresource package
|
Package remoteresource_mock has mock functions for remoteresource package |
downloadcontent/s3resource
Package s3resource implements the methods to access resources from s3
|
Package s3resource implements the methods to access resources from s3 |
downloadcontent/ssmdocresource
Package ssmdocresource implements the methods to access resources from ssm
|
Package ssmdocresource implements the methods to access resources from ssm |
downloadcontent/system
Package system have all the files related dependencies used by the copy package
|
Package system have all the files related dependencies used by the copy package |
inventory
Package inventory contains implementation of aws:softwareInventory plugin
|
Package inventory contains implementation of aws:softwareInventory plugin |
inventory/datauploader
Package datauploader contains routines upload inventory data to SSM - Inventory service
|
Package datauploader contains routines upload inventory data to SSM - Inventory service |
inventory/gatherers
Package gatherers contains routines for different types of inventory gatherers
|
Package gatherers contains routines for different types of inventory gatherers |
inventory/gatherers/application
Package application contains a application gatherer.
|
Package application contains a application gatherer. |
inventory/gatherers/awscomponent
Package awscomponent contains a aws component gatherer.
|
Package awscomponent contains a aws component gatherer. |
inventory/gatherers/custom
Package custom contains a gatherer for collecting custom inventory items
|
Package custom contains a gatherer for collecting custom inventory items |
inventory/gatherers/file
Package file contains file gatherer.
|
Package file contains file gatherer. |
inventory/gatherers/instancedetailedinformation
Package instancedetailedinformation contains a gatherer for the AWS:InstanceDetailedInformation inventory type.
|
Package instancedetailedinformation contains a gatherer for the AWS:InstanceDetailedInformation inventory type. |
inventory/gatherers/network
Package network contains a network gatherer.
|
Package network contains a network gatherer. |
inventory/gatherers/registry
Package registry collects information about windows registry
|
Package registry collects information about windows registry |
inventory/gatherers/role
Package role contains a role gatherer.
|
Package role contains a role gatherer. |
inventory/gatherers/service
Package service contains a service gatherer.
|
Package service contains a service gatherer. |
inventory/model
Package model contains contracts for inventory
|
Package model contains contracts for inventory |
lrpminvoker
Package lrpminvoker contains implementation of lrpm-invoker plugin.
|
Package lrpminvoker contains implementation of lrpm-invoker plugin. |
pluginutil
Package pluginutil implements some common functions shared by multiple plugins.
|
Package pluginutil implements some common functions shared by multiple plugins. |
refreshassociation
Package refreshassociation implements the refreshassociation plugin.
|
Package refreshassociation implements the refreshassociation plugin. |
rundocument
Package rundocument implements the aws:runDocument plugin
|
Package rundocument implements the aws:runDocument plugin |
runscript
Package runscript implements the RunScript plugin.
|
Package runscript implements the RunScript plugin. |
updateec2config
Package updateec2config implements the UpdateEC2Config plugin.
|
Package updateec2config implements the UpdateEC2Config plugin. |
updatessmagent
Package updatessmagent implements the UpdateSsmAgent plugin.
|
Package updatessmagent implements the UpdateSsmAgent plugin. |
Package proxy config to handle set/get functions of the Windows proxy settings
|
Package proxy config to handle set/get functions of the Windows proxy settings |
Package rebooter provides utilities used to reboot a machine.
|
Package rebooter provides utilities used to reboot a machine. |
Package runcommand implements runcommand core processing module
|
Package runcommand implements runcommand core processing module |
contracts
Package model contains message struct for MDS/SSM messages.
|
Package model contains message struct for MDS/SSM messages. |
mds
Package service is a wrapper for the SSM Message Delivery Service and Offline Command Service
|
Package service is a wrapper for the SSM Message Delivery Service and Offline Command Service |
Package s3util contains methods for interacting with S3.
|
Package s3util contains methods for interacting with S3. |
generator
Usage: go run riputil-gen.go
|
Usage: go run riputil-gen.go |
Package sdkutil provides utilities used to call awssdk.
|
Package sdkutil provides utilities used to call awssdk. |
retryer
Package retryer overrides the default aws sdk retryer delay logic to better suit the mds needs
|
Package retryer overrides the default aws sdk retryer delay logic to better suit the mds needs |
anonauth
Package anonauth is an interface to the anonymous methods of the SSM service.
|
Package anonauth is an interface to the anonymous methods of the SSM service. |
rsaauth
Package rsaauth is an interface to the RSA signed methods of the SSM service.
|
Package rsaauth is an interface to the RSA signed methods of the SSM service. |
util
Package util contains helper function common for ssm service
|
Package util contains helper function common for ssm service |
Package ssmparameterresolver contains types and methods for resolving SSM Parameter references.
|
Package ssmparameterresolver contains types and methods for resolving SSM Parameter references. |
Package startup implements startup plugin processor
|
Package startup implements startup plugin processor |
model
Package model provides model definition for startup processor
|
Package model provides model definition for startup processor |
serialport
Package serialport implements serial port capabilities
|
Package serialport implements serial port capabilities |
Package task contains a default implementation of the interfaces in the task package.
|
Package task contains a default implementation of the interfaces in the task package. |
Package times provides a set of utilities related to processing time.
|
Package times provides a set of utilities related to processing time. |
update
|
|
processor
Package processor contains the methods for update ssm agent.
|
Package processor contains the methods for update ssm agent. |
updater
Package main represents the entry point of the ssm agent updater.
|
Package main represents the entry point of the ssm agent updater. |
Package updateutil contains updater specific utilities.
|
Package updateutil contains updater specific utilities. |
package user re-implements os/user functions without the use of cgo
|
package user re-implements os/user functions without the use of cgo |
Package vault provide interface for data storage.
|
Package vault provide interface for data storage. |
fsvault
Package fsvault implements vault with file system storage.
|
Package fsvault implements vault with file system storage. |
Package version contains constants to indicate the current version of the agent.
|
Package version contains constants to indicate the current version of the agent. |
Package websocketutil contains methods for interacting with websocket connections.
|
Package websocketutil contains methods for interacting with websocket connections. |
Click to show internal directories.
Click to hide internal directories.