Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Remote ¶
type Remote interface { // Authorize handles authentication with third party remote systems, // such as github or bitbucket, and returns user data. Authorize(w http.ResponseWriter, r *http.Request) (*model.Login, error) // GetKind returns the kind of plugin GetKind() string // GetHost returns the hostname of the remote service. GetHost() string // GetRepos fetches all repositories that the specified // user has access to in the remote system. GetRepos(user *model.User) ([]*model.Repo, error) // GetScript fetches the build script (.drone.yml) from the remote // repository and returns in string format. GetScript(user *model.User, repo *model.Repo, hook *model.Hook) ([]byte, error) // Activate activates a repository by creating the post-commit hook and // adding the SSH deploy key, if applicable. Activate(user *model.User, repo *model.Repo, link string) error // Deactivate removes a repository by removing all the post-commit hooks // which are equal to link and removing the SSH deploy key. Deactivate(user *model.User, repo *model.Repo, link string) error // ParseHook parses the post-commit hook from the Request body // and returns the required data in a standard format. ParseHook(r *http.Request) (*model.Hook, error) // Registration returns true if open registration is allowed OpenRegistration() bool // Get token GetToken(*model.User) (*model.Token, error) }
Click to show internal directories.
Click to hide internal directories.