plugin

package
v0.1.1 Latest Latest
Warning

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

Go to latest
Published: Dec 18, 2019 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Build

type Build struct {
	// Action that triggered the build. This value is used to differentiate
	// bettween a pull request being opened vs synchronized.
	Action string
	// Created time of the build.
	Created time.Time
	// DeployTo the environment.
	DeployTo string
	// Event that triggered the build.
	Event string
	// FailedStages of the build.
	FailedStages []string
	// FailedSteps of the build.
	FailedSteps []string
	// Finished time of the build.
	Finished time.Time
	// Number for the build.
	Number int
	// Parent build number for the build.
	Parent int
	// PullRequest number of the build.
	PullRequest int
	// Started time of the build.
	Started time.Time
	// Status of the build.
	Status string
	// SourceBranch for the pull request.
	SourceBranch string
	// Tag of the build.
	Tag string
	// TargetBranch for the pull request.
	TargetBranch string
}

Build represents a build of a repository.

type Commit

type Commit struct {
	// After contains the commit sha after the patch is applied.
	After string
	// Author of the commit.
	Author string
	// AuthorAvatar of the commit.
	AuthorAvatar string
	// AuthorEmail of the commit.
	AuthorEmail string
	// AuthorName of the commit.
	AuthorName string
	// Before contains the commit sha before the patch is applied.
	Before string
	// Branch target for the push or pull request. This may be empty for
	// tag events.
	Branch string
	// Link to the commit or object in the source control management system.
	Link string
	// Message for the current commit.
	Message string
	// Ref for the current commit.
	Ref string
	// SHA for the current commit.
	SHA string
}

Commit represents the current commit being built.

type Pipeline

type Pipeline struct {
	Build  Build
	Repo   Repo
	Commit Commit
	Stage  Stage
	Step   Step
	SemVer SemVer
}

Pipeline being executed.

Represents the full Drone environment that the plugin is executing in.

type Plugin

type Plugin interface {
	// Validate checks the inputs to the Plugin and verifies that the
	// configuration is correct before executing.
	//
	// An error is returned if there are any issues with the current
	// configuration, such as missing information or files not being
	// present. A Plugin may choose to populate additional information to
	// ensure a successful execution, for example if a URL is parsed
	// successfully it can be stored off for later use.
	//
	// Validate needs to be called before Exec.
	Validate() error

	// Exec runs the plugin in the current configuration.
	//
	// An error is returned if the Plugin did not run successfully that
	// describes the runtime error.
	//
	// Exec needs to be called after Validate.
	Exec() error
}

Plugin is an interface for a Drone plugin written in Go.

This is a higly opinionated interface for what a Plugin should do. Its not required that a plugin author follow it.

type Repo

type Repo struct {
	DefaultBranch string
	FullName      string
	Link          string
	Name          string
	Owner         string
	Private       bool
	RemoteURL     string
	SCM           string
	Visibility    string
}

Repo represents the repository for the build.

type SemVer

type SemVer struct {
	// Build version number.
	//
	// This is signified by a + at the end of the tag.
	Build string
	// Error is the semantic version parsing error if the tag was invalid.
	Error string
	// Major version number.
	Major string
	// Minor version number.
	Minor string
	// Patch version number.
	Patch string
	// Prerelease version.
	Prerelease string
	// Short version of the semantic version string where labels and
	// metadata are truncated.
	Short string
	// Version is the full semantic version.
	Version string
}

SemVer represents the semantic version of the currently running build.

This value is only applicable for tags. If the tag cannot be parsed into a semantic version then SemVer.Error will have the reason.

type Stage

type Stage struct {
	// Arch is the platform architecture of the current build stage.
	Arch string
	// DependsOn is a list of dependencies for the current build stage.
	DependsOn []string
	// Finished is the unix timestamp for when the pipeline is finished.
	//
	// A running pipleine cannot have a finish timestamp, therefore, the
	// system aways sets this value to the current timestamp.
	Finished time.Time
	// Kind is the kind of resource being executed.
	//
	// This value is sourced from the `kind` attribute in the yaml
	// configuration file
	Kind string
	// Machine provides the name of the host machine on which the build
	// stage is currently running.
	Machine string
	// Name is the name for the current running build stage.
	Name string
	// Number is the stage number for the current running build stage.
	Number int
	// OS is the target operating system for the current build stage.
	OS string
	// Started is the unix timestamp for when a build stage was started by
	// the runner.
	Started time.Time
	// Status is the status for the current running build stage.
	//
	// If all of the stage's steps are passing, the status defaults to
	// success.
	Status string
	// Type is the type of resource being executed.
	Type string
	// Variant is the target architecture variant for the current build
	// stage.
	Variant string
	// Version is OS version for the current build stage.
	Version string
}

Stage represents a build stage.

type Step

type Step struct {
	Name   string
	Number int
}

Step represents the currently running step within the stage.

Jump to

Keyboard shortcuts

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