C0: remove containers/devpi/ build artifact
Devpi now runs natively on indri (uv venv via ansible role), so the Dagger container build at containers/devpi/ is unused. Removing it. Also updated dagger.md examples to use 'miniflux' as the example container-name argument. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
14ca0160ba
commit
a529d60f60
4 changed files with 5 additions and 91 deletions
|
|
@ -1,56 +0,0 @@
|
||||||
"""devpi PyPI server and caching proxy — native Dagger build.
|
|
||||||
|
|
||||||
Single-stage build: install devpi-server and devpi-web into a Python slim image.
|
|
||||||
"""
|
|
||||||
|
|
||||||
import dagger
|
|
||||||
from dagger import dag
|
|
||||||
|
|
||||||
from blumeops.containers import oci_labels
|
|
||||||
|
|
||||||
VERSION = "6.19.3"
|
|
||||||
|
|
||||||
DEVPI_WEB_VERSION = "5.0.2"
|
|
||||||
PYTHON_BASE = "python:3.12-slim"
|
|
||||||
|
|
||||||
|
|
||||||
async def build(src: dagger.Directory) -> dagger.Container:
|
|
||||||
ctr = (
|
|
||||||
dag.container()
|
|
||||||
.from_(PYTHON_BASE)
|
|
||||||
.with_exec(
|
|
||||||
[
|
|
||||||
"pip",
|
|
||||||
"install",
|
|
||||||
"--no-cache-dir",
|
|
||||||
f"devpi-server=={VERSION}",
|
|
||||||
f"devpi-web=={DEVPI_WEB_VERSION}",
|
|
||||||
]
|
|
||||||
)
|
|
||||||
.with_exec(
|
|
||||||
[
|
|
||||||
"useradd",
|
|
||||||
"-r",
|
|
||||||
"-u",
|
|
||||||
"1000",
|
|
||||||
"devpi",
|
|
||||||
]
|
|
||||||
)
|
|
||||||
.with_exec(["mkdir", "-p", "/devpi"])
|
|
||||||
.with_exec(["chown", "devpi:devpi", "/devpi"])
|
|
||||||
.with_file(
|
|
||||||
"/usr/local/bin/start.sh",
|
|
||||||
src.file("containers/devpi/start.sh"),
|
|
||||||
)
|
|
||||||
.with_exec(["chmod", "+x", "/usr/local/bin/start.sh"])
|
|
||||||
.with_user("devpi")
|
|
||||||
.with_workdir("/devpi")
|
|
||||||
.with_exposed_port(3141)
|
|
||||||
.with_entrypoint(["/usr/local/bin/start.sh"])
|
|
||||||
)
|
|
||||||
return oci_labels(
|
|
||||||
ctr,
|
|
||||||
title="devpi",
|
|
||||||
description="devpi PyPI server and caching proxy",
|
|
||||||
version=VERSION,
|
|
||||||
)
|
|
||||||
|
|
@ -1,31 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
set -e
|
|
||||||
|
|
||||||
SERVERDIR="${DEVPI_SERVERDIR:-/devpi}"
|
|
||||||
HOST="${DEVPI_HOST:-0.0.0.0}"
|
|
||||||
# Note: Can't use DEVPI_PORT - Kubernetes auto-sets it for service discovery
|
|
||||||
PORT="${DEVPI_LISTEN_PORT:-3141}"
|
|
||||||
OUTSIDE_URL="${DEVPI_OUTSIDE_URL:-}"
|
|
||||||
|
|
||||||
# Check if devpi is initialized
|
|
||||||
if [ ! -f "$SERVERDIR/.serverversion" ]; then
|
|
||||||
echo "Initializing devpi server..."
|
|
||||||
|
|
||||||
if [ -z "$DEVPI_ROOT_PASSWORD" ]; then
|
|
||||||
echo "ERROR: DEVPI_ROOT_PASSWORD environment variable must be set for initialization"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
devpi-init --serverdir "$SERVERDIR" --root-passwd "$DEVPI_ROOT_PASSWORD"
|
|
||||||
echo "Devpi initialized successfully"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Build command
|
|
||||||
CMD=(devpi-server --serverdir "$SERVERDIR" --host "$HOST" --port "$PORT")
|
|
||||||
|
|
||||||
if [ -n "$OUTSIDE_URL" ]; then
|
|
||||||
CMD+=(--outside-url "$OUTSIDE_URL")
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Starting devpi-server..."
|
|
||||||
exec "${CMD[@]}"
|
|
||||||
1
docs/changelog.d/+remove-devpi-container-build.misc.md
Normal file
1
docs/changelog.d/+remove-devpi-container-build.misc.md
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
Removed the now-unused `containers/devpi/` Dagger build artifact. Devpi runs natively on indri via uv venv; the container image is no longer referenced anywhere. Doc examples in `docs/reference/tools/dagger.md` updated to use `miniflux` as the example container name.
|
||||||
|
|
@ -50,16 +50,16 @@ New containers for indri (k8s runner) should use `container.py`. Ringtail contai
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Build a container
|
# Build a container
|
||||||
dagger call build --src=. --container-name=devpi
|
dagger call build --src=. --container-name=miniflux
|
||||||
|
|
||||||
# Drop into container shell for inspection
|
# Drop into container shell for inspection
|
||||||
dagger call build --src=. --container-name=devpi terminal
|
dagger call build --src=. --container-name=miniflux terminal
|
||||||
|
|
||||||
# Debug a failure interactively
|
# Debug a failure interactively
|
||||||
dagger call --interactive build --src=. --container-name=devpi
|
dagger call --interactive build --src=. --container-name=miniflux
|
||||||
|
|
||||||
# Publish a container to zot
|
# Publish a container to zot
|
||||||
dagger call publish --src=. --container-name=devpi --version=v1.1.0
|
dagger call publish --src=. --container-name=miniflux --version=v1.1.0
|
||||||
|
|
||||||
# Build a nix container (no local nix required)
|
# Build a nix container (no local nix required)
|
||||||
dagger call build-nix --src=. --container-name=ntfy export --path=./ntfy.tar.gz
|
dagger call build-nix --src=. --container-name=ntfy export --path=./ntfy.tar.gz
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue