DEV Community

CrazyMax
CrazyMax

Posted on

Diun 3.0 available with 3 new notification providers

GitHub logo crazy-max / diun

🔔 Receive notifications when an image is updated on a Docker registry

GitHub release Total downloads Build Status Docker Stars Docker Pulls
Go Report Code Quality Codecov Become a sponsor Donate Paypal

About

Diun is a CLI application written in Go to receive notifications when a Docker image is updated on a Docker registry. With Go, this app can be used across many platforms and architectures. This support includes Linux, FreeBSD, macOS and Windows on architectures like amd64, i386, ARM and others.

Features

  • Allow to watch a Docker repository and report new tags
  • Include and exclude filters with regular expression for tags
  • Internal cron implementation through go routines
  • Worker pool to parallelize analyses
  • Allow overriding image os and architecture
  • Multi providers available like Docker, Swarm, File...
  • Get notified through Gotify, Mail, Slack, Telegram and more
  • Enhanced logging
  • Timezone can be changed
  • Official Docker image available

Documentation

How can I help?

All kinds of contributions are welcome 🙌! The most basic way…

Diun 3.0 is now available with 3 new notification providers and some enhancements.

Amqp

You can send notifications to any amqp compatible server. The JSON response will look like this:

{
  "diun_version": "0.3.0",
  "status": "new",
  "provider": "file",
  "image": "docker.io/crazymax/swarm-cronjob:0.2.1",
  "mime_type": "application/vnd.docker.distribution.manifest.v2+json",
  "digest": "sha256:5913d4b5e8dc15430c2f47f40e43ab2ca7f2b8df5eee5db4d5c42311e08dfb79",
  "created": "2019-01-24T10:26:49.152006005Z",
  "platform": "linux/amd64"
}

Script

You can also use a script or program as a notification provider. Following environment variables are passed to the process and will look like this:

DIUN_VERSION=3.0.0
DIUN_ENTRY_STATUS=new
DIUN_ENTRY_PROVIDER=file
DIUN_ENTRY_IMAGE=docker.io/crazymax/diun:latest
DIUN_ENTRY_MIMETYPE=application/vnd.docker.distribution.manifest.list.v2+json
DIUN_ENTRY_DIGEST=sha256:216e3ae7de4ca8b553eb11ef7abda00651e79e537e85c46108284e5e91673e01
DIUN_ENTRY_CREATED=2020-03-26 12:23:56 +0000 UTC
DIUN_ENTRY_PLATFORM=linux/adm64

Microsoft Teams

And also send notifications to your Teams team-channel using an incoming webhook URL:

Microsoft Teams notification

Let me know if you have any questions or if you are waiting for new features!


Support this project by becoming a sponsor on GitHub 👏 or by making a Paypal donation to ensure this journey continues indefinitely! 🚀

Thanks again for your support, it is much appreciated! 🙏

Top comments (0)