Files
kopia/cli/command_repository.go
Shikhar Mall 26e6f59b2b feat(cli): New Upgrade CLI / Switch to Format Version 3 (upgrade coordination) (#1818)
* kopia format upgrade lock

* Update cli/command_repository_set_parameters_test.go

Co-authored-by: Ali Dowair <adowair@umich.edu>

* Update cli/command_repository_upgrade.go

Co-authored-by: Ali Dowair <adowair@umich.edu>

* Update cli/command_repository_upgrade.go

Co-authored-by: Ali Dowair <adowair@umich.edu>

* pr feedback

* pr feedback

* add a min drain time check

* env var for io-drain-timeout

* fix: add more doctext around upgrade phases

* build: wrap with EnvName

* add experimental warning

* protect upgrade cli behind env varible

* fix conflicts after relocating the upgrade lock

* generalize the command args

* drop certain features as per feedback

* sub-divide the upgrade command into begin and rollback

* Update cli/command_repository_upgrade.go

Co-authored-by: Julio Lopez <1953782+julio-lopez@users.noreply.github.com>

* Update cli/command_repository_upgrade.go

Co-authored-by: Julio Lopez <1953782+julio-lopez@users.noreply.github.com>

* missing return

* rename force flag to allow-unsafe-upgrade

Co-authored-by: Shikhar Mall <shikhar@kasten.io>
Co-authored-by: Ali Dowair <adowair@umich.edu>
Co-authored-by: Shikhar Mall <small@kopia.io>
Co-authored-by: Julio Lopez <1953782+julio-lopez@users.noreply.github.com>
2022-07-27 16:23:45 -07:00

34 lines
1.1 KiB
Go

package cli
type commandRepository struct {
connect commandRepositoryConnect
create commandRepositoryCreate
disconnect commandRepositoryDisconnect
repair commandRepositoryRepair
setClient commandRepositorySetClient
setParameters commandRepositorySetParameters
changePassword commandRepositoryChangePassword
status commandRepositoryStatus
syncTo commandRepositorySyncTo
throttle commandRepositoryThrottle
validateProvider commandRepositoryValidateProvider
upgrade commandRepositoryUpgrade
}
func (c *commandRepository) setup(svc advancedAppServices, parent commandParent) {
cmd := parent.Command("repository", "Commands to manipulate repository.").Alias("repo")
c.connect.setup(svc, cmd)
c.create.setup(svc, cmd)
c.disconnect.setup(svc, cmd)
c.repair.setup(svc, cmd)
c.setClient.setup(svc, cmd)
c.setParameters.setup(svc, cmd)
c.status.setup(svc, cmd)
c.syncTo.setup(svc, cmd)
c.throttle.setup(svc, cmd)
c.changePassword.setup(svc, cmd)
c.validateProvider.setup(svc, cmd)
c.upgrade.setup(svc, cmd)
}