Version: v0.4.15 Latest Latest

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

Go to latest
Published: Feb 11, 2019 License: Apache-2.0 Imports: 13 Imported by: 0



Package cmd provides all CLI commands. NOTE: These are different from the commands that get run via pull request comments.



View Source
const (
	// Flag names.
	AllowForkPRsFlag           = "allow-fork-prs"
	AllowRepoConfigFlag        = "allow-repo-config"
	AtlantisURLFlag            = "atlantis-url"
	AutomergeFlag              = "automerge"
	BitbucketBaseURLFlag       = "bitbucket-base-url"
	BitbucketTokenFlag         = "bitbucket-token"
	BitbucketUserFlag          = "bitbucket-user"
	BitbucketWebhookSecretFlag = "bitbucket-webhook-secret"
	ConfigFlag                 = "config"
	CheckoutStrategyFlag       = "checkout-strategy"
	DataDirFlag                = "data-dir"
	GHHostnameFlag             = "gh-hostname"
	GHTokenFlag                = "gh-token"
	GHUserFlag                 = "gh-user"
	GHWebhookSecretFlag        = "gh-webhook-secret" // nolint: gosec
	GitlabHostnameFlag         = "gitlab-hostname"
	GitlabTokenFlag            = "gitlab-token"
	GitlabUserFlag             = "gitlab-user"
	GitlabWebhookSecretFlag    = "gitlab-webhook-secret" // nolint: gosec
	LogLevelFlag               = "log-level"
	PortFlag                   = "port"
	RepoWhitelistFlag          = "repo-whitelist"
	RequireApprovalFlag        = "require-approval"
	RequireMergeableFlag       = "require-mergeable"
	SilenceWhitelistErrorsFlag = "silence-whitelist-errors"
	SlackTokenFlag             = "slack-token"
	SSLCertFileFlag            = "ssl-cert-file"
	SSLKeyFileFlag             = "ssl-key-file"
	TFETokenFlag               = "tfe-token"

	// Flag defaults.
	DefaultCheckoutStrategy = "branch"
	DefaultBitbucketBaseURL = bitbucketcloud.BaseURL
	DefaultDataDir          = "~/.atlantis"
	DefaultGHHostname       = ""
	DefaultGitlabHostname   = ""
	DefaultLogLevel         = "info"
	DefaultPort             = 4141

To add a new flag you must: 1. Add a const with the flag name (in alphabetic order). 2. Add a new field to server.UserConfig and set the mapstructure tag equal to the flag name. 3. Add your flag's description etc. to the stringFlags, intFlags, or boolFlags slices.


View Source
var RootCmd = &cobra.Command{
	Use:   "atlantis",
	Short: "A unified workflow for collaborating on Terraform",

RootCmd is the base command onto which all other commands are added.


func Execute

func Execute()

Execute starts RootCmd.


type DefaultServerCreator added in v0.1.3

type DefaultServerCreator struct{}

DefaultServerCreator is the concrete implementation of ServerCreator.

func (*DefaultServerCreator) NewServer added in v0.1.3

func (d *DefaultServerCreator) NewServer(userConfig server.UserConfig, config server.Config) (ServerStarter, error)

NewServer returns the real Atlantis server object.

type ServerCmd added in v0.1.3

type ServerCmd struct {
	ServerCreator ServerCreator
	Viper         *viper.Viper
	// SilenceOutput set to true means nothing gets printed.
	// Useful for testing to keep the logs clean.
	SilenceOutput   bool
	AtlantisVersion string
	Logger          *logging.SimpleLogger

ServerCmd is an abstraction that helps us test. It allows us to mock out starting the actual server.

func (*ServerCmd) Init added in v0.1.3

func (s *ServerCmd) Init() *cobra.Command

Init returns the runnable cobra command.

type ServerCreator added in v0.1.3

type ServerCreator interface {
	NewServer(userConfig server.UserConfig, config server.Config) (ServerStarter, error)

ServerCreator creates servers. It's an abstraction to help us test.

type ServerStarter added in v0.1.3

type ServerStarter interface {
	Start() error

ServerStarter is for starting up a server. It's an abstraction to help us test.

type TestdriveCmd added in v0.3.10

type TestdriveCmd struct{}

TestdriveCmd starts the testdrive process for testing out Atlantis.

func (*TestdriveCmd) Init added in v0.3.10

func (b *TestdriveCmd) Init() *cobra.Command

Init returns the runnable cobra command.

type VersionCmd added in v0.1.3

type VersionCmd struct {
	AtlantisVersion string

VersionCmd prints the current version.

func (*VersionCmd) Init added in v0.1.3

func (v *VersionCmd) Init() *cobra.Command

Init returns the runnable cobra command.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL