refactor: persistent offline/noinput

This commit is contained in:
decentral1se 2024-07-10 11:45:21 +02:00
parent edb542c653
commit c3f0d15920
Signed by: decentral1se
GPG Key ID: 03789458B3D0C410
31 changed files with 26 additions and 80 deletions

View File

@ -39,7 +39,6 @@ var appBackupListCommand = cli.Command{
Name: "list",
Aliases: []string{"ls"},
Flags: []cli.Flag{
internal.OfflineFlag,
snapshotFlag,
includePathFlag,
},
@ -88,7 +87,6 @@ var appBackupDownloadCommand = cli.Command{
Name: "download",
Aliases: []string{"d"},
Flags: []cli.Flag{
internal.OfflineFlag,
snapshotFlag,
includePathFlag,
},
@ -161,7 +159,6 @@ var appBackupCreateCommand = cli.Command{
Name: "create",
Aliases: []string{"c"},
Flags: []cli.Flag{
internal.OfflineFlag,
resticRepoFlag,
},
Before: internal.SubCommandBefore,
@ -221,7 +218,6 @@ var appBackupSnapshotsCommand = cli.Command{
Name: "snapshots",
Aliases: []string{"s"},
Flags: []cli.Flag{
internal.OfflineFlag,
snapshotFlag,
},
Before: internal.SubCommandBefore,

View File

@ -37,7 +37,6 @@ using the "-- <cmd-args>" syntax.
internal.LocalCmdFlag,
internal.RemoteUserFlag,
internal.TtyFlag,
internal.OfflineFlag,
internal.ChaosFlag,
},
Before: internal.SubCommandBefore,
@ -202,7 +201,6 @@ var appCmdListCommand = cli.Command{
UsageText: "abra app cmd ls [options] <domain>",
HideHelpCommand: true,
Flags: []cli.Flag{
internal.OfflineFlag,
internal.ChaosFlag,
},
EnableShellCompletion: true,

View File

@ -30,9 +30,6 @@ var appCpCommand = cli.Command{
Aliases: []string{"c"},
HideHelpCommand: true,
UsageText: "abra app cp [options] <domain> <src> <dst>",
Flags: []cli.Flag{
internal.NoInputFlag,
},
Before: internal.SubCommandBefore,
Usage: "Copy files to/from a deployed app service",
Description: `Copy files to and from any app service file system.

View File

@ -26,12 +26,10 @@ var appDeployCommand = cli.Command{
HideHelpCommand: true,
UsageText: "abra app deploy [options] <domain> [<version>]",
Flags: []cli.Flag{
internal.NoInputFlag,
internal.ForceFlag,
internal.ChaosFlag,
internal.NoDomainChecksFlag,
internal.DontWaitConvergeFlag,
internal.OfflineFlag,
},
Before: internal.SubCommandBefore,
Description: `Deploy an app.

View File

@ -86,7 +86,6 @@ can take some time.`,
statusFlag,
listAppServerFlag,
recipeFlag,
internal.OfflineFlag,
},
Before: internal.SubCommandBefore,
Action: func(ctx context.Context, cmd *cli.Command) error {

View File

@ -45,12 +45,10 @@ var appNewCommand = cli.Command{
Usage: "Create a new app",
Description: appNewDescription,
Flags: []cli.Flag{
internal.NoInputFlag,
internal.NewAppServerFlag,
internal.DomainFlag,
internal.PassFlag,
internal.SecretsFlag,
internal.OfflineFlag,
internal.ChaosFlag,
},
Before: internal.SubCommandBefore,

View File

@ -39,8 +39,6 @@ To delete everything without prompt, use the "--force/-f" or the "--no-input/n"
flag.`,
Flags: []cli.Flag{
internal.ForceFlag,
internal.NoInputFlag,
internal.OfflineFlag,
},
EnableShellCompletion: true,
ShellComplete: autocomplete.AppNameComplete,

View File

@ -22,7 +22,6 @@ var appRestartCommand = cli.Command{
HideHelpCommand: true,
UsageText: "abra app restart [options] <domain> [<service>]",
Flags: []cli.Flag{
internal.OfflineFlag,
internal.AllServicesFlag,
},
Before: internal.SubCommandBefore,

View File

@ -26,7 +26,6 @@ var appRestoreCommand = cli.Command{
HideHelpCommand: true,
UsageText: "abra app restore [options] <domain> <service>",
Flags: []cli.Flag{
internal.OfflineFlag,
targetPathFlag,
},
Before: internal.SubCommandBefore,

View File

@ -25,11 +25,9 @@ var appRollbackCommand = cli.Command{
HideHelpCommand: true,
UsageText: "abra app rollback [options] <domain> [<version>]",
Flags: []cli.Flag{
internal.NoInputFlag,
internal.ForceFlag,
internal.NoDomainChecksFlag,
internal.DontWaitConvergeFlag,
internal.OfflineFlag,
},
Before: internal.SubCommandBefore,
Description: `This command rolls an app back to a previous version.

View File

@ -50,7 +50,6 @@ var appSecretGenerateCommand = cli.Command{
allSecretsFlag,
internal.PassFlag,
internal.MachineReadableFlag,
internal.OfflineFlag,
internal.ChaosFlag,
},
Before: internal.SubCommandBefore,

View File

@ -67,7 +67,6 @@ var appUndeployCommand = cli.Command{
UsageText: "abra app undeploy [options] <domain>",
HideHelpCommand: true,
Flags: []cli.Flag{
internal.NoInputFlag,
pruneFlag,
},
Before: internal.SubCommandBefore,

View File

@ -23,11 +23,9 @@ var appUpgradeCommand = cli.Command{
Usage: "Upgrade an app",
UsageText: "abra app upgrade [options] <domain> [<version>]",
Flags: []cli.Flag{
internal.NoInputFlag,
internal.ForceFlag,
internal.NoDomainChecksFlag,
internal.DontWaitConvergeFlag,
internal.OfflineFlag,
internal.ReleaseNotesFlag,
},
Before: internal.SubCommandBefore,

View File

@ -17,9 +17,6 @@ var appVolumeListCommand = cli.Command{
Name: "list",
Aliases: []string{"ls"},
UsageText: "abra app volume list [options] <domain>",
Flags: []cli.Flag{
internal.NoInputFlag,
},
Before: internal.SubCommandBefore,
Usage: "List volumes associated with an app",
HideHelpCommand: true,

View File

@ -26,12 +26,10 @@ var catalogueGenerateCommand = cli.Command{
HideHelpCommand: true,
UsageText: "abra catalogue generate [options] [<recipe>]",
Flags: []cli.Flag{
internal.NoInputFlag,
internal.PublishFlag,
internal.DryFlag,
internal.SkipUpdatesFlag,
internal.ChaosFlag,
internal.OfflineFlag,
},
Before: internal.SubCommandBefore,
Description: `Generate a new copy of the recipe catalogue.

View File

@ -139,6 +139,8 @@ func newAbraApp(version, commit string) *cli.Command {
Version: fmt.Sprintf("%s-%s", version, commit[:7]),
Flags: []cli.Flag{
internal.DebugFlag,
internal.OfflineFlag,
internal.NoInputFlag,
},
Commands: []*cli.Command{
&app.AppCommand,

View File

@ -96,6 +96,7 @@ var NoInputFlag = &cli.BoolFlag{
Aliases: []string{"n"},
Usage: "Toggle non-interactive mode",
Destination: &NoInput,
Persistent: true,
}
// Debug stores the variable from DebugFlag.
@ -119,6 +120,7 @@ var OfflineFlag = &cli.BoolFlag{
Aliases: []string{"o"},
Destination: &Offline,
Usage: "Prefer offline & filesystem access when possible",
Persistent: true,
}
// ReleaseNotes stores the variable from ReleaseNotesFlag.

View File

@ -17,9 +17,6 @@ var recipeDiffCommand = cli.Command{
HideHelpCommand: true,
Aliases: []string{"d"},
UsageText: "abra recipe diff [options] <recipe>",
Flags: []cli.Flag{
internal.NoInputFlag,
},
Before: internal.SubCommandBefore,
EnableShellCompletion: true,
ShellComplete: autocomplete.RecipeNameComplete,

View File

@ -17,10 +17,6 @@ var recipeFetchCommand = cli.Command{
Aliases: []string{"f"},
UsageText: "abra recipe fetch [options] [<recipe>]",
Description: "Retrieves all recipes if no <recipe> argument is passed",
Flags: []cli.Flag{
internal.NoInputFlag,
internal.OfflineFlag,
},
Before: internal.SubCommandBefore,
EnableShellCompletion: true,
ShellComplete: autocomplete.RecipeNameComplete,

View File

@ -20,8 +20,6 @@ var recipeLintCommand = cli.Command{
HideHelpCommand: true,
Flags: []cli.Flag{
internal.OnlyErrorFlag,
internal.OfflineFlag,
internal.NoInputFlag,
internal.ChaosFlag,
},
Before: internal.SubCommandBefore,

View File

@ -32,7 +32,6 @@ var recipeListCommand = cli.Command{
Flags: []cli.Flag{
internal.MachineReadableFlag,
patternFlag,
internal.OfflineFlag,
},
Before: internal.SubCommandBefore,
Action: func(ctx context.Context, cmd *cli.Command) error {

View File

@ -35,8 +35,6 @@ var recipeNewCommand = cli.Command{
Name: "new",
Aliases: []string{"n"},
Flags: []cli.Flag{
internal.NoInputFlag,
internal.OfflineFlag,
internal.GitNameFlag,
internal.GitEmailFlag,
},

View File

@ -49,13 +49,11 @@ Publish your new release to git.coopcloud.tech with "-p/--publish". This
requires that you have permission to git push to these repositories and have
your SSH keys configured on your account.`,
Flags: []cli.Flag{
internal.NoInputFlag,
internal.DryFlag,
internal.MajorFlag,
internal.MinorFlag,
internal.PatchFlag,
internal.PublishFlag,
internal.OfflineFlag,
},
Before: internal.SubCommandBefore,
EnableShellCompletion: true,

View File

@ -18,9 +18,6 @@ var recipeResetCommand = cli.Command{
HideHelpCommand: true,
Aliases: []string{"rs"},
UsageText: "abra recipe reset [options] <recipe>",
Flags: []cli.Flag{
internal.NoInputFlag,
},
Before: internal.SubCommandBefore,
EnableShellCompletion: true,
ShellComplete: autocomplete.RecipeNameComplete,

View File

@ -23,7 +23,6 @@ var recipeSyncCommand = cli.Command{
HideHelpCommand: true,
UsageText: "abra recipe lint [options] <recipe> [<version>]",
Flags: []cli.Flag{
internal.NoInputFlag,
internal.DryFlag,
internal.MajorFlag,
internal.MinorFlag,

View File

@ -57,7 +57,6 @@ interface.
You may invoke this command in "wizard" mode and be prompted for input.`,
UsageText: "abra recipe upgrade [options] [<recipe>]",
Flags: []cli.Flag{
internal.NoInputFlag,
internal.PatchFlag,
internal.MinorFlag,
internal.MajorFlag,

View File

@ -31,8 +31,6 @@ var recipeVersionCommand = cli.Command{
UsageText: "abra recipe version [options] <recipe>",
HideHelpCommand: true,
Flags: []cli.Flag{
internal.OfflineFlag,
internal.NoInputFlag,
internal.MachineReadableFlag,
},
Before: internal.SubCommandBefore,

View File

@ -120,7 +120,6 @@ You can also pass "--no-domain-checks/-D" flag to use any arbitrary name
instead of a real domain. The host will be resolved with the "Hostname" entry
of your ~/.ssh/config. Checks for a valid online domain will be skipped.`,
Flags: []cli.Flag{
internal.NoInputFlag,
internal.NoDomainChecksFlag,
localFlag,
},

View File

@ -22,7 +22,6 @@ var serverListCommand = cli.Command{
Flags: []cli.Flag{
internal.DebugFlag,
internal.MachineReadableFlag,
internal.OfflineFlag,
},
Before: internal.SubCommandBefore,
Action: func(ctx context.Context, cmd *cli.Command) error {

View File

@ -44,8 +44,6 @@ app. This can result in unwanted data loss if not used carefully.`,
Flags: []cli.Flag{
allFilterFlag,
volumesFilterFlag,
internal.OfflineFlag,
internal.NoInputFlag,
},
Before: internal.SubCommandBefore,
EnableShellCompletion: true,

View File

@ -24,10 +24,6 @@ var serverRemoveCommand = cli.Command{
Abra will remove the internal bookkeeping ($ABRA_DIR/servers/...) and
underlying client connection context. This server will then be lost in time,
like tears in rain.`,
Flags: []cli.Flag{
internal.NoInputFlag,
internal.OfflineFlag,
},
Before: internal.SubCommandBefore,
EnableShellCompletion: true,
ShellComplete: autocomplete.ServerNameComplete,