summaryrefslogtreecommitdiff
path: root/pkg/domain
diff options
context:
space:
mode:
authorValentin Rothberg <rothberg@redhat.com>2021-07-15 11:27:25 +0200
committerValentin Rothberg <rothberg@redhat.com>2021-07-15 11:39:50 +0200
commit59f31d86acdf54019b081ca86340d5c33dbcf3b9 (patch)
tree3b243e70c88bb03880d6f1fc459d5f1d57e07cce /pkg/domain
parent1568247ec8fa0c1a23bbd4631c1ea2fcfd85e281 (diff)
downloadpodman-59f31d86acdf54019b081ca86340d5c33dbcf3b9.tar.gz
podman-59f31d86acdf54019b081ca86340d5c33dbcf3b9.tar.bz2
podman-59f31d86acdf54019b081ca86340d5c33dbcf3b9.zip
auto-update: add --dry-run
Add a --dry-run flag to `podman auto-update` which will look for new images but won't perform any pull or restart any service or container. The "UPDATED" column will now indicate the availability of a newer image via "pending". ``` $ podman auto-update --dry-run UNIT CONTAINER IMAGE POLICY UPDATED container-test.service 08fd34e533fd (test) localhost:5000/busybox registry false ``` Fixes: #9949 Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
Diffstat (limited to 'pkg/domain')
-rw-r--r--pkg/domain/entities/auto-update.go8
-rw-r--r--pkg/domain/infra/abi/auto-update.go6
2 files changed, 7 insertions, 7 deletions
diff --git a/pkg/domain/entities/auto-update.go b/pkg/domain/entities/auto-update.go
index d74462b86..eed617bf8 100644
--- a/pkg/domain/entities/auto-update.go
+++ b/pkg/domain/entities/auto-update.go
@@ -4,6 +4,10 @@ package entities
type AutoUpdateOptions struct {
// Authfile to use when contacting registries.
Authfile string
+ // Only check for but do not perform any update. If an update is
+ // pending, it will be indicated in the Updated field of
+ // AutoUpdateReport.
+ DryRun bool
}
// AutoUpdateReport contains the results from running auto-update.
@@ -18,7 +22,7 @@ type AutoUpdateReport struct {
Policy string
// SystemdUnit running a container configured for auto updates.
SystemdUnit string
- // Indicates whether the image was updated and the container (and
- // systemd unit) restarted.
+ // Indicates the update status: true, false, failed, pending (see
+ // DryRun).
Updated string
}
diff --git a/pkg/domain/infra/abi/auto-update.go b/pkg/domain/infra/abi/auto-update.go
index daa882ecf..b98ee1cb2 100644
--- a/pkg/domain/infra/abi/auto-update.go
+++ b/pkg/domain/infra/abi/auto-update.go
@@ -8,9 +8,5 @@ import (
)
func (ic *ContainerEngine) AutoUpdate(ctx context.Context, options entities.AutoUpdateOptions) ([]*entities.AutoUpdateReport, []error) {
- // Convert the entities options to the autoupdate ones. We can't use
- // them in the entities package as low-level packages must not leak
- // into the remote client.
- autoOpts := autoupdate.Options{Authfile: options.Authfile}
- return autoupdate.AutoUpdate(ctx, ic.Libpod, autoOpts)
+ return autoupdate.AutoUpdate(ctx, ic.Libpod, options)
}