Option "diun.notify_on=new" with new digest function from 4.26
GeoCookie opened this issue · 1 comments
Support guidelines
- I've read the support guidelines
I've found a bug and checked that ...
- ... the documentation does not mention anything about my problem
- ... there are no open or closed issues that are related to my problem
Description
I use "diun.notify_on=new" option on all my swarm service. When possible, I use mutable tag for my images.
This way, I handle
- patch updates automatically with a script (no notification is received)
- minor/major updates manually when I receive Diun notifications
Since last Diun update, I am receiving notification when I should not.
For example, I am using Portainer image with tag 5.30. Suppose a patch update is released (4.30.1)
Expected behaviour
Before 4.26 Diun update, I didn't receive notification because of the option "diun.notify_on=new".
Actual behaviour
Since 4.26 update, I receive a notification : portainer:4.26@sha256:.... is available
Maybe this is because of the new digest compare function. The image tag is the same but the digest is different, so Diun considers it as a new version (while it's an update).
I tried using the option "compareDigest: true", with no success. Am I missing something ?
Steps to reproduce
- Enable Diun on my Portainer service
- Add option "diun.notify_on=new"
- Wait for an Portainer image update
- Receive a notification when I should not
Diun version
4.26.0
Docker info
Client: Docker Engine - Community
Version: 24.0.6
Context: default
Debug Mode: false
Plugins:
buildx: Docker Buildx (Docker Inc.)
Version: v0.11.2
Path: /usr/libexec/docker/cli-plugins/docker-buildx
compose: Docker Compose (Docker Inc.)
Version: v2.21.0
Path: /usr/libexec/docker/cli-plugins/docker-compose
Server:
Containers: 34
Running: 32
Paused: 0
Stopped: 2
Images: 32
Server Version: 24.0.6
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Using metacopy: false
Native Overlay Diff: true
userxattr: false
Logging Driver: json-file
Cgroup Driver: systemd
Cgroup Version: 2
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: active
NodeID: rv5qrerz0jxzty99xaothk7g4
Is Manager: true
ClusterID: rgevyfks8e6plshpqb6gvpspq
Managers: 1
Nodes: 1
Default Address Pool: 172.19.0.0/16
SubnetSize: 24
Data Path Port: 4789
Orchestration:
Task History Retention Limit: 5
Raft:
Snapshot Interval: 10000
Number of Old Snapshots to Retain: 0
Heartbeat Tick: 1
Election Tick: 10
Dispatcher:
Heartbeat Period: 5 seconds
CA Configuration:
Expiry Duration: 3 months
Force Rotate: 0
Autolock Managers: false
Root Rotation In Progress: false
Node Address: 192.168.10.203
Manager Addresses:
192.168.10.203:2377
Runtimes: io.containerd.runc.v2 runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 61f9fd88f79f081d64d6fa3bb1a0dc71ec870523
runc version: v1.1.9-0-gccaecfc
init version: de40ad0
Security Options:
apparmor
seccomp
Profile: builtin
cgroupns
Kernel Version: 5.10.0-26-amd64
Operating System: Debian GNU/Linux 11 (bullseye)
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 5.789GiB
Name: wakka.geocookie.lan
ID: W7QE:Z3NZ:M7WF:AZ3O:7KTX:OQB3:UMEA:MX4F:FI5H:XTWW:SJUG:UVQB
Docker Root Dir: /var/lib/docker
Debug Mode: false
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
Docker Compose config
Short example of my portainer stack
portainer:
image: portainer/portainer-ce:5.30
deploy:
labels:
- diun.enable=true
- diun.watch_repo=true
- diun.notify_on=new
- diun.max_tags=10
- diun.sort_tags=semver
- diun.include_tags=^\d+\.\d+\.\d+$$
Logs
I haven't capture the logs with debug level. I will if needed.
Additional info
If possible, I would to disable the digest function, as it was before 4.26
Thank you for your help and for Diun ! :
Hum right I need to look at this, might be a regression that we could mitigate.