Five apps had no app.upstream block, so nothing could ever tell us
when their pins fell behind upstream:
barkd gitlab ark-bitcoin/bark (GitLab-only project)
immich-postgres ghcr immich-app/postgres (image exists only on ghcr.io)
indeedhub-minio github minio/minio
pine-whisper dockerhub rhasspy/wyoming-whisper
lightning-stack manual — no public listing exists for
lightninglabs/lightning-stack anywhere (docker.io,
ghcr.io, github.com all checked), so it is tracked by hand
This adds two fetchers to scripts/check-upstream-releases.py to reach the
first two: latest_gitlab (GitLab releases API; strips the project-name
tag prefix, e.g. bark-0.6.2 -> 0.6.2) and latest_ghcr (anonymous pull
token + tags/list, the same handshake a docker pull performs).
Live-verified after the change:
barkd 0.3.0 -> 0.6.2 (bump gated on ark_client.rs REST compat)
immich-postgres 14-vectorchord0.4.3-pgvectors0.2.0 -> 17-vectorchord0.4.3-pgvector0.8.0
indeedhub-minio RELEASE.2024-11-07T00-52-20Z -> latest (date-opaque: UNCOMPARABLE, shown for hand comparison)
pine-whisper 3.4.1 -> 3.6.0 (tuned-args revision needs re-basing, not just a pin move)
Offline coverage check: 59 apps, 0 untracked.
86 lines
2.3 KiB
YAML
86 lines
2.3 KiB
YAML
app:
|
|
id: lightning-stack
|
|
name: Lightning Stack
|
|
version: 0.12.0
|
|
# No public listing exists for lightninglabs/lightning-stack (checked
|
|
# docker.io, ghcr.io and github.com) — nothing can be queried automatically,
|
|
# so this one is tracked by hand.
|
|
upstream:
|
|
kind: manual
|
|
url: no public listing for lightninglabs/lightning-stack — verify by hand
|
|
description: Complete Lightning Network implementation. Includes LND, CLN, and management tools.
|
|
|
|
container:
|
|
image: lightninglabs/lightning-stack:v0.12.0
|
|
image_signature: cosign://...
|
|
pull_policy: if-not-present
|
|
|
|
dependencies:
|
|
- app_id: bitcoin-core
|
|
version: ">=24.0"
|
|
- storage: 50Gi
|
|
|
|
resources:
|
|
cpu_limit: 4
|
|
memory_limit: 4Gi
|
|
disk_limit: 50Gi
|
|
|
|
security:
|
|
capabilities: [NET_BIND_SERVICE]
|
|
readonly_root: true
|
|
no_new_privileges: true
|
|
user: 1000
|
|
seccomp_profile: default
|
|
network_policy: isolated
|
|
apparmor_profile: lightning-stack
|
|
|
|
ports:
|
|
- host: 9738
|
|
container: 9735
|
|
protocol: tcp # P2P
|
|
auth: none
|
|
auth_rationale: >-
|
|
Lightning p2p. The BOLT-8 noise handshake authenticates and encrypts the channel itself.
|
|
- host: 10010
|
|
container: 10009
|
|
protocol: tcp # gRPC
|
|
auth: none
|
|
auth_rationale: >-
|
|
LND gRPC, authenticated by macaroon over TLS. Remote wallets depend on reaching this directly.
|
|
# Mirrors lnd's 18080 exemption — same LND REST API, same macaroon auth.
|
|
- host: 8091
|
|
container: 8080
|
|
protocol: tcp # REST/Web UI
|
|
auth: none
|
|
auth_rationale: >-
|
|
LND REST, authenticated by macaroon over TLS. A browser login page would break
|
|
Zeus and every non-browser wallet client, exactly as for lnd's 18080.
|
|
|
|
volumes:
|
|
- type: bind
|
|
source: /var/lib/archipelago/lightning-stack
|
|
target: /root/.lightning
|
|
options: [rw]
|
|
|
|
environment:
|
|
- BITCOIND_HOST=bitcoin-core
|
|
- BITCOIND_RPCUSER=${BITCOIN_RPC_USER}
|
|
- BITCOIND_RPCPASS=${BITCOIN_RPC_PASSWORD}
|
|
- NETWORK=mainnet
|
|
|
|
health_check:
|
|
type: http
|
|
endpoint: http://127.0.0.1:8080
|
|
path: /v1/getinfo
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
|
|
bitcoin_integration:
|
|
rpc_access: admin
|
|
sync_required: true
|
|
|
|
lightning_integration:
|
|
channel_management: true
|
|
payment_routing: true
|