| 85 | return nil |
| 86 | } |
| 87 | func (self *BaseRPC) Uninstall(opts *ActionOpts, success *bool) error { |
| 88 | containerId := opts.ContainerId |
| 89 | |
| 90 | log.WithFields(log.Fields{ |
| 91 | "container_id": containerId, |
| 92 | "name": self.base.GetName(), |
| 93 | }).Info("Removing container") |
| 94 | |
| 95 | err := self.base.Uninstall(&AppConfig{ContainerId: containerId}) |
| 96 | |
| 97 | if err != nil { |
| 98 | return err |
| 99 | } |
| 100 | *success = true |
| 101 | |
| 102 | if len(opts.DeleteFolders) > 0 { |
| 103 | for _, folder := range opts.DeleteFolders { |
| 104 | log.WithFields(log.Fields{"folder": folder}).Info("Removing folder") |
| 105 | err := os.RemoveAll(folder) |
| 106 | if err != nil { |
| 107 | log.Infof("Could not delete folder '%s': '%s'", folder, err) |
| 108 | } |
| 109 | } |
| 110 | } |
| 111 | |
| 112 | log.WithFields(log.Fields{ |
| 113 | "container_id": containerId, |
| 114 | "name": self.base.GetName(), |
| 115 | }).Info("Container removed") |
| 116 | |
| 117 | return nil |
| 118 | } |