Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GenerateSCMToken ¶ added in v0.3.0
GenerateSCMToken generates the SCM token according to the config. Make sure the type, server of the SCM is provided. If the SCM is Github, the username is required. If the access token is provided, it should be checked whether has authority of repos. Generate new token only when the username and password are provided at the same time.
func RegisterProvider ¶ added in v0.3.0
func RegisterProvider(scmType api.SCMType, provider SCMProvider) error
RegisterProvider registers SCM providers.
Types ¶
type SCM ¶
type SCM interface { Authcallback(code, state string) (string, error) GetRepos(string) ([]api.Repository, string, string, error) LogOut(projectID string) error GetAuthCodeURL(projectID string) (string, error) }
SCM is the interface of all operations needed for scm repository.
type SCMProvider ¶ added in v0.3.0
type SCMProvider interface { GetToken(scm *api.SCMConfig) (string, error) ListRepos(scm *api.SCMConfig) ([]api.Repository, error) ListBranches(scm *api.SCMConfig, repo string) ([]string, error) CheckToken(scm *api.SCMConfig) bool }
SCMProvider represents the interface of SCM provider.
func GetSCMProvider ¶ added in v0.3.0
func GetSCMProvider(scmType api.SCMType) (SCMProvider, error)
GetSCMProvider gets the SCM provider by the type.
Click to show internal directories.
Click to hide internal directories.