github.com/blixtra/nomad@v0.7.2-0.20171221000451-da9a1d7bb050/commands.go (about)

     1  package main
     2  
     3  import (
     4  	"os"
     5  
     6  	"github.com/hashicorp/nomad/command"
     7  	"github.com/hashicorp/nomad/command/agent"
     8  	"github.com/hashicorp/nomad/version"
     9  	"github.com/mitchellh/cli"
    10  )
    11  
    12  // Commands returns the mapping of CLI commands for Nomad. The meta
    13  // parameter lets you set meta options for all commands.
    14  func Commands(metaPtr *command.Meta) map[string]cli.CommandFactory {
    15  	if metaPtr == nil {
    16  		metaPtr = new(command.Meta)
    17  	}
    18  
    19  	meta := *metaPtr
    20  	if meta.Ui == nil {
    21  		meta.Ui = &cli.BasicUi{
    22  			Reader:      os.Stdin,
    23  			Writer:      os.Stdout,
    24  			ErrorWriter: os.Stderr,
    25  		}
    26  	}
    27  
    28  	return map[string]cli.CommandFactory{
    29  		"acl": func() (cli.Command, error) {
    30  			return &command.ACLCommand{
    31  				Meta: meta,
    32  			}, nil
    33  		},
    34  		"acl bootstrap": func() (cli.Command, error) {
    35  			return &command.ACLBootstrapCommand{
    36  				Meta: meta,
    37  			}, nil
    38  		},
    39  		"acl policy": func() (cli.Command, error) {
    40  			return &command.ACLPolicyCommand{
    41  				Meta: meta,
    42  			}, nil
    43  		},
    44  		"acl policy apply": func() (cli.Command, error) {
    45  			return &command.ACLPolicyApplyCommand{
    46  				Meta: meta,
    47  			}, nil
    48  		},
    49  		"acl policy delete": func() (cli.Command, error) {
    50  			return &command.ACLPolicyDeleteCommand{
    51  				Meta: meta,
    52  			}, nil
    53  		},
    54  		"acl policy info": func() (cli.Command, error) {
    55  			return &command.ACLPolicyInfoCommand{
    56  				Meta: meta,
    57  			}, nil
    58  		},
    59  		"acl policy list": func() (cli.Command, error) {
    60  			return &command.ACLPolicyListCommand{
    61  				Meta: meta,
    62  			}, nil
    63  		},
    64  		"acl token": func() (cli.Command, error) {
    65  			return &command.ACLTokenCommand{
    66  				Meta: meta,
    67  			}, nil
    68  		},
    69  		"acl token create": func() (cli.Command, error) {
    70  			return &command.ACLTokenCreateCommand{
    71  				Meta: meta,
    72  			}, nil
    73  		},
    74  		"acl token update": func() (cli.Command, error) {
    75  			return &command.ACLTokenUpdateCommand{
    76  				Meta: meta,
    77  			}, nil
    78  		},
    79  		"acl token delete": func() (cli.Command, error) {
    80  			return &command.ACLTokenDeleteCommand{
    81  				Meta: meta,
    82  			}, nil
    83  		},
    84  		"acl token info": func() (cli.Command, error) {
    85  			return &command.ACLTokenInfoCommand{
    86  				Meta: meta,
    87  			}, nil
    88  		},
    89  		"acl token self": func() (cli.Command, error) {
    90  			return &command.ACLTokenSelfCommand{
    91  				Meta: meta,
    92  			}, nil
    93  		},
    94  		"alloc-status": func() (cli.Command, error) {
    95  			return &command.AllocStatusCommand{
    96  				Meta: meta,
    97  			}, nil
    98  		},
    99  		"agent": func() (cli.Command, error) {
   100  			return &agent.Command{
   101  				Version:    version.GetVersion(),
   102  				Ui:         meta.Ui,
   103  				ShutdownCh: make(chan struct{}),
   104  			}, nil
   105  		},
   106  		"agent-info": func() (cli.Command, error) {
   107  			return &command.AgentInfoCommand{
   108  				Meta: meta,
   109  			}, nil
   110  		},
   111  		"check": func() (cli.Command, error) {
   112  			return &command.AgentCheckCommand{
   113  				Meta: meta,
   114  			}, nil
   115  		},
   116  		"client-config": func() (cli.Command, error) {
   117  			return &command.ClientConfigCommand{
   118  				Meta: meta,
   119  			}, nil
   120  		},
   121  		"deployment": func() (cli.Command, error) {
   122  			return &command.DeploymentCommand{
   123  				Meta: meta,
   124  			}, nil
   125  		},
   126  		"deployment fail": func() (cli.Command, error) {
   127  			return &command.DeploymentFailCommand{
   128  				Meta: meta,
   129  			}, nil
   130  		},
   131  		"deployment list": func() (cli.Command, error) {
   132  			return &command.DeploymentListCommand{
   133  				Meta: meta,
   134  			}, nil
   135  		},
   136  		"deployment pause": func() (cli.Command, error) {
   137  			return &command.DeploymentPauseCommand{
   138  				Meta: meta,
   139  			}, nil
   140  		},
   141  		"deployment promote": func() (cli.Command, error) {
   142  			return &command.DeploymentPromoteCommand{
   143  				Meta: meta,
   144  			}, nil
   145  		},
   146  		"deployment resume": func() (cli.Command, error) {
   147  			return &command.DeploymentResumeCommand{
   148  				Meta: meta,
   149  			}, nil
   150  		},
   151  		"deployment status": func() (cli.Command, error) {
   152  			return &command.DeploymentStatusCommand{
   153  				Meta: meta,
   154  			}, nil
   155  		},
   156  		"eval-status": func() (cli.Command, error) {
   157  			return &command.EvalStatusCommand{
   158  				Meta: meta,
   159  			}, nil
   160  		},
   161  		"executor": func() (cli.Command, error) {
   162  			return &command.ExecutorPluginCommand{
   163  				Meta: meta,
   164  			}, nil
   165  		},
   166  		"fs": func() (cli.Command, error) {
   167  			return &command.FSCommand{
   168  				Meta: meta,
   169  			}, nil
   170  		},
   171  		"init": func() (cli.Command, error) {
   172  			return &command.InitCommand{
   173  				Meta: meta,
   174  			}, nil
   175  		},
   176  		"inspect": func() (cli.Command, error) {
   177  			return &command.InspectCommand{
   178  				Meta: meta,
   179  			}, nil
   180  		},
   181  		"keygen": func() (cli.Command, error) {
   182  			return &command.KeygenCommand{
   183  				Meta: meta,
   184  			}, nil
   185  		},
   186  		"keyring": func() (cli.Command, error) {
   187  			return &command.KeyringCommand{
   188  				Meta: meta,
   189  			}, nil
   190  		},
   191  		"job": func() (cli.Command, error) {
   192  			return &command.JobCommand{
   193  				Meta: meta,
   194  			}, nil
   195  		},
   196  		"job deployments": func() (cli.Command, error) {
   197  			return &command.JobDeploymentsCommand{
   198  				Meta: meta,
   199  			}, nil
   200  		},
   201  		"job dispatch": func() (cli.Command, error) {
   202  			return &command.JobDispatchCommand{
   203  				Meta: meta,
   204  			}, nil
   205  		},
   206  		"job history": func() (cli.Command, error) {
   207  			return &command.JobHistoryCommand{
   208  				Meta: meta,
   209  			}, nil
   210  		},
   211  		"job promote": func() (cli.Command, error) {
   212  			return &command.JobPromoteCommand{
   213  				Meta: meta,
   214  			}, nil
   215  		},
   216  		"job revert": func() (cli.Command, error) {
   217  			return &command.JobRevertCommand{
   218  				Meta: meta,
   219  			}, nil
   220  		},
   221  		"job status": func() (cli.Command, error) {
   222  			return &command.JobStatusCommand{
   223  				Meta: meta,
   224  			}, nil
   225  		},
   226  		"logs": func() (cli.Command, error) {
   227  			return &command.LogsCommand{
   228  				Meta: meta,
   229  			}, nil
   230  		},
   231  		"namespace": func() (cli.Command, error) {
   232  			return &command.NamespaceCommand{
   233  				Meta: meta,
   234  			}, nil
   235  		},
   236  		"namespace apply": func() (cli.Command, error) {
   237  			return &command.NamespaceApplyCommand{
   238  				Meta: meta,
   239  			}, nil
   240  		},
   241  		"namespace delete": func() (cli.Command, error) {
   242  			return &command.NamespaceDeleteCommand{
   243  				Meta: meta,
   244  			}, nil
   245  		},
   246  		"namespace inspect": func() (cli.Command, error) {
   247  			return &command.NamespaceInspectCommand{
   248  				Meta: meta,
   249  			}, nil
   250  		},
   251  		"namespace list": func() (cli.Command, error) {
   252  			return &command.NamespaceListCommand{
   253  				Meta: meta,
   254  			}, nil
   255  		},
   256  		"namespace status": func() (cli.Command, error) {
   257  			return &command.NamespaceStatusCommand{
   258  				Meta: meta,
   259  			}, nil
   260  		},
   261  		"node-drain": func() (cli.Command, error) {
   262  			return &command.NodeDrainCommand{
   263  				Meta: meta,
   264  			}, nil
   265  		},
   266  		"node-status": func() (cli.Command, error) {
   267  			return &command.NodeStatusCommand{
   268  				Meta: meta,
   269  			}, nil
   270  		},
   271  
   272  		"operator": func() (cli.Command, error) {
   273  			return &command.OperatorCommand{
   274  				Meta: meta,
   275  			}, nil
   276  		},
   277  
   278  		"operator raft": func() (cli.Command, error) {
   279  			return &command.OperatorRaftCommand{
   280  				Meta: meta,
   281  			}, nil
   282  		},
   283  
   284  		"operator raft list-peers": func() (cli.Command, error) {
   285  			return &command.OperatorRaftListCommand{
   286  				Meta: meta,
   287  			}, nil
   288  		},
   289  
   290  		"operator raft remove-peer": func() (cli.Command, error) {
   291  			return &command.OperatorRaftRemoveCommand{
   292  				Meta: meta,
   293  			}, nil
   294  		},
   295  
   296  		"plan": func() (cli.Command, error) {
   297  			return &command.PlanCommand{
   298  				Meta: meta,
   299  			}, nil
   300  		},
   301  
   302  		"quota": func() (cli.Command, error) {
   303  			return &command.QuotaCommand{
   304  				Meta: meta,
   305  			}, nil
   306  		},
   307  
   308  		"quota apply": func() (cli.Command, error) {
   309  			return &command.QuotaApplyCommand{
   310  				Meta: meta,
   311  			}, nil
   312  		},
   313  
   314  		"quota delete": func() (cli.Command, error) {
   315  			return &command.QuotaDeleteCommand{
   316  				Meta: meta,
   317  			}, nil
   318  		},
   319  
   320  		"quota init": func() (cli.Command, error) {
   321  			return &command.QuotaInitCommand{
   322  				Meta: meta,
   323  			}, nil
   324  		},
   325  
   326  		"quota inspect": func() (cli.Command, error) {
   327  			return &command.QuotaInspectCommand{
   328  				Meta: meta,
   329  			}, nil
   330  		},
   331  
   332  		"quota list": func() (cli.Command, error) {
   333  			return &command.QuotaListCommand{
   334  				Meta: meta,
   335  			}, nil
   336  		},
   337  
   338  		"quota status": func() (cli.Command, error) {
   339  			return &command.QuotaStatusCommand{
   340  				Meta: meta,
   341  			}, nil
   342  		},
   343  
   344  		"run": func() (cli.Command, error) {
   345  			return &command.RunCommand{
   346  				Meta: meta,
   347  			}, nil
   348  		},
   349  		"sentinel": func() (cli.Command, error) {
   350  			return &command.SentinelCommand{
   351  				Meta: meta,
   352  			}, nil
   353  		},
   354  		"sentinel list": func() (cli.Command, error) {
   355  			return &command.SentinelListCommand{
   356  				Meta: meta,
   357  			}, nil
   358  		},
   359  		"sentinel apply": func() (cli.Command, error) {
   360  			return &command.SentinelApplyCommand{
   361  				Meta: meta,
   362  			}, nil
   363  		},
   364  		"sentinel delete": func() (cli.Command, error) {
   365  			return &command.SentinelDeleteCommand{
   366  				Meta: meta,
   367  			}, nil
   368  		},
   369  		"sentinel read": func() (cli.Command, error) {
   370  			return &command.SentinelReadCommand{
   371  				Meta: meta,
   372  			}, nil
   373  		},
   374  		"server-force-leave": func() (cli.Command, error) {
   375  			return &command.ServerForceLeaveCommand{
   376  				Meta: meta,
   377  			}, nil
   378  		},
   379  		"server-join": func() (cli.Command, error) {
   380  			return &command.ServerJoinCommand{
   381  				Meta: meta,
   382  			}, nil
   383  		},
   384  		"server-members": func() (cli.Command, error) {
   385  			return &command.ServerMembersCommand{
   386  				Meta: meta,
   387  			}, nil
   388  		},
   389  		"status": func() (cli.Command, error) {
   390  			return &command.StatusCommand{
   391  				Meta: meta,
   392  			}, nil
   393  		},
   394  		"stop": func() (cli.Command, error) {
   395  			return &command.StopCommand{
   396  				Meta: meta,
   397  			}, nil
   398  		},
   399  		"ui": func() (cli.Command, error) {
   400  			return &command.UiCommand{
   401  				Meta: meta,
   402  			}, nil
   403  		},
   404  		"validate": func() (cli.Command, error) {
   405  			return &command.ValidateCommand{
   406  				Meta: meta,
   407  			}, nil
   408  		},
   409  		"version": func() (cli.Command, error) {
   410  			return &command.VersionCommand{
   411  				Version: version.GetVersion(),
   412  				Ui:      meta.Ui,
   413  			}, nil
   414  		},
   415  	}
   416  }