Add OCI image labels, issue template config, paths-ignore, and metadata fixes

- Dockerfile: ARG VERSION + OCI labels (title, description, source, licenses, version)
- release.yml: pass VERSION build-arg to all four image builds
- docker-publish.yml: extend paths-ignore to cover community files
- .github/ISSUE_TEMPLATE/config.yml: disable blank issues, link to Discussions and wiki
- README.md: add Getting Help section
- pyproject.toml: expand description; add System Administrators audience classifier

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-13 06:52:52 +00:00
co-authored by Claude Sonnet 4.6
parent 694e9af127
commit 7e90b8e669
6 changed files with 38 additions and 4 deletions
+8
View File
@@ -0,0 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: Question or help request
url: https://github.com/sudolulo/winnow/discussions
about: Ask questions and get help in GitHub Discussions
- name: Wiki / Documentation
url: https://github.com/sudolulo/winnow/wiki
about: Setup, troubleshooting, and FAQ
+4
View File
@@ -6,6 +6,10 @@ on:
paths-ignore:
- "**.md"
- "docs/**"
- "CONTRIBUTING.md"
- "SECURITY.md"
- ".github/ISSUE_TEMPLATE/**"
- ".github/PULL_REQUEST_TEMPLATE.md"
- ".github/workflows/release.yml"
- ".github/workflows/lint.yml"
- ".github/dependabot.yml"
+10 -3
View File
@@ -125,6 +125,7 @@ jobs:
file: ./Dockerfile
platforms: linux/amd64,linux/arm64
push: true
build-args: VERSION=${{ steps.tag.outputs.VERSION }}
cache-from: type=gha,scope=release-gpu
cache-to: type=gha,mode=max,scope=release-gpu
tags: |
@@ -137,8 +138,10 @@ jobs:
context: .
file: ./Dockerfile
platforms: linux/amd64,linux/arm64
build-args: VARIANT=cpu
push: true
build-args: |
VARIANT=cpu
VERSION=${{ steps.tag.outputs.VERSION }}
cache-from: type=gha,scope=release-cpu
cache-to: type=gha,mode=max,scope=release-cpu
tags: |
@@ -151,8 +154,10 @@ jobs:
context: .
file: ./Dockerfile
platforms: linux/amd64
build-args: VARIANT=rocm
push: true
build-args: |
VARIANT=rocm
VERSION=${{ steps.tag.outputs.VERSION }}
cache-from: type=gha,scope=release-rocm
cache-to: type=gha,mode=max,scope=release-rocm
tags: |
@@ -165,8 +170,10 @@ jobs:
context: .
file: ./Dockerfile
platforms: linux/amd64
build-args: VARIANT=intel
push: true
build-args: |
VARIANT=intel
VERSION=${{ steps.tag.outputs.VERSION }}
cache-from: type=gha,scope=release-intel
cache-to: type=gha,mode=max,scope=release-intel
tags: |
+6
View File
@@ -65,6 +65,12 @@ RUN chmod +x /app/entrypoint.sh
FROM base-${TARGETARCH}-${VARIANT} AS runtime
ARG VARIANT=gpu
ARG VERSION=dev
LABEL org.opencontainers.image.title="winnow" \
org.opencontainers.image.description="Selects diverse, high-quality photos from Immich as training data for Frigate face recognition and object classification." \
org.opencontainers.image.source="https://github.com/sudolulo/winnow" \
org.opencontainers.image.licenses="AGPL-3.0-or-later" \
org.opencontainers.image.version="${VERSION}"
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
+8
View File
@@ -229,6 +229,14 @@ Requires Python 3.13+ and [uv](https://astral.sh/uv). An NVIDIA, AMD, or Intel G
---
## Getting Help
- **[GitHub Discussions](https://github.com/sudolulo/winnow/discussions)** — questions, setup help, and general discussion
- **[Wiki](https://github.com/sudolulo/winnow/wiki)** — setup guide, troubleshooting, and FAQ
- **[Issues](https://github.com/sudolulo/winnow/issues)** — bugs and feature requests only
---
## Attribution
Based on [if_curator](https://github.com/ds-sebastian/if_curator) by Sebastian, licensed MIT.
+2 -1
View File
@@ -1,7 +1,7 @@
[project]
name = "winnow"
version = "0.2.13"
description = "Immich to Frigate training sets"
description = "Selects diverse, high-quality photos from Immich as training data for Frigate face recognition and object classification."
license = "AGPL-3.0-or-later"
requires-python = ">=3.13"
authors = [{ name = "Holden Salomon", email = "holden@arch.fyi" }]
@@ -9,6 +9,7 @@ keywords = ["immich", "frigate", "face-recognition", "training-data", "arcface",
classifiers = [
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"Intended Audience :: System Administrators",
"License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)",
"Programming Language :: Python :: 3.13",
"Topic :: Scientific/Engineering :: Image Recognition",