@@ -49,7 +49,7 @@ func (v VaultCli) lock() osx.Lock[VaultCliLock] {
4949 return osx .NewLock (v .dir ()+ "/lock/create.yml" , func () (VaultCliLock , error ) { return VaultCliLock {DownloadURL : v .DownloadURL }, nil })
5050}
5151
52- func (v VaultCli ) prepare () error {
52+ func (v VaultCli ) Prepare () error {
5353 lock := v .lock ()
5454 check , err := lock .State ()
5555 if err != nil {
@@ -60,7 +60,7 @@ func (v VaultCli) prepare() error {
6060 return nil
6161 }
6262 log .Infof ("preparing new Vault '%s'" , v .DownloadURL )
63- err = v .install ()
63+ err = v .prepare ()
6464 if err != nil {
6565 return err
6666 }
@@ -77,7 +77,10 @@ func (v VaultCli) archiveFile() string {
7777 return pathx .Canonical (fmt .Sprintf ("%s/%s" , v .dir (), filepath .Base (v .DownloadURL )))
7878}
7979
80- func (v VaultCli ) install () error {
80+ func (v VaultCli ) prepare () error {
81+ if err := pathx .DeleteIfExists (v .dir ()); err != nil {
82+ return err
83+ }
8184 archiveFile := v .archiveFile ()
8285 log .Infof ("downloading Vault from URL '%s' to file '%s'" , v .DownloadURL , archiveFile )
8386 if err := httpx .DownloadOnce (v .DownloadURL , archiveFile ); err != nil {
@@ -94,8 +97,8 @@ func (v VaultCli) install() error {
9497}
9598
9699func (v VaultCli ) CommandShell (args []string ) error {
97- if err := v .prepare (); err != nil {
98- return fmt .Errorf ("cannot run Vault command: %w" , err )
100+ if err := v .Prepare (); err != nil {
101+ return fmt .Errorf ("cannot prepare Vault before running command: %w" , err )
99102 }
100103 cmd := execx .CommandShell (args )
101104 cmd .Dir = v .execDir ()
0 commit comments