From 3845b40aa3b51ce56ad3e0d45eeab4608a235402 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sun, 19 Oct 2025 15:28:48 +0200 Subject: [PATCH] refactor!: archive kadabra --- .dockerignore | 1 - .gitignore | 3 +- .goreleaser.yml | 25 -- Makefile | 25 +- cli/updater/updater.go | 558 -------------------------------------- cmd/kadabra/main.go | 23 -- pkg/i18n/locales/abra.pot | 185 +------------ pkg/i18n/locales/es.mo | Bin 10641 -> 10193 bytes pkg/i18n/locales/es.po | 228 +++------------- 9 files changed, 57 insertions(+), 991 deletions(-) delete mode 100644 cli/updater/updater.go delete mode 100644 cmd/kadabra/main.go diff --git a/.dockerignore b/.dockerignore index e4ddfced..9bac3d8f 100644 --- a/.dockerignore +++ b/.dockerignore @@ -4,5 +4,4 @@ Dockerfile abra dist -kadabra tags diff --git a/.gitignore b/.gitignore index 03b10926..5efc96b2 100644 --- a/.gitignore +++ b/.gitignore @@ -4,7 +4,6 @@ .envrc .vscode/ /abra -/kadabra +/bin dist/ tests/integration/.bats -/bin diff --git a/.goreleaser.yml b/.goreleaser.yml index 778eeeab..c1ab301f 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -32,31 +32,6 @@ builds: - "-s" - "-w" - - id: kadabra - binary: kadabra - dir: cmd/kadabra - env: - - CGO_ENABLED=0 - goos: - - linux - - darwin - goarch: - - 386 - - amd64 - - arm - - arm64 - goarm: - - 5 - - 6 - - 7 - gcflags: - - "all=-l -B" - ldflags: - - "-X 'main.Commit={{ .Commit }}'" - - "-X 'main.Version={{ .Version }}'" - - "-s" - - "-w" - checksum: name_template: "checksums.txt" diff --git a/Makefile b/Makefile index 82877d04..5df9ce24 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,4 @@ ABRA := ./cmd/abra -KADABRA := ./cmd/kadabra COMMIT := $(shell git rev-list -1 HEAD) GOPATH := $(shell go env GOPATH) GOVERSION := 1.24 @@ -16,37 +15,21 @@ export GOPRIVATE=coopcloud.tech # NOTE(d1): default `make` optimised for Abra hacking all: format check build-abra test -run-abra: +run: @go run -gcflags=$(GCFLAGS) -ldflags=$(LDFLAGS) $(ABRA) -run-kadabra: - @go run -gcflags=$(GCFLAGS) -ldflags=$(LDFLAGS) $(KADABRA) - -install-abra: +install: @go install -gcflags=$(GCFLAGS) -ldflags=$(LDFLAGS) $(ABRA) -install-kadabra: - @go install -gcflags=$(GCFLAGS) -ldflags=$(LDFLAGS) $(KADABRA) - -install: install-abra install-kadabra - -build-abra: +build: @go build -v -gcflags=$(GCFLAGS) -ldflags=$(DIST_LDFLAGS) $(ABRA) -build-kadabra: - @go build -v -gcflags=$(GCFLAGS) -ldflags=$(DIST_LDFLAGS) $(KADABRA) - -build: build-abra build-kadabra - -build-docker-abra: +build-docker: @docker run -it -v $(PWD):/abra golang:$(GOVERSION) \ bash -c 'cd /abra; ./scripts/docker/build.sh' -build-docker: build-docker-abra - clean: @rm '$(GOPATH)/bin/abra' - @rm '$(GOPATH)/bin/kadabra' format: @gofmt -s -w $$(find . -type f -name '*.go' | grep -v "/vendor/") diff --git a/cli/updater/updater.go b/cli/updater/updater.go deleted file mode 100644 index 052cc866..00000000 --- a/cli/updater/updater.go +++ /dev/null @@ -1,558 +0,0 @@ -package updater - -import ( - "context" - "errors" - "fmt" - "os" - "strconv" - "strings" - - "coopcloud.tech/abra/cli/internal" - appPkg "coopcloud.tech/abra/pkg/app" - "coopcloud.tech/abra/pkg/client" - "coopcloud.tech/abra/pkg/deploy" - "coopcloud.tech/abra/pkg/envfile" - "coopcloud.tech/abra/pkg/i18n" - "coopcloud.tech/abra/pkg/lint" - "coopcloud.tech/abra/pkg/recipe" - "coopcloud.tech/abra/pkg/upstream/convert" - "coopcloud.tech/abra/pkg/upstream/stack" - "coopcloud.tech/tagcmp" - charmLog "github.com/charmbracelet/log" - composetypes "github.com/docker/cli/cli/compose/types" - "github.com/docker/docker/api/types" - "github.com/docker/docker/api/types/filters" - dockerclient "github.com/docker/docker/client" - "github.com/spf13/cobra" - - "coopcloud.tech/abra/pkg/log" -) - -const SERVER = "localhost" - -// translators: `kadabra notify` aliases. use a comma separated list of aliases -// with no spaces in between -var notifyAliases = i18n.G("n") - -// NotifyCommand checks for available upgrades. -var NotifyCommand = &cobra.Command{ - // translators: `notify` command - Use: i18n.G("notify [flags]"), - Aliases: strings.Split(notifyAliases, ","), - // translators: Short description for `notify` command - Short: i18n.G("Check for available upgrades"), - Long: i18n.G(`Notify on new versions for deployed apps. - -If a new patch/minor version is available, a notification is printed. - -Use "--major/-m" to include new major versions.`), - Args: cobra.NoArgs, - Run: func(cmd *cobra.Command, args []string) { - cl, err := client.New("default") - if err != nil { - log.Fatal(err) - } - - stacks, err := stack.GetStacks(cl) - if err != nil { - log.Fatal(err) - } - - for _, stackInfo := range stacks { - stackName := stackInfo.Name - recipeName, err := getLabel(cl, stackName, "recipe") - if err != nil { - log.Fatal(err) - } - - if recipeName != "" { - _, err = getLatestUpgrade(cl, stackName, recipeName) - if err != nil { - log.Fatal(err) - } - } - } - }, -} - -// translators: `kadabra upgrade` aliases. use a comma separated list of aliases with -// no spaces in between -var upgradeAliases = i18n.G("u") - -// UpgradeCommand upgrades apps. -var UpgradeCommand = &cobra.Command{ - // translators: `app upgrade` command - Use: i18n.G("upgrade [[stack] [recipe] | --all] [flags]"), - Aliases: strings.Split(upgradeAliases, ","), - // translators: Short description for `app upgrade` command - Short: i18n.G("Upgrade apps"), - Long: i18n.G(`Upgrade an app by specifying stack name and recipe. - -Use "--all" to upgrade every deployed app. - -For each app with auto updates enabled, the deployed version is compared with -the current recipe catalogue version. If a new patch/minor version is -available, the app is upgraded. - -To include major versions use the "--major/-m" flag. You probably don't want -that as it will break things. Only apps that are not deployed with "--chaos/-C" -are upgraded, to update chaos deployments use the "--chaos/-C" flag. Use it -with care.`), - Args: cobra.RangeArgs(0, 2), - // TODO(d1): complete stack/recipe - // ValidArgsFunction: func( - // cmd *cobra.Command, - // args []string, - // toComplete string) ([]string, cobra.ShellCompDirective) { - // }, - Run: func(cmd *cobra.Command, args []string) { - cl, err := client.New("default") - if err != nil { - log.Fatal(err) - } - - if !updateAll && len(args) != 2 { - log.Fatal(i18n.G("missing arguments or --all/-a flag")) - } - - if !updateAll { - stackName := args[0] - recipeName := args[1] - - err = tryUpgrade(cl, stackName, recipeName) - if err != nil { - log.Fatal(err) - } - - return - } - - stacks, err := stack.GetStacks(cl) - if err != nil { - log.Fatal(err) - } - - for _, stackInfo := range stacks { - stackName := stackInfo.Name - recipeName, err := getLabel(cl, stackName, "recipe") - if err != nil { - log.Fatal(err) - } - - err = tryUpgrade(cl, stackName, recipeName) - if err != nil { - log.Fatal(err) - } - } - }, -} - -// getLabel reads docker labels from running services in the format of "coop-cloud.${STACK_NAME}.${LABEL}". -func getLabel(cl *dockerclient.Client, stackName string, label string) (string, error) { - filter := filters.NewArgs() - filter.Add("label", fmt.Sprintf("%s=%s", convert.LabelNamespace, stackName)) - - services, err := cl.ServiceList(context.Background(), types.ServiceListOptions{Filters: filter}) - if err != nil { - return "", err - } - - for _, service := range services { - labelKey := fmt.Sprintf("coop-cloud.%s.%s", stackName, label) - if labelValue, ok := service.Spec.Labels[labelKey]; ok { - return labelValue, nil - } - } - - log.Debug(i18n.G("no %s label found for %s", label, stackName)) - - return "", nil -} - -// getBoolLabel reads a boolean docker label from running services -func getBoolLabel(cl *dockerclient.Client, stackName string, label string) (bool, error) { - lableValue, err := getLabel(cl, stackName, label) - if err != nil { - return false, err - } - - if lableValue != "" { - value, err := strconv.ParseBool(lableValue) - if err != nil { - return false, err - } - - return value, nil - } - - log.Debug(i18n.G("boolean label %s could not be found for %s, set default to false.", label, stackName)) - - return false, nil -} - -// getEnv reads env variables from docker services. -func getEnv(cl *dockerclient.Client, stackName string) (envfile.AppEnv, error) { - envMap := make(map[string]string) - filter := filters.NewArgs() - filter.Add("label", fmt.Sprintf("%s=%s", convert.LabelNamespace, stackName)) - - services, err := cl.ServiceList(context.Background(), types.ServiceListOptions{Filters: filter}) - if err != nil { - return nil, err - } - - for _, service := range services { - envList := service.Spec.TaskTemplate.ContainerSpec.Env - for _, envString := range envList { - splitString := strings.SplitN(envString, "=", 2) - if len(splitString) != 2 { - log.Debug(i18n.G("can't separate key from value: %s (this variable is probably unset)", envString)) - continue - } - k := splitString[0] - v := splitString[1] - log.Debugf(i18n.G("for %s read env %s with value: %s from docker service", stackName, k, v)) - envMap[k] = v - } - } - - return envMap, nil -} - -// getLatestUpgrade returns the latest available version for an app respecting -// the "--major" flag if it is newer than the currently deployed version. -func getLatestUpgrade(cl *dockerclient.Client, stackName string, recipeName string) (string, error) { - deployedVersion, err := getDeployedVersion(cl, stackName, recipeName) - if err != nil { - return "", err - } - - availableUpgrades, err := getAvailableUpgrades(cl, stackName, recipeName, deployedVersion) - if err != nil { - return "", err - } - - if len(availableUpgrades) == 0 { - log.Debugf(i18n.G("no available upgrades for %s", stackName)) - return "", nil - } - - var chosenUpgrade string - if len(availableUpgrades) > 0 { - chosenUpgrade = availableUpgrades[len(availableUpgrades)-1] - log.Info(i18n.G("%s (%s) can be upgraded from version %s to %s", stackName, recipeName, deployedVersion, chosenUpgrade)) - } - - return chosenUpgrade, nil -} - -// getDeployedVersion returns the currently deployed version of an app. -func getDeployedVersion(cl *dockerclient.Client, stackName string, recipeName string) (string, error) { - log.Debug(i18n.G("retrieve deployed version whether %s is already deployed", stackName)) - - deployMeta, err := stack.IsDeployed(context.Background(), cl, stackName) - if err != nil { - return "", err - } - - if !deployMeta.IsDeployed { - return "", errors.New(i18n.G("%s is not deployed?", stackName)) - } - - if deployMeta.Version == "unknown" { - return "", errors.New(i18n.G("failed to determine deployed version of %s", stackName)) - } - - return deployMeta.Version, nil -} - -// getAvailableUpgrades returns all available versions of an app that are newer -// than the deployed version. It only includes major upgrades if the "--major" -// flag is set. -func getAvailableUpgrades(cl *dockerclient.Client, stackName string, recipeName string, - deployedVersion string) ([]string, error) { - catl, err := recipe.ReadRecipeCatalogue(internal.Offline) - if err != nil { - return nil, err - } - - versions, err := recipe.GetRecipeCatalogueVersions(recipeName, catl) - if err != nil { - return nil, err - } - - if len(versions) == 0 { - log.Warn(i18n.G("no published releases for %s in the recipe catalogue?", recipeName)) - return nil, nil - } - - var availableUpgrades []string - for _, version := range versions { - parsedDeployedVersion, err := tagcmp.Parse(deployedVersion) - if err != nil { - return nil, err - } - - parsedVersion, err := tagcmp.Parse(version) - if err != nil { - return nil, err - } - - versionDelta, err := parsedDeployedVersion.UpgradeDelta(parsedVersion) - if err != nil { - return nil, err - } - - if 0 < versionDelta.UpgradeType() && (versionDelta.UpgradeType() < 4 || includeMajorUpdates) { - availableUpgrades = append(availableUpgrades, version) - } - } - - log.Debug(i18n.G("available updates for %s: %s", stackName, availableUpgrades)) - - return availableUpgrades, nil -} - -// processRecipeRepoVersion clones, pulls, checks out the version and lints the -// recipe repository. -func processRecipeRepoVersion(r recipe.Recipe, version string) error { - if err := r.EnsureExists(); err != nil { - return err - } - - if err := r.EnsureUpToDate(); err != nil { - return err - } - - if _, err := r.EnsureVersion(version); err != nil { - return err - } - - if err := lint.LintForErrors(r); err != nil { - return err - } - - return nil -} - -// createDeployConfig merges and enriches the compose config for the deployment. -func createDeployConfig(r recipe.Recipe, stackName string, env envfile.AppEnv) (*composetypes.Config, stack.Deploy, error) { - env["STACK_NAME"] = stackName - - deployOpts := stack.Deploy{ - Namespace: stackName, - Prune: false, - ResolveImage: stack.ResolveImageAlways, - Detach: false, - } - - composeFiles, err := r.GetComposeFiles(env) - if err != nil { - return nil, deployOpts, err - } - - deployOpts.Composefiles = composeFiles - compose, err := appPkg.GetAppComposeConfig(stackName, deployOpts, env) - if err != nil { - return nil, deployOpts, err - } - - appPkg.ExposeAllEnv(stackName, compose, env) - - // after the upgrade the deployment won't be in chaos state anymore - appPkg.SetChaosLabel(compose, stackName, false) - appPkg.SetRecipeLabel(compose, stackName, r.Name) - appPkg.SetUpdateLabel(compose, stackName, env) - - return compose, deployOpts, nil -} - -// tryUpgrade performs the upgrade if all the requirements are fulfilled. -func tryUpgrade(cl *dockerclient.Client, stackName, recipeName string) error { - if recipeName == "" { - log.Debug(i18n.G("don't update %s due to missing recipe name", stackName)) - return nil - } - - chaos, err := getBoolLabel(cl, stackName, "chaos") - if err != nil { - return err - } - - if chaos && !internal.Chaos { - log.Debug(i18n.G("don't update %s due to chaos deployment", stackName)) - return nil - } - - updatesEnabled, err := getBoolLabel(cl, stackName, "autoupdate") - if err != nil { - return err - } - - if !updatesEnabled { - log.Debug(i18n.G("don't update %s due to disabled auto updates or missing ENABLE_AUTO_UPDATE env", stackName)) - return nil - } - - upgradeVersion, err := getLatestUpgrade(cl, stackName, recipeName) - if err != nil { - return err - } - - if upgradeVersion == "" { - log.Debug(i18n.G("don't update %s due to no new version", stackName)) - return nil - } - - err = upgrade(cl, stackName, recipeName, upgradeVersion) - - return err -} - -// upgrade performs all necessary steps to upgrade an app. -func upgrade(cl *dockerclient.Client, stackName, recipeName, upgradeVersion string) error { - env, err := getEnv(cl, stackName) - if err != nil { - return err - } - - app := appPkg.App{ - Name: stackName, - Recipe: recipe.Get(recipeName), - Server: SERVER, - Env: env, - } - - r := recipe.Get(recipeName) - - if err = processRecipeRepoVersion(r, upgradeVersion); err != nil { - return err - } - - if err = deploy.MergeAbraShEnv(app.Recipe, app.Env); err != nil { - return err - } - - compose, deployOpts, err := createDeployConfig(r, stackName, app.Env) - if err != nil { - return err - } - - log.Info(i18n.G("upgrade %s (%s) to version %s", stackName, recipeName, upgradeVersion)) - - serviceNames, err := appPkg.GetAppServiceNames(app.Name) - if err != nil { - return err - } - - f, err := app.Filters(true, false, serviceNames...) - if err != nil { - return err - } - - err = stack.RunDeploy( - cl, - deployOpts, - compose, - stackName, - app.Server, - true, - f, - ) - - return err -} - -func newKadabraApp(version, commit string) *cobra.Command { - rootCmd := &cobra.Command{ - // translators: `kadabra` binary name - Use: i18n.G("kadabra [cmd] [flags]"), - Version: fmt.Sprintf("%s-%s", version, commit[:7]), - // translators: Short description for `kababra` binary - Short: i18n.G("The Co-op Cloud auto-updater πŸ€– πŸš€"), - PersistentPreRun: func(cmd *cobra.Command, args []string) { - log.Logger.SetStyles(charmLog.DefaultStyles()) - charmLog.SetDefault(log.Logger) - - if internal.Debug { - log.SetLevel(log.DebugLevel) - log.SetOutput(os.Stderr) - log.SetReportCaller(true) - } - - log.Debug(i18n.G("kadabra version %s, commit %s", version, commit)) - }, - } - - rootCmd.PersistentFlags().BoolVarP( - &internal.Debug, - i18n.G("debug"), - i18n.G("d"), - false, - i18n.G("show debug messages"), - ) - - rootCmd.PersistentFlags().BoolVarP( - &internal.NoInput, - i18n.G("no-input"), - i18n.G("n"), - false, - i18n.G("toggle non-interactive mode"), - ) - - rootCmd.AddCommand( - NotifyCommand, - UpgradeCommand, - ) - - return rootCmd -} - -// RunApp runs CLI abra app. -func RunApp(version, commit string) { - app := newKadabraApp(version, commit) - - if err := app.Execute(); err != nil { - log.Fatal(err) - } -} - -var ( - includeMajorUpdates bool - updateAll bool -) - -func init() { - NotifyCommand.Flags().BoolVarP( - &includeMajorUpdates, - "major", - "m", - false, - "check for major updates", - ) - - UpgradeCommand.Flags().BoolVarP( - &internal.Chaos, - i18n.G("chaos"), - i18n.G("C"), - false, - i18n.G("ignore uncommitted recipes changes"), - ) - - UpgradeCommand.Flags().BoolVarP( - &includeMajorUpdates, - i18n.G("major"), - i18n.G("m"), - false, - i18n.G("check for major updates"), - ) - - UpgradeCommand.Flags().BoolVarP( - &updateAll, - i18n.G("all"), - i18n.GC("a", "abra upgrade"), - false, - i18n.G("update all deployed apps"), - ) -} diff --git a/cmd/kadabra/main.go b/cmd/kadabra/main.go deleted file mode 100644 index 18e2224f..00000000 --- a/cmd/kadabra/main.go +++ /dev/null @@ -1,23 +0,0 @@ -// Package main provides the command-line entrypoint. -package main - -import ( - "coopcloud.tech/abra/cli/updater" -) - -// Version is the current version of Kadabra. -var Version string - -// Commit is the current git commit of Kadabra. -var Commit string - -func main() { - if Version == "" { - Version = "dev" - } - if Commit == "" { - Commit = " " - } - - updater.RunApp(Version, Commit) -} diff --git a/pkg/i18n/locales/abra.pot b/pkg/i18n/locales/abra.pot index 7965127d..69c4ef87 100644 --- a/pkg/i18n/locales/abra.pot +++ b/pkg/i18n/locales/abra.pot @@ -7,7 +7,7 @@ msgid "" msgstr "Project-Id-Version: \n" "Report-Msgid-Bugs-To: EMAIL\n" - "POT-Creation-Date: 2025-10-18 16:03-0400\n" + "POT-Creation-Date: 2025-10-19 15:32+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -181,11 +181,6 @@ msgstr "" msgid "%d volumes removed successfully" msgstr "" -#: ./cli/updater/updater.go:244 -#, c-format -msgid "%s (%s) can be upgraded from version %s to %s" -msgstr "" - #: ./pkg/recipe/git.go:191 #, c-format msgid "%s (%s) has locally unstaged changes?" @@ -346,7 +341,7 @@ msgstr "" msgid "%s is not an upgrade for %s?" msgstr "" -#: ./cli/app/logs.go:65 ./cli/app/ps.go:62 ./cli/app/restart.go:100 ./cli/app/services.go:55 ./cli/app/undeploy.go:65 ./cli/app/upgrade.go:448 ./cli/updater/updater.go:260 +#: ./cli/app/logs.go:65 ./cli/app/ps.go:62 ./cli/app/restart.go:100 ./cli/app/services.go:55 ./cli/app/undeploy.go:65 ./cli/app/upgrade.go:448 #, c-format msgid "%s is not deployed?" msgstr "" @@ -612,7 +607,7 @@ msgstr "" msgid "Both local recipe and live deployment labels are shown." msgstr "" -#: ./cli/app/backup.go:319 ./cli/app/backup.go:335 ./cli/app/check.go:95 ./cli/app/cmd.go:285 ./cli/app/cp.go:385 ./cli/app/deploy.go:394 ./cli/app/labels.go:143 ./cli/app/new.go:397 ./cli/app/ps.go:213 ./cli/app/restart.go:162 ./cli/app/restore.go:138 ./cli/app/secret.go:569 ./cli/app/secret.go:609 ./cli/app/secret.go:633 ./cli/app/secret.go:641 ./cli/catalogue/catalogue.go:318 ./cli/recipe/lint.go:137 ./cli/updater/updater.go:538 +#: ./cli/app/backup.go:319 ./cli/app/backup.go:335 ./cli/app/check.go:95 ./cli/app/cmd.go:285 ./cli/app/cp.go:385 ./cli/app/deploy.go:394 ./cli/app/labels.go:143 ./cli/app/new.go:397 ./cli/app/ps.go:213 ./cli/app/restart.go:162 ./cli/app/restore.go:138 ./cli/app/secret.go:569 ./cli/app/secret.go:609 ./cli/app/secret.go:633 ./cli/app/secret.go:641 ./cli/catalogue/catalogue.go:318 ./cli/recipe/lint.go:137 msgid "C" msgstr "" @@ -660,11 +655,6 @@ msgstr "" msgid "Check app deployment status" msgstr "" -#. translators: Short description for `notify` command -#: ./cli/updater/updater.go:44 -msgid "Check for available upgrades" -msgstr "" - #. translators: Short description for `recipe fetch` command #: ./cli/recipe/fetch.go:27 msgid "Clone recipe(s) locally" @@ -1089,14 +1079,6 @@ msgstr "" msgid "NOW" msgstr "" -#: ./cli/updater/updater.go:45 -msgid "Notify on new versions for deployed apps.\n" - "\n" - "If a new patch/minor version is available, a notification is printed.\n" - "\n" - "Use \"--major/-m\" to include new major versions." -msgstr "" - #: ./cli/internal/deploy.go:210 msgid "OLD SERVER" msgstr "" @@ -1346,11 +1328,6 @@ msgstr "" msgid "Tail app logs" msgstr "" -#. translators: Short description for `kababra` binary -#: ./cli/updater/updater.go:473 -msgid "The Co-op Cloud auto-updater πŸ€– πŸš€" -msgstr "" - #. translators: Short description for `abra` binary #: ./cli/run.go:80 msgid "The Co-op Cloud command-line utility belt πŸŽ©πŸ‡" @@ -1513,21 +1490,6 @@ msgstr "" msgid "Upgrade an app" msgstr "" -#: ./cli/updater/updater.go:90 -msgid "Upgrade an app by specifying stack name and recipe. \n" - "\n" - "Use \"--all\" to upgrade every deployed app.\n" - "\n" - "For each app with auto updates enabled, the deployed version is compared with\n" - "the current recipe catalogue version. If a new patch/minor version is\n" - "available, the app is upgraded.\n" - "\n" - "To include major versions use the \"--major/-m\" flag. You probably don't want\n" - "that as it will break things. Only apps that are not deployed with \"--chaos/-C\"\n" - "are upgraded, to update chaos deployments use the \"--chaos/-C\" flag. Use it\n" - "with care." -msgstr "" - #: ./cli/app/upgrade.go:37 msgid "Upgrade an app.\n" "\n" @@ -1545,11 +1507,6 @@ msgid "Upgrade an app.\n" "beforehand. See \"abra app backup\" for more." msgstr "" -#. translators: Short description for `app upgrade` command -#: ./cli/updater/updater.go:89 -msgid "Upgrade apps" -msgstr "" - #. translators: Short description for `recipe upgrade` command #: ./cli/recipe/upgrade.go:49 msgid "Upgrade recipe image tags" @@ -1721,11 +1678,6 @@ msgctxt "server prune" msgid "a" msgstr "" -#: ./cli/updater/updater.go:554 -msgctxt "abra upgrade" -msgid "a" -msgstr "" - #: ./cli/app/remove.go:66 msgid "aborting as requested" msgstr "" @@ -1778,7 +1730,7 @@ msgstr "" msgid "adding env vars to %s service config" msgstr "" -#: ./cli/app/backup.go:270 ./cli/app/secret.go:576 ./cli/app/secret.go:616 ./cli/recipe/fetch.go:121 ./cli/server/prune.go:98 ./cli/updater/updater.go:553 +#: ./cli/app/backup.go:270 ./cli/app/secret.go:576 ./cli/app/secret.go:616 ./cli/recipe/fetch.go:121 ./cli/server/prune.go:98 msgid "all" msgstr "" @@ -1895,11 +1847,6 @@ msgstr "" msgid "automatically set ssh remote" msgstr "" -#: ./cli/updater/updater.go:312 -#, c-format -msgid "available updates for %s: %s" -msgstr "" - #. translators: `abra app backup` aliases. use a comma separated list of aliases with #. no spaces in between #: ./cli/app/backup.go:239 @@ -1933,11 +1880,6 @@ msgstr "" msgid "bind options are incompatible with type volume" msgstr "" -#: ./cli/updater/updater.go:189 -#, c-format -msgid "boolean label %s could not be found for %s, set default to false." -msgstr "" - #: ./pkg/config/env.go:74 ./pkg/config/env.go:107 #, c-format msgid "broken symlink in your abra config folders: %s" @@ -1974,11 +1916,6 @@ msgstr "" msgid "can't read local recipes: %s" msgstr "" -#: ./cli/updater/updater.go:210 -#, c-format -msgid "can't separate key from value: %s (this variable is probably unset)" -msgstr "" - #: ./cli/internal/deploy.go:237 msgid "cancelled" msgstr "" @@ -2087,7 +2024,7 @@ msgstr "" msgid "cfg" msgstr "" -#: ./cli/app/backup.go:318 ./cli/app/backup.go:334 ./cli/app/check.go:94 ./cli/app/cmd.go:284 ./cli/app/cp.go:384 ./cli/app/deploy.go:393 ./cli/app/labels.go:142 ./cli/app/new.go:396 ./cli/app/ps.go:212 ./cli/app/restart.go:161 ./cli/app/restore.go:137 ./cli/app/secret.go:568 ./cli/app/secret.go:608 ./cli/app/secret.go:632 ./cli/app/secret.go:640 ./cli/catalogue/catalogue.go:317 ./cli/recipe/lint.go:136 ./cli/updater/updater.go:537 +#: ./cli/app/backup.go:318 ./cli/app/backup.go:334 ./cli/app/check.go:94 ./cli/app/cmd.go:284 ./cli/app/cp.go:384 ./cli/app/deploy.go:393 ./cli/app/labels.go:142 ./cli/app/new.go:396 ./cli/app/ps.go:212 ./cli/app/restart.go:161 ./cli/app/restore.go:137 ./cli/app/secret.go:568 ./cli/app/secret.go:608 ./cli/app/secret.go:632 ./cli/app/secret.go:640 ./cli/catalogue/catalogue.go:317 ./cli/recipe/lint.go:136 msgid "chaos" msgstr "" @@ -2096,10 +2033,6 @@ msgstr "" msgid "check [flags]" msgstr "" -#: ./cli/updater/updater.go:548 -msgid "check for major updates" -msgstr "" - #: ./cli/app/deploy.go:94 ./cli/app/undeploy.go:57 ./cli/app/upgrade.go:440 #, c-format msgid "checking whether %s is already deployed" @@ -2403,14 +2336,10 @@ msgstr "" #. no spaces in between #. translators: `abra recipe diff` aliases. use a comma separated list of aliases #. with no spaces in between -#: ./cli/app/backup.go:73 ./cli/app/deploy.go:29 ./cli/recipe/diff.go:16 ./cli/updater/updater.go:491 +#: ./cli/app/backup.go:73 ./cli/app/deploy.go:29 ./cli/recipe/diff.go:16 msgid "d" msgstr "" -#: ./cli/updater/updater.go:490 -msgid "debug" -msgstr "" - #: ./cli/app/secret.go:326 #, c-format msgid "deleted %s successfully from local pass store" @@ -2577,26 +2506,6 @@ msgstr "" msgid "don't forget to run 'sudo mandb'" msgstr "" -#: ./cli/updater/updater.go:384 -#, c-format -msgid "don't update %s due to chaos deployment" -msgstr "" - -#: ./cli/updater/updater.go:394 -#, c-format -msgid "don't update %s due to disabled auto updates or missing ENABLE_AUTO_UPDATE env" -msgstr "" - -#: ./cli/updater/updater.go:374 -#, c-format -msgid "don't update %s due to missing recipe name" -msgstr "" - -#: ./cli/updater/updater.go:404 -#, c-format -msgid "don't update %s due to no new version" -msgstr "" - #. translators: `app backup download` command #: ./cli/app/backup.go:77 msgid "download [flags]" @@ -2841,11 +2750,6 @@ msgstr "" msgid "failed to create volume %s on %s: %s" msgstr "" -#: ./cli/updater/updater.go:264 -#, c-format -msgid "failed to determine deployed version of %s" -msgstr "" - #: ./pkg/upstream/stack/remove.go:239 #, c-format msgid "failed to get tasks: %w" @@ -3013,11 +2917,6 @@ msgstr "" msgid "filter by recipe" msgstr "" -#: ./cli/updater/updater.go:215 -#, c-format -msgid "for %s read env %s with value: %s from docker service" -msgstr "" - #: ./cli/app/deploy.go:401 ./cli/app/remove.go:162 ./cli/app/rollback.go:349 ./cli/app/upgrade.go:459 ./cli/app/volume.go:216 ./cli/recipe/fetch.go:137 msgid "force" msgstr "" @@ -3232,7 +3131,7 @@ msgstr "" msgid "id: %s, " msgstr "" -#: ./cli/app/backup.go:321 ./cli/app/backup.go:337 ./cli/app/check.go:97 ./cli/app/cmd.go:287 ./cli/app/cp.go:387 ./cli/app/deploy.go:396 ./cli/app/labels.go:145 ./cli/app/new.go:399 ./cli/app/ps.go:215 ./cli/app/restart.go:164 ./cli/app/restore.go:140 ./cli/app/secret.go:571 ./cli/app/secret.go:611 ./cli/app/secret.go:635 ./cli/app/secret.go:643 ./cli/catalogue/catalogue.go:320 ./cli/recipe/lint.go:139 ./cli/updater/updater.go:540 +#: ./cli/app/backup.go:321 ./cli/app/backup.go:337 ./cli/app/check.go:97 ./cli/app/cmd.go:287 ./cli/app/cp.go:387 ./cli/app/deploy.go:396 ./cli/app/labels.go:145 ./cli/app/new.go:399 ./cli/app/ps.go:215 ./cli/app/restart.go:164 ./cli/app/restore.go:140 ./cli/app/secret.go:571 ./cli/app/secret.go:611 ./cli/app/secret.go:635 ./cli/app/secret.go:643 ./cli/catalogue/catalogue.go:320 ./cli/recipe/lint.go:139 msgid "ignore uncommitted recipes changes" msgstr "" @@ -3411,16 +3310,6 @@ msgstr "" msgid "invalid version %s specified" msgstr "" -#. translators: `kadabra` binary name -#: ./cli/updater/updater.go:470 -msgid "kadabra [cmd] [flags]" -msgstr "" - -#: ./cli/updater/updater.go:484 -#, c-format -msgid "kadabra version %s, commit %s" -msgstr "" - #. translators: `abra app logs` aliases. use a comma separated list of aliases with #. no spaces in between #. translators: `abra recipe lint` aliases. use a comma separated list of @@ -3557,7 +3446,7 @@ msgstr "" #. with no spaces in between #. translators: `abra man` aliases. use a comma separated list of aliases #. with no spaces in between -#: ./cli/app/list.go:323 ./cli/app/move.go:34 ./cli/app/ps.go:205 ./cli/app/secret.go:553 ./cli/app/secret.go:649 ./cli/recipe/list.go:104 ./cli/recipe/upgrade.go:376 ./cli/recipe/version.go:139 ./cli/run.go:152 ./cli/server/list.go:106 ./cli/updater/updater.go:546 +#: ./cli/app/list.go:323 ./cli/app/move.go:34 ./cli/app/ps.go:205 ./cli/app/secret.go:553 ./cli/app/secret.go:649 ./cli/recipe/list.go:104 ./cli/recipe/upgrade.go:376 ./cli/recipe/version.go:139 ./cli/run.go:152 ./cli/server/list.go:106 msgid "m" msgstr "" @@ -3570,7 +3459,7 @@ msgstr "" msgid "main app service version for %s is empty?" msgstr "" -#: ./cli/internal/recipe.go:48 ./cli/internal/recipe.go:66 ./cli/internal/recipe.go:80 ./cli/recipe/release.go:656 ./cli/recipe/sync.go:279 ./cli/recipe/upgrade.go:351 ./cli/updater/updater.go:545 +#: ./cli/internal/recipe.go:48 ./cli/internal/recipe.go:66 ./cli/internal/recipe.go:80 ./cli/recipe/release.go:656 ./cli/recipe/sync.go:279 ./cli/recipe/upgrade.go:351 msgid "major" msgstr "" @@ -3614,10 +3503,6 @@ msgstr "" msgid "missing arguments [secret]/[version] or '--all'" msgstr "" -#: ./cli/updater/updater.go:116 -msgid "missing arguments or --all/-a flag" -msgstr "" - #: ./pkg/secret/secret.go:131 #, c-format msgid "missing version for secret? (%s)" @@ -3641,9 +3526,7 @@ msgstr "" #. no spaces in between #. translators: `abra recipe new` aliases. use a comma separated list of #. aliases with no spaces in between -#. translators: `kadabra notify` aliases. use a comma separated list of aliases -#. with no spaces in between -#: ./cli/app/new.go:48 ./cli/recipe/new.go:36 ./cli/updater/updater.go:36 ./cli/updater/updater.go:499 +#: ./cli/app/new.go:48 ./cli/recipe/new.go:36 msgid "n" msgstr "" @@ -3719,7 +3602,7 @@ msgstr "" msgid "no %s exists, skipping reading gitignore paths" msgstr "" -#: ./cli/updater/updater.go:168 ./pkg/app/compose.go:87 +#: ./pkg/app/compose.go:87 #, c-format msgid "no %s label found for %s" msgstr "" @@ -3750,11 +3633,6 @@ msgstr "" msgid "no available upgrades" msgstr "" -#: ./cli/updater/updater.go:237 -#, c-format -msgid "no available upgrades for %s" -msgstr "" - #: ./cli/internal/backup.go:26 msgid "no backupbot discovered, is it deployed?" msgstr "" @@ -3799,11 +3677,6 @@ msgstr "" msgid "no new versions available for %s, assuming %s is the latest (use -a/--all-tags to see all anyway)" msgstr "" -#: ./cli/updater/updater.go:286 -#, c-format -msgid "no published releases for %s in the recipe catalogue?" -msgstr "" - #: ./cli/internal/validate.go:64 #, c-format msgid "no recipe '%s' exists?" @@ -3905,10 +3778,6 @@ msgstr "" msgid "no-domain-checks" msgstr "" -#: ./cli/updater/updater.go:498 -msgid "no-input" -msgstr "" - #: ./cli/app/run.go:109 msgid "no-tty" msgstr "" @@ -3941,11 +3810,6 @@ msgstr "" msgid "nothing found in stack: %s" msgstr "" -#. translators: `notify` command -#: ./cli/updater/updater.go:41 -msgid "notify [flags]" -msgstr "" - #: ./cli/app/backup.go:329 msgid "number of retry attempts" msgstr "" @@ -4445,11 +4309,6 @@ msgstr "" msgid "retries" msgstr "" -#: ./cli/updater/updater.go:252 -#, c-format -msgid "retrieve deployed version whether %s is already deployed" -msgstr "" - #: ./cli/internal/backup.go:29 #, c-format msgid "retrieved %s as backup enabled service" @@ -4797,7 +4656,7 @@ msgstr "" msgid "show apps of a specific server" msgstr "" -#: ./cli/run.go:193 ./cli/updater/updater.go:493 +#: ./cli/run.go:193 msgid "show debug messages" msgstr "" @@ -5082,7 +4941,7 @@ msgstr "" msgid "tmpfs options are incompatible with type volume" msgstr "" -#: ./cli/run.go:201 ./cli/updater/updater.go:501 +#: ./cli/run.go:201 msgid "toggle non-interactive mode" msgstr "" @@ -5113,11 +4972,9 @@ msgstr "" #. translators: `abra recipe upgrade` aliases. use a comma separated list of #. aliases with no spaces in between -#. translators: `kadabra upgrade` aliases. use a comma separated list of aliases with -#. no spaces in between #. translators: `abra upgrade` aliases. use a comma separated list of aliases with #. no spaces in between -#: ./cli/app/cmd.go:269 ./cli/app/run.go:118 ./cli/recipe/upgrade.go:42 ./cli/updater/updater.go:81 ./cli/upgrade.go:17 +#: ./cli/app/cmd.go:269 ./cli/app/run.go:118 ./cli/recipe/upgrade.go:42 ./cli/upgrade.go:17 msgid "u" msgstr "" @@ -5452,10 +5309,6 @@ msgstr "" msgid "up" msgstr "" -#: ./cli/updater/updater.go:556 -msgid "update all deployed apps" -msgstr "" - #: ./pkg/upstream/stack/stack.go:473 #, c-format msgid "updating %s" @@ -5471,11 +5324,6 @@ msgstr "" msgid "upgrade" msgstr "" -#: ./cli/updater/updater.go:442 -#, c-format -msgid "upgrade %s (%s) to version %s" -msgstr "" - #. translators: `app upgrade` command #: ./cli/app/upgrade.go:33 msgid "upgrade [version] [flags]" @@ -5486,11 +5334,6 @@ msgstr "" msgid "upgrade [flags]" msgstr "" -#. translators: `app upgrade` command -#: ./cli/updater/updater.go:86 -msgid "upgrade [[stack] [recipe] | --all] [flags]" -msgstr "" - #. translators: `upgrade` command #: ./cli/upgrade.go:22 msgid "upgrade [flags]" diff --git a/pkg/i18n/locales/es.mo b/pkg/i18n/locales/es.mo index 75ff3f9441f3b00e88fdf951427970c5f8c758b0..99e6c63bc2f036a605df0949c3a925013193aec0 100644 GIT binary patch delta 2487 zcmZA2S!`5Q9LMp0r!CNp(y1+2wi)QcU@cJUNH+l~c33NA7p#s53XC$u#Ky$*23&xL zLd;N2P4z*9L?MJQim{0)2@e_qE)O6kMU06=qmd9o1PQ6%-|f*5Px`-~d(PZB+x?&E zTPwe7^L`9w^%x~dOd$F)&D1bqBo|6D$7~Gl#PPTr$Kv}K!BeQuf5KwCjwP6#YgT~c zaS}#QpU1EeH)6=lvxIw~8`aS<=NCAU`q!wA{&4<{n#icU;epCg-)q1iF2Vb-!}${C zQ{Rh|u?MH(rx;{>`@z3q0OZexxQxa;z9q|014f(+Q9Bh!?L-%9MQ@{aIDmTaB2L4*ct2Ls8@DzOYjHU;hV4TBY(E!0 z_a27uGvuw>B^-x?sEOS~Pb-_q^!1MFQ3J2THr#<);Q(suzIXM%FigFWS?gWTLJio8 zT0k7t-^&=q9{2eg;cA;L;F4O?sn1RPo z10Q$oXHX0I8I^RmQ41|#|EFLCr{mHf`>&aF(h$M}sQL+12Vdbscm=g}CG@7`sloZ! zj_UZJ^8{)q&S4o|MeSS$v(rMtsLyLq6N!1;sN?O(uG;JFfrF@ykK=xpcot_+U(c+R z3;VDdPoh6T)Q*%edv#ogTH#t(-;EDbKa4ea+10&#Mz5!#1(g(C$YSk?YyTW)QorFW zXZqTK)u;hpL4E$AYrlXM)NiA9XfoR{2ji%nco&~-~vs0kJEqp=j5Fpm3h0sfBKnHg-8Cftruo&VRkX``VZAH-ay z`3TOz+1QCs;ZdB0d7grt>qTYk*_Y`V^-=G%q z8#0t-SFrzjXAv?+1FgakCS1K6wIhd7IdTRy;X9}fN=c9wY(QSWd8p_6P|x+F2EKs& z*)=YlNGm1N)jqw-8_w1i8Z@(QsO*0e)j=<+<4;g4e1_2R;WYY1?{h5?B9tSV47>kd z(V!i!rW{e(NQ@wqYhlLsXAFK)D05#V)~Vs1((3M&sP~qbtLXJCBKV>6i%yD?Q@

-t$(;Y?PRC@UpVDMBQcM7l-NqB)Duchm6gP^#5Pr2(MfuOSVA-r zIteQX<&TP9=XyekTdwh&xzRbTB~}qCdiPHf+X-^bFQd372xWAXSVrhrEhL^N+KB>U zF7X(l1XI~WEGDuD<(N*8$_65kx|~y+uFf6EN(BpB(_0FgGt(!7M+51-B~^j+;MiYt WQg_08(uby`GSjij!9c1#GWQ=O72J9N delta 2836 zcmZwIX>3$g7{>8KTPQ=NP@rX1Zd;(TT3Vo%MY<>;7LXk*P%bl57?^g(Sx``%nh=c! zG&q8lKnTG|(GbNUjR}4cFhm6-8i`6ILV^jwDB=f$LgW9LIV61Gr0@LhxyxDJd(Q3o z1-lj}F7?aVZ76YK7;!q=nEe>c<%jaC$C$o&8HeIc)P4EAj2VbyaWvMW?rXvR_!1W4 zTi6>r@FDE9*MGo1#w5%&4jeArvNsIL%QRGNor@20y%E*W7VE310qsV0bPP3sGuRJ* z!~uBSY9289Gll#N#}X{1e^bYS9%#01L7p)?Fdy5khfy7NTE9bO;ty0N@)#X6GNq`D zRN@3&jb*q4)!uPbf2VL1{hJFMJdAfxGZ@8P8hI5KVFQjrFY3P6aWJNkN6a~U{UTOS z&tepe$xKF0nL1lvhijU& z3@b1TXQEzN9jb%**bQ4ynGD(U+ff-ggqqMN{m8#o>zAC+jDNuryoFJzvB}L+#ANsrU*`$IorO3&&{xSCfYZ zF8I*JV_1*<>0Oywj+)6RO${LsZAS0Ky8M6n0%KrPZF zvfj)g)V4c;+NNLG`h}6?Un9B7iEelsRqsLv3wfb@0?ZUt2XjyZbx|{V0X3s{P>bsX zs>9#V!7f`L&Pr8gs!(fZDQe(5%gDbP=-|ZTcotbdrhvTafeEM^8&DmuN7^(mBU{{b z*z=zuV>TC11G|k{8-w^qpxrSG)y_&(`!Upnr|JDGl`0y!7Kln?hV<`je(MQkW)%@2 zRHhItf%L$a;~Js|LEB~)p@FEZCgQ|1s!-+<^U_DWYAvvPi&l0Mq1lCr7@;zs&?;X> z%pevLO9+){hID3%?eQGzM$}@}4!gGmsjQ&?^vbQK@&ut2s$>yLm-esHr&2+zC7vX- z7VcNp+mnT;^`KXHZ_z7J(YDlUn6CY=_qvo&(U(r2Ppwv!bp(svJWD)9Y#{20nZ!!M zOX%CcvN73&KD8=-!c8A#{(()h$1Dp|Lue6th~D&{-lNUPCqMl^U@F!UDvJp10BxsD zL@D7T?v`8*dJ+!NLa0QDR-!x6msm__+l7c;gsJuU9M@^}Kj%b~FM3LcZ18(GInAMn z<8F2XL3dry@5ICFBd*V%+UGf$Q{={Dq4Dvs&yD#b&W!`_?crx{TXJ6hiX1l_j;8kI z&&ux68j1y)x1@e5IG)v~F&cBdn^rrG5x+MO_9tsc_D^jeP@Xj=+2JhmZw^G=h!b?9 zj_ZxZ-C$s=>kWij{ZYpkh=xP00R|9F9V@!-nRw#>Pt@MM%cmhSmX=coV*zi-@%f$l z(D+c;sSk$YzVyhFdz_tl;h-CHnNN!wP4zB5lI=;4E#P${siPyV-gkJ(jb(YsU1c@@ E13dFYIRF3v diff --git a/pkg/i18n/locales/es.po b/pkg/i18n/locales/es.po index 3ee15eef..667985dd 100644 --- a/pkg/i18n/locales/es.po +++ b/pkg/i18n/locales/es.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: EMAIL\n" -"POT-Creation-Date: 2025-10-18 16:03-0400\n" +"POT-Creation-Date: 2025-10-19 15:32+0200\n" "PO-Revision-Date: 2025-09-04 08:14+0000\n" "Last-Translator: chasqui \n" "Language-Team: Spanish [flags]" msgstr "verificar [flags]" -#: cli/updater/updater.go:548 -msgid "check for major updates" -msgstr "" - #: cli/app/deploy.go:94 cli/app/undeploy.go:57 cli/app/upgrade.go:440 #, c-format msgid "checking whether %s is already deployed" @@ -2590,14 +2514,9 @@ msgstr "" #. translators: `abra recipe diff` aliases. use a comma separated list of aliases #. with no spaces in between #: cli/app/backup.go:73 cli/app/deploy.go:29 cli/recipe/diff.go:16 -#: cli/updater/updater.go:491 msgid "d" msgstr "" -#: cli/updater/updater.go:490 -msgid "debug" -msgstr "" - #: cli/app/secret.go:326 #, c-format msgid "deleted %s successfully from local pass store" @@ -2765,28 +2684,6 @@ msgstr "" msgid "don't forget to run 'sudo mandb'" msgstr "" -#: cli/updater/updater.go:384 -#, c-format -msgid "don't update %s due to chaos deployment" -msgstr "" - -#: cli/updater/updater.go:394 -#, c-format -msgid "" -"don't update %s due to disabled auto updates or missing ENABLE_AUTO_UPDATE " -"env" -msgstr "" - -#: cli/updater/updater.go:374 -#, c-format -msgid "don't update %s due to missing recipe name" -msgstr "" - -#: cli/updater/updater.go:404 -#, c-format -msgid "don't update %s due to no new version" -msgstr "" - #. translators: `app backup download` command #: cli/app/backup.go:77 msgid "download [flags]" @@ -3038,11 +2935,6 @@ msgstr "" msgid "failed to create volume %s on %s: %s" msgstr "πŸ₯· Genera secretos (contraseΓ±as) automΓ‘ticamente πŸ€–" -#: cli/updater/updater.go:264 -#, c-format -msgid "failed to determine deployed version of %s" -msgstr "" - #: pkg/upstream/stack/remove.go:239 #, c-format msgid "failed to get tasks: %w" @@ -3210,11 +3102,6 @@ msgstr "" msgid "filter by recipe" msgstr "" -#: cli/updater/updater.go:215 -#, c-format -msgid "for %s read env %s with value: %s from docker service" -msgstr "" - #: cli/app/deploy.go:401 cli/app/remove.go:162 cli/app/rollback.go:349 #: cli/app/upgrade.go:459 cli/app/volume.go:216 cli/recipe/fetch.go:137 msgid "force" @@ -3437,7 +3324,6 @@ msgstr "" #: cli/app/restart.go:164 cli/app/restore.go:140 cli/app/secret.go:571 #: cli/app/secret.go:611 cli/app/secret.go:635 cli/app/secret.go:643 #: cli/catalogue/catalogue.go:320 cli/recipe/lint.go:139 -#: cli/updater/updater.go:540 msgid "ignore uncommitted recipes changes" msgstr "" @@ -3618,16 +3504,6 @@ msgstr "" msgid "invalid version %s specified" msgstr "" -#. translators: `kadabra` binary name -#: cli/updater/updater.go:470 -msgid "kadabra [cmd] [flags]" -msgstr "" - -#: cli/updater/updater.go:484 -#, c-format -msgid "kadabra version %s, commit %s" -msgstr "" - #. translators: `abra app logs` aliases. use a comma separated list of aliases with #. no spaces in between #. translators: `abra recipe lint` aliases. use a comma separated list of @@ -3770,7 +3646,7 @@ msgstr "plataformas" #: cli/app/list.go:323 cli/app/move.go:34 cli/app/ps.go:205 #: cli/app/secret.go:553 cli/app/secret.go:649 cli/recipe/list.go:104 #: cli/recipe/upgrade.go:376 cli/recipe/version.go:139 cli/run.go:152 -#: cli/server/list.go:106 cli/updater/updater.go:546 +#: cli/server/list.go:106 msgid "m" msgstr "" @@ -3787,7 +3663,7 @@ msgstr "" #: cli/internal/recipe.go:48 cli/internal/recipe.go:66 #: cli/internal/recipe.go:80 cli/recipe/release.go:656 cli/recipe/sync.go:279 -#: cli/recipe/upgrade.go:351 cli/updater/updater.go:545 +#: cli/recipe/upgrade.go:351 msgid "major" msgstr "" @@ -3833,10 +3709,6 @@ msgstr "" msgid "missing arguments [secret]/[version] or '--all'" msgstr "" -#: cli/updater/updater.go:116 -msgid "missing arguments or --all/-a flag" -msgstr "" - #: pkg/secret/secret.go:131 #, c-format msgid "missing version for secret? (%s)" @@ -3860,10 +3732,7 @@ msgstr "" #. no spaces in between #. translators: `abra recipe new` aliases. use a comma separated list of #. aliases with no spaces in between -#. translators: `kadabra notify` aliases. use a comma separated list of aliases -#. with no spaces in between -#: cli/app/new.go:48 cli/recipe/new.go:36 cli/updater/updater.go:36 -#: cli/updater/updater.go:499 +#: cli/app/new.go:48 cli/recipe/new.go:36 msgid "n" msgstr "n" @@ -3944,7 +3813,7 @@ msgstr "" msgid "no %s exists, skipping reading gitignore paths" msgstr "" -#: cli/updater/updater.go:168 pkg/app/compose.go:87 +#: pkg/app/compose.go:87 #, c-format msgid "no %s label found for %s" msgstr "" @@ -3975,11 +3844,6 @@ msgstr "" msgid "no available upgrades" msgstr "" -#: cli/updater/updater.go:237 -#, c-format -msgid "no available upgrades for %s" -msgstr "" - #: cli/internal/backup.go:26 msgid "no backupbot discovered, is it deployed?" msgstr "" @@ -4026,11 +3890,6 @@ msgid "" "tags to see all anyway)" msgstr "" -#: cli/updater/updater.go:286 -#, fuzzy, c-format -msgid "no published releases for %s in the recipe catalogue?" -msgstr "TRANSLATE THIS FUCKING SHIT ALREADY" - #: cli/internal/validate.go:64 #, c-format msgid "no recipe '%s' exists?" @@ -4134,10 +3993,6 @@ msgstr "" msgid "no-domain-checks" msgstr "" -#: cli/updater/updater.go:498 -msgid "no-input" -msgstr "" - #: cli/app/run.go:109 msgid "no-tty" msgstr "" @@ -4172,11 +4027,6 @@ msgstr "" msgid "nothing found in stack: %s" msgstr "" -#. translators: `notify` command -#: cli/updater/updater.go:41 -msgid "notify [flags]" -msgstr "notificar [flags]" - #: cli/app/backup.go:329 msgid "number of retry attempts" msgstr "" @@ -4691,11 +4541,6 @@ msgstr "" msgid "retries" msgstr "" -#: cli/updater/updater.go:252 -#, c-format -msgid "retrieve deployed version whether %s is already deployed" -msgstr "" - #: cli/internal/backup.go:29 #, c-format msgid "retrieved %s as backup enabled service" @@ -4975,8 +4820,8 @@ msgstr "" #: cli/recipe/upgrade.go:228 #, c-format msgid "" -"service %s is at version %s, but pinned to %s, please correct your " -"compose.yml file manually!" +"service %s is at version %s, but pinned to %s, please correct your compose." +"yml file manually!" msgstr "" #: cli/recipe/upgrade.go:224 @@ -5051,7 +4896,7 @@ msgstr "" msgid "show apps of a specific server" msgstr "" -#: cli/run.go:193 cli/updater/updater.go:493 +#: cli/run.go:193 msgid "show debug messages" msgstr "" @@ -5339,7 +5184,7 @@ msgstr "" msgid "tmpfs options are incompatible with type volume" msgstr "" -#: cli/run.go:201 cli/updater/updater.go:501 +#: cli/run.go:201 msgid "toggle non-interactive mode" msgstr "" @@ -5370,12 +5215,10 @@ msgstr "" #. translators: `abra recipe upgrade` aliases. use a comma separated list of #. aliases with no spaces in between -#. translators: `kadabra upgrade` aliases. use a comma separated list of aliases with -#. no spaces in between #. translators: `abra upgrade` aliases. use a comma separated list of aliases with #. no spaces in between #: cli/app/cmd.go:269 cli/app/run.go:118 cli/recipe/upgrade.go:42 -#: cli/updater/updater.go:81 cli/upgrade.go:17 +#: cli/upgrade.go:17 msgid "u" msgstr "" @@ -5718,10 +5561,6 @@ msgstr "" msgid "up" msgstr "" -#: cli/updater/updater.go:556 -msgid "update all deployed apps" -msgstr "" - #: pkg/upstream/stack/stack.go:473 #, c-format msgid "updating %s" @@ -5737,11 +5576,6 @@ msgstr "" msgid "upgrade" msgstr "" -#: cli/updater/updater.go:442 -#, c-format -msgid "upgrade %s (%s) to version %s" -msgstr "" - #. translators: `app upgrade` command #: cli/app/upgrade.go:33 msgid "upgrade [version] [flags]" @@ -5752,11 +5586,6 @@ msgstr "actualizar [version] [flags]" msgid "upgrade [flags]" msgstr "actualizar [flags]" -#. translators: `app upgrade` command -#: cli/updater/updater.go:86 -msgid "upgrade [[stack] [recipe] | --all] [flags]" -msgstr "actualizar [[stack] [recipe] | --all] [flags]" - #. translators: `upgrade` command #: cli/upgrade.go:22 msgid "upgrade [flags]" @@ -6061,5 +5890,24 @@ msgstr "" msgid "{name: %s, " msgstr "" +#~ msgid "Check for available upgrades" +#~ msgstr "πŸ“¨ Revisar las actualizaciones disponibles" + +#~ msgid "The Co-op Cloud auto-updater πŸ€– πŸš€" +#~ msgstr "πŸ“¨ Actualizador automΓ‘tico de Co-op Cloud πŸ€– πŸš€" + +#~ msgid "Upgrade apps" +#~ msgstr "πŸ“¨ Actualizar plataformas πŸš€" + +#, fuzzy, c-format +#~ msgid "no published releases for %s in the recipe catalogue?" +#~ msgstr "TRANSLATE THIS FUCKING SHIT ALREADY" + +#~ msgid "notify [flags]" +#~ msgstr "notificar [flags]" + +#~ msgid "upgrade [[stack] [recipe] | --all] [flags]" +#~ msgstr "actualizar [[stack] [recipe] | --all] [flags]" + #~ msgid "Undeploy an app" #~ msgstr "πŸ“₯ Desarma una plataforma πŸš€ (los datos πŸ“¦ persisten)"