Install via CA apps in unraid
Unraid plugin to use open container labels to attempt to extract some changelogs when a new version is detected
At the moment github is only supported, happy to support more just need some good examples, The one exception to this is currently for changelog sources.
It should be noted the quality of the changelog is dependent on whatever is posted on the release by the maintainers.
It is highly suggested to generate a github token, this can be set in the settings page for docker.versions and has instructions on this page.
When a container image is checked for release changes the following steps of things occur
.md
or changelog
Below is a list of working examples, sometimes it will just work out of the box, but adding additional contexts can improve whats shown
For the best experience images try to add following labels;
Label | Description |
---|---|
org.opencontainers.image.created | If missing it will attempt to list the last 6 months of releases found based on type |
otherwise falls back to all found releases | |
org.opencontainers.image.source | Attempts to use this as the source |
if missing checks the unraid template for the image registry and attempts a best guess matchup to a github repo | |
org.opencontainers.image.version | If present will be used as part of the subsetting of releases to be shown |
i.e if contains beta then tries to show other beta releases, vice versa exclude them if not found | |
Also uses the version to try and filter when a repo may manage multiple projects | |
docker.versions.imageSourceType | If provided this will be used as the only place to check for releases |
This can be useful if you want to avoid hitting github for relevant endpoints, or prefer a fallback | |
Applies to org.opencontainers.image.source | |
Options include; | |
changelogs - when set will only be parsed as a changelog, note url must contain .md or changelog |
|
releases - when set will only parse releases | |
tags - when set will only parse tags | |
commits - when set will only parse commits | |
disabled - when set it will just skip source entirely | |
docker.versions.source | Same as org.opencontainers.image.source |
but is used to collect a secondary list of releases | |
If the primary list fails to find any items then this secondary list is used as the primary | |
This is useful When the container is hosted external to the actual program source | |
example if org.opencontainers.image.source is https://github.com/linuxserver/docker-sonarr |
|
you can also provide docker.versions.source ashttps://github.com/Sonarr/Sonarr |
|
it will do its best to match up a secondary change with a primary change | |
You can provide this as csv to add additional sources (Experimental) | |
docker.versions.sourceType | Same as docker.versions.imageSourceType |
but applies to docker.versions.source | |
This also works in the same way and is expected to be provided as csv lining up to the source its applicable to | |
docker.versions.tagIgnorePrefixes | csv of terms used exclude certain releases |
i.e if you provide apple,banana if either of these are found in the title of the release it will not be shown |
If a container is missing opencontainers labels suggest to the maintainer to add them an easy way to implement the labels is via this github action i.e
- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: ghcr.io/${{ github.repository }}:latest
- name: Build and push
uses: docker/build-push-action@v4
with:
push: true
tags: ghcr.io/${{ github.repository }}:latest
labels: ${{ steps.meta.outputs.labels }}
Below is the current matching regex's for changelogs
below are a few examples of what can happen
All Labels
No labels, no guess
No labels, successful guess
No Releases, fallback to using tags
Using Secondary Source for changelogs
when duplicated changelogs are detected