AuthMiddleware is middleware used for each request. Includes functionality that validates the JWT tokens and user permissions.
CreatePipeline accepts all data needed to create a pipeline. It then starts the create pipeline execution process async.
CreatePipelineGetAll returns a json array of all pipelines which are about to get compiled and all pipelines which have been compiled.
DeregisterWorker deregister a registered worker.
GetJobLogs returns logs from a pipeline run.
Required parameters: pipelineid - Related pipeline id pipelinerunid - Related pipeline run id
GetWorker returns all workers.
GetWorkerRegisterSecret returns the global secret for registering new worker.
GetWorkerStatusOverview returns general status information about all workers.
GitWebHook handles callbacks from GitHub's webhook system.
InitHandlers initializes(registers) all handlers.
ListSecrets retrieves all secrets from the vault.
PermissionGetAll simply returns a list of all the roles available.
PipelineCheckPeriodicSchedules validates the added periodic schedules.
PipelineDelete accepts a pipeline id and deletes it from the store. It also removes the binary inside the pipeline folder.
PipelineGet accepts a pipeline id and returns the pipeline object.
PipelineGetAll returns all registered pipelines.
PipelineGetAllRuns returns all runs about the given pipeline.
PipelineGetAllWithLatestRun returns the latest of all registered pipelines included with the latest run.
PipelineGetLatestRun returns the latest run of a pipeline, given by id.
PipelineGitLSRemote checks for available git remote branches. This is the perfect way to check if we have access to a given repo.
PipelineNameAvailable looks up if the given pipeline name is available and valid.
PipelineResetToken generates a new remote trigger token for a given pipeline.
PipelineRunGet returns details about a specific pipeline run. Required parameters are pipelineid and runid.
PipelineStart starts a pipeline by the given id. It accepts arguments for the given pipeline. Afterwards it returns the created/scheduled pipeline run.
PipelineStop stops a running pipeline.
PipelineTrigger allows for a remote running of a pipeline. This endpoint does not require authentication. It will use a TOKEN that is specific to a pipeline. It can only be used by the `auto` user.
PipelineTriggerAuth is a barrier before remote trigger which checks if the user is `auto`.
PipelineUpdate updates the given pipeline.
RegisterWorker allows new workers to register themself at this Gaia instance. It accepts a secret and returns valid certificates (base64 encoded) for further mTLS connection.
RemoveSecret removes a secret from the vault.
ResetWorkerRegisterSecret generates a new global worker registration secret
SetSecret creates or updates a given secret
SettingsPollGet get status of polling functionality.
SettingsPollOff turn off polling functionality.
SettingsPollOn turn on polling functionality.
UserAdd adds a new user to the store.
UserChangePassword changes the password from a user.
UserDelete deletes the given user
UserGetAll returns all users stored in store.
UserGetPermissions returns the permissions for a user.
UserLogin authenticates the user with the given credentials.
UserPutPermissions adds or updates permissions for a user.
UserResetTriggerToken will generate and save a new Remote trigger token for a given user.
AuthConfig is a simple config struct to be passed into AuthMiddleware. Currently allows the ability to specify the permission roles required for each echo endpoint.
Hook represent a github based webhook context.
Payload contains information about the event like, user, commit id and so on. All we care about for the sake of identification is the repository.
Repository contains information about the repository. All we care about here are the possible urls for identification.