Skip to content

Commit 87a53e5

Browse files
committed
Add option to retain user data and update configs accordingly
Introduced a `keep-user-data` flag in the configuration to allow retaining user data directories when shutting down instances. Adjusted logic in `main.go` to respect this new setting, and updated `main.yaml` with default values. Commented out unused adapter configurations for better clarity.
1 parent 1f4f908 commit 87a53e5

File tree

3 files changed

+19
-16
lines changed

3 files changed

+19
-16
lines changed

internal/config/config.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ type AppConfigBrowser struct {
2222
FingerprintChromiumPath string `yaml:"fingerprint-chromium-path"`
2323
Args []string `yaml:"args"`
2424
UserDataDir string `yaml:"user-data-dir,omitempty"`
25+
KeepUserData bool `yaml:"keep-user-data"`
2526
ProxyURL string `yaml:"proxy-url"`
2627
}
2728
type AppConfigRunner struct {

main.go

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -271,25 +271,27 @@ func main() {
271271
log.Debugf("Error stopping API server: %v", err)
272272
}
273273

274-
log.Debugf("Waiting for remove user data dir...")
275-
time.Sleep(2 * time.Second)
276-
277-
baseUserDataDir := cfg.Browser.UserDataDir
278-
if cfg.InstanceAlone {
279-
for i := 0; i < len(cfg.Instance); i++ {
280-
userDataDir := path.Join(baseUserDataDir, cfg.Instance[i].Name)
281-
log.Debugf("remove user data dir: %s", userDataDir)
282-
err = os.RemoveAll(userDataDir)
274+
if !cfg.Browser.KeepUserData {
275+
log.Debugf("Waiting for remove user data dir...")
276+
time.Sleep(2 * time.Second)
277+
278+
baseUserDataDir := cfg.Browser.UserDataDir
279+
if cfg.InstanceAlone {
280+
for i := 0; i < len(cfg.Instance); i++ {
281+
userDataDir := path.Join(baseUserDataDir, cfg.Instance[i].Name)
282+
log.Debugf("remove user data dir: %s", userDataDir)
283+
err = os.RemoveAll(userDataDir)
284+
if err != nil {
285+
log.Errorf("remove user data dir failed: %v", err)
286+
}
287+
}
288+
} else {
289+
log.Debugf("remove user data dir: %s", baseUserDataDir)
290+
err = os.RemoveAll(baseUserDataDir)
283291
if err != nil {
284292
log.Errorf("remove user data dir failed: %v", err)
285293
}
286294
}
287-
} else {
288-
log.Debugf("remove user data dir: %s", baseUserDataDir)
289-
err = os.RemoveAll(baseUserDataDir)
290-
if err != nil {
291-
log.Errorf("remove user data dir failed: %v", err)
292-
}
293295
}
294296

295297
log.Debugf("Cleanup completed. Exiting...")

runner

Submodule runner updated 1 file

0 commit comments

Comments
 (0)