spiegel_podman/cmd/podman/system
Matt Heon b320fbcaff Add migration code for BoltDB to SQLite
This is gated behind a new option in `podman system migrate`,
`--migrate-db`.

The basic logic is simple:
* Podman is already configured to use BoltDB
* Open a new, fresh SQLite database to write into
* Migrate all database contents as they exist in BoltDB, to
  SQLite.
** Do this as simply as possible: grab the object from the old DB
   and write it into the new DB using the standard Add and Save
   functions.
* Set the new database in the Runtime, close the old one.
* Move the old database file so it won't be reused
* Show a warning if the user explicitly configured BoltDB in
  containers.conf

Our ability to test complex migration scenarios is limited, but
this should handle simple migrations easily.

Fixes #27628

Signed-off-by: Matt Heon <matthew.heon@pm.me>
2026-02-05 20:09:37 -05:00
..
connection lint: reenable revive unused-parameter check 2025-10-01 10:42:08 -04:00
check.go lint: reenable revive unused-parameter check 2025-10-01 10:42:08 -04:00
connection.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
context.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
df.go lint: reenable revive unused-parameter check 2025-10-01 10:42:08 -04:00
dial_stdio.go lint: reenable revive unused-parameter check 2025-10-01 10:42:08 -04:00
events.go Switch common, storage and image to monorepo. 2025-09-01 12:33:04 +02:00
info.go lint: reenable revive unused-parameter check 2025-10-01 10:42:08 -04:00
locks.go lint: reenable revive unused-parameter check 2025-10-01 10:42:08 -04:00
migrate.go Add migration code for BoltDB to SQLite 2026-02-05 20:09:37 -05:00
prune.go lint: reenable revive unused-parameter check 2025-10-01 10:42:08 -04:00
renumber.go lint: reenable revive unused-parameter check 2025-10-01 10:42:08 -04:00
reset.go lint: reenable revive unused-parameter check 2025-10-01 10:42:08 -04:00
reset_machine.go Prevents removal of podman.sock file using podman system reset command 2025-03-10 18:44:15 +01:00
reset_machine_unsupported.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
service.go fileperms: newer Go 1.13+ octal literal format 2025-10-16 14:11:29 -04:00
service_abi.go Implement TLS API Support 2025-09-26 09:09:54 -06:00
service_abi_common.go system service: split out cgroups call into linux specific file 2023-12-07 11:26:36 +01:00
service_abi_linux.go Switch common, storage and image to monorepo. 2025-09-01 12:33:04 +02:00
system.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
unshare.go lint: reenable revive unused-parameter check 2025-10-01 10:42:08 -04:00
version.go lint: reenable revive unused-parameter check 2025-10-01 10:42:08 -04:00