Documentation ¶
Overview ¶
Package util provides utility methods for the agent.
Index ¶
- Constants
- Variables
- func GetEC2InstanceID(ctx context.Context) (string, error)
- func KillSpawnedProcs(ctx context.Context, key, workingDir string, logger grip.Journaler) error
- func S3DefaultURL(bucket, key string) string
- func S3PathURL(bucket, key string) string
- func S3VirtualHostedURL(bucket, key string) string
- func TrackProcess(key string, pid int, logger grip.Journaler)
- type DynamicExpansions
Constants ¶
const ( MarkerTaskID = "EVR_TASK_ID" MarkerAgentPID = "EVR_AGENT_PID" MarkerInEvergreen = "IN_EVERGREEN" )
Variables ¶
var ErrPSTimeout = errors.New("ps timeout")
Functions ¶
func GetEC2InstanceID ¶
GetEC2InstanceID returns the instance ID from the metadata endpoint if it's an EC2 instance.
func KillSpawnedProcs ¶
KillSpawnedProcs kills processes that descend from the agent and waits for them to terminate.
func S3DefaultURL ¶
S3DefaultURL returns the S3 URL for the given bucket containing the object key. The style of the S3 URL is determined based on the bucket name.
func S3PathURL ¶
S3PathURL returns the path-style S3 URL for the given bucket containing the object key.
func S3VirtualHostedURL ¶
S3VirtualHostedURL returns the virtual hosted-style S3 URL for the given bucket containing the object key.
Types ¶
type DynamicExpansions ¶
type DynamicExpansions struct { util.Expansions // contains filtered or unexported fields }
DynamicExpansions wraps expansions for safe concurrent access as they are dynamically updated.
This should be expanded to support better expansion handling during a task run.
func NewDynamicExpansions ¶
func NewDynamicExpansions(e util.Expansions) *DynamicExpansions
func (*DynamicExpansions) Get ¶
func (e *DynamicExpansions) Get(key string) string
func (*DynamicExpansions) Put ¶
func (e *DynamicExpansions) Put(key, value string)
func (*DynamicExpansions) Update ¶
func (e *DynamicExpansions) Update(newExpansions map[string]string)
func (*DynamicExpansions) UpdateFromYaml ¶
func (e *DynamicExpansions) UpdateFromYaml(filename string) error