All checks were successful
Reply to a message containing a link with !gallerydl (or send it with a link inline) to download the media via the gallery-dl CLI and have the files posted back as a reply. Restricted to an allowed_users allowlist (comma-separated, per-channel/global config); no one is allowed by default. - Add media support to the platform layer: model.Message.Files, ActionSendMedia, and Platform.SendMedia. Telegram uploads via multipart (sendPhoto/sendVideo/sendDocument, 50MB cap); Slack returns unsupported for now. - Add internal/shell (os/exec wrapper) and internal/urlutil (URL extraction) helpers with tests. - Dispatch ActionSendMedia in app and clean up the temp download dir. - Admin config UI for allowed_users / gallery_dl_path; docs entry. - Containerfile: base on alpine and install gallery-dl + ffmpeg (was scratch); release workflow sets up QEMU + Buildx for cross-arch image builds.
15 lines
580 B
Docker
15 lines
580 B
Docker
FROM alpine:3.23
|
|
LABEL maintainer="Felipe Martin <me@fmartingr.com>"
|
|
LABEL org.opencontainers.image.source="https://git.nakama.town/fmartingr/butterrobot"
|
|
|
|
# ca-certificates/tzdata for the bot; gallery-dl (+ ffmpeg for video muxing) for
|
|
# the util.gallerydl plugin, which shells out to the gallery-dl CLI.
|
|
RUN apk add --no-cache ca-certificates tzdata gallery-dl ffmpeg \
|
|
&& addgroup -g 1000 butterrobot \
|
|
&& adduser -u 1000 -G butterrobot -s /bin/sh -D butterrobot
|
|
|
|
COPY butterrobot /usr/local/bin/butterrobot
|
|
|
|
USER butterrobot
|
|
|
|
ENTRYPOINT ["/usr/local/bin/butterrobot"]
|