units

package
v0.0.0-...-29e6843 Latest Latest
Warning

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

Go to latest
Published: Jul 20, 2018 License: Apache-2.0 Imports: 47 Imported by: 0

Documentation

Overview

Package units contains amboy.Job definiteness for Evergreen tasks.

Loading the units package registers all jobs in the amboy Job Registry.

By convention the implementations of these jobs are: private with public constructors that return the amboy.Job type, they use amboy/job.Base for core implementation, implementing only Run and whatever additional methods or functions are required. The units package prefers a one-to-one mapping of files to job implementations. Additionally all jobs must be capable of marshiling to either JSON/BSON/YAML (depending on the amoby.JobType format.)

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewAgentDeployJob

func NewAgentDeployJob(env evergreen.Environment, h host.Host, id string) amboy.Job

func NewCloudHostReadyJob

func NewCloudHostReadyJob(env evergreen.Environment, id string) amboy.Job

NewCloudHostReadyJob gets statuses for all jobs created by Cloud providers which the Cloud providers' APIs have not yet returned all running. It marks the hosts running in the database.

func NewCollectHostIdleDataJob

func NewCollectHostIdleDataJob(h *host.Host, t *task.Task, startTime, finishTime time.Time) amboy.Job

func NewCollectTaskEndDataJob

func NewCollectTaskEndDataJob(t *task.Task, h *host.Host) amboy.Job

NewCollectTaskEndDataJob determines a task's cost based on the host it ran on. Hosts that are unable to calculate their own costs will not set a task's Cost field. Errors are logged but not returned, since any number of API failures could happen and we shouldn't sacrifice a task's status for them.

It also logs historic task timing information.

func NewDecoHostNotifyJob

func NewDecoHostNotifyJob(env evergreen.Environment, h *host.Host, err error, message string) amboy.Job

func NewDistroSchedulerJob

func NewDistroSchedulerJob(env evergreen.Environment, distroID string, ts time.Time) amboy.Job

func NewEventMetaJob

func NewEventMetaJob(q amboy.Queue, ts string) amboy.Job

func NewGithubStatusUpdateJobForBadConfig

func NewGithubStatusUpdateJobForBadConfig(intentID string) amboy.Job

NewGithubStatusUpdateJobForBadConfig marks a ref as failed because the evergreen configuration is bad

func NewGithubStatusUpdateJobForExternalPatch

func NewGithubStatusUpdateJobForExternalPatch(patchID string) amboy.Job

NewGithubStatusUpdateJobForExternalPatch prompts on Github for a user to manually authorize this patch

func NewGithubStatusUpdateJobForNewPatch

func NewGithubStatusUpdateJobForNewPatch(version string) amboy.Job

NewGithubStatusUpdateJobForNewPatch creates a job to update github's API for a newly created patch, reporting it as pending, with description "preparing to run tasks"

func NewHostAlertingJob

func NewHostAlertingJob(h host.Host, ts string) amboy.Job

func NewHostCreateJob

func NewHostCreateJob(env evergreen.Environment, h host.Host, id string, CurrentAttempt int, MaxAttempts int) amboy.Job

func NewHostMonitorContainerStateJob

func NewHostMonitorContainerStateJob(env evergreen.Environment, h *host.Host, providerName, id string) amboy.Job

func NewHostMonitorExternalStateJob

func NewHostMonitorExternalStateJob(env evergreen.Environment, h *host.Host, id string) amboy.Job

func NewHostSetupJob

func NewHostSetupJob(env evergreen.Environment, h host.Host, id string) amboy.Job

func NewHostStatsCollector

func NewHostStatsCollector(id string) amboy.Job

NewHostStatsCollector logs statistics about host utilization per distro to the default grip logger.

func NewHostStatsJob

func NewHostStatsJob(ts string) amboy.Job

func NewHostTerminationJob

func NewHostTerminationJob(env evergreen.Environment, h host.Host) amboy.Job

func NewIdleHostTerminationJob

func NewIdleHostTerminationJob(env evergreen.Environment, h host.Host, id string) amboy.Job

func NewLastContainerFinishTimeJob

func NewLastContainerFinishTimeJob(id string) amboy.Job

func NewLatencyStatsCollector

func NewLatencyStatsCollector(id string, duration time.Duration) amboy.Job

NewLatencyStatsCollector captures a single report of the latency of tasks that have started in the last minute.

func NewLegacyAlertsRunnerJob

func NewLegacyAlertsRunnerJob(env evergreen.Environment, id string) amboy.Job

func NewLegacyMonitorRunnerJob

func NewLegacyMonitorRunnerJob(env evergreen.Environment, id string) amboy.Job

func NewLocalAmboyStatsCollector

func NewLocalAmboyStatsCollector(env evergreen.Environment, id string) amboy.Job

NewLocalAmboyStatsCollector reports the status of only the local queue registered in the evergreen service Environment.

func NewNotificationStatsCollector

func NewNotificationStatsCollector(id string) amboy.Job

func NewParentDecommissionJob

func NewParentDecommissionJob(id, d string, maxContainers int) amboy.Job

func NewPatchIntentProcessor

func NewPatchIntentProcessor(patchID bson.ObjectId, intent patch.Intent) amboy.Job

NewPatchIntentProcessor creates an amboy job to create a patch from the given patch intent with the given object ID for the patch

func NewQueueStatsCollector

func NewQueueStatsCollector(id string) amboy.Job

func NewRemoteAmboyStatsCollector

func NewRemoteAmboyStatsCollector(env evergreen.Environment, id string) amboy.Job

NewRemoteAmboyStatsCollector reports the status of only the remote queue registered in the evergreen service Environment.

func NewRepotrackerJob

func NewRepotrackerJob(msgID, projectID string) amboy.Job

NewRepotrackerJob creates a job to run repotracker against a repository. The code creating this job is responsible for verifying that the project should track push events

func NewSpawnhostExpirationWarningsJob

func NewSpawnhostExpirationWarningsJob(id string) amboy.Job

func NewSpawnhostTerminationAlertJob

func NewSpawnhostTerminationAlertJob(user, host string, id string) amboy.Job

func NewStrandedTaskCleanupJob

func NewStrandedTaskCleanupJob(id string) amboy.Job

func NewSysInfoStatsCollector

func NewSysInfoStatsCollector(id string) amboy.Job

NewSysInfoStatsCollector reports basic system information and a report of the go runtime information, as provided by grip.

func NewTaskExecutionMonitorJob

func NewTaskExecutionMonitorJob(id string) amboy.Job

func NewTaskHostCreateJob

func NewTaskHostCreateJob(taskID string, createHost apimodels.CreateHost) amboy.Job

func NewTaskStatsCollector

func NewTaskStatsCollector(id string) amboy.Job

NewTaskStatsCollector captures a single report of the status of tasks that have completed in the last minute.

func NewTasksRestartJob

func NewTasksRestartJob(opts model.RestartTaskOptions) amboy.Job

NewTasksRestartJob creates a job to restart failed tasks in a time range

func NewVersionActiationJob

func NewVersionActiationJob(project string, id string) amboy.Job

func PopulateActivationJobs

func PopulateActivationJobs(part int) amboy.QueueOperation

func PopulateAgentDeployJobs

func PopulateAgentDeployJobs(env evergreen.Environment) amboy.QueueOperation

func PopulateBackgroundStatsJobs

func PopulateBackgroundStatsJobs(env evergreen.Environment, part int) amboy.QueueOperation

func PopulateCatchupJobs

func PopulateCatchupJobs(part int) amboy.QueueOperation

func PopulateContainerStateJobs

func PopulateContainerStateJobs(env evergreen.Environment) amboy.QueueOperation

func PopulateEventAlertProcessing

func PopulateEventAlertProcessing(parts int) amboy.QueueOperation

func PopulateHostAlertJobs

func PopulateHostAlertJobs(parts int) amboy.QueueOperation

PopulateHostAlertJobs adds alerting tasks infrequently for host utilization monitoring.

func PopulateHostCreationJobs

func PopulateHostCreationJobs(env evergreen.Environment, part int) amboy.QueueOperation

func PopulateHostMonitoring

func PopulateHostMonitoring(env evergreen.Environment) amboy.QueueOperation

func PopulateHostSetupJobs

func PopulateHostSetupJobs(env evergreen.Environment, part int) amboy.QueueOperation

func PopulateHostTerminationJobs

func PopulateHostTerminationJobs(env evergreen.Environment) amboy.QueueOperation

func PopulateIdleHostJobs

func PopulateIdleHostJobs(env evergreen.Environment) amboy.QueueOperation

func PopulateLastContainerFinishTimeJobs

func PopulateLastContainerFinishTimeJobs() amboy.QueueOperation

func PopulateLegacyRunnerJobs

func PopulateLegacyRunnerJobs(env evergreen.Environment, part int) amboy.QueueOperation

func PopulateParentDecommissionJobs

func PopulateParentDecommissionJobs() amboy.QueueOperation

func PopulatePeriodicNotificationJobs

func PopulatePeriodicNotificationJobs(parts int) amboy.QueueOperation

func PopulateRepotrackerPollingJobs

func PopulateRepotrackerPollingJobs(part int) amboy.QueueOperation

func PopulateSchedulerJobs

func PopulateSchedulerJobs(env evergreen.Environment) amboy.QueueOperation

func PopulateTaskMonitoring

func PopulateTaskMonitoring() amboy.QueueOperation

Types

This section is empty.

Jump to

Keyboard shortcuts

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