Add Home Assistant Stelloauth app #1

Merged
dennis merged 17 commits from feat/home-assistant-stelloauth-addon into main 2026-09-24 20:19:49 +02:00
2 changed files with 45 additions and 10 deletions
Showing only changes of commit 10728f8b13 - Show all commits
+17 -10
View File
@@ -15,17 +15,24 @@ jobs:
timeout-minutes: 45
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38
with:
python-version: "3.12"
cache: pip
- uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32
with:
go-version: "1.27.1"
- name: Install test dependencies
run: python -m pip install --requirement requirements-dev.txt
- name: Install test toolchain
run: |
set -eu
apk add --no-cache curl python3 py3-pip
curl --fail --location --silent --show-error \
--output /tmp/go1.27.1.linux-amd64.tar.gz \
https://go.dev/dl/go1.27.1.linux-amd64.tar.gz
echo "63d339f0da5ab53635a56f2490a7984dfe12dfcff22ad749f63edaf590168445 /tmp/go1.27.1.linux-amd64.tar.gz" \
| sha256sum -c -
mkdir -p /opt/go1.27.1
tar --extract --gzip --file /tmp/go1.27.1.linux-amd64.tar.gz \
--directory /opt/go1.27.1 --strip-components 1
ln -sf /opt/go1.27.1/bin/go /usr/local/bin/go
go version
python3 -m venv .venv
.venv/bin/pip install --requirement requirements-dev.txt
- name: Validate metadata, patches, and process manager
run: pytest -q
run: .venv/bin/pytest -q
- name: Build amd64 image
run: docker buildx build --platform linux/amd64 --build-arg BUILD_ARCH=amd64 --load --tag homeassistant-stelloauth-addon:test stelloauth
- name: Exercise runtime
+28
View File
@@ -173,6 +173,34 @@ def test_ci_builds_and_loads_only_the_amd64_test_image() -> None:
assert publication_primitive not in workflow
def test_ci_installs_toolchain_without_hosted_toolcache_actions() -> None:
workflow = (ROOT / ".gitea/workflows/ci.yml").read_text(encoding="utf-8")
parsed = yaml.safe_load(workflow)
steps = parsed["jobs"]["validate"]["steps"]
setup_command = next(
step["run"] for step in steps if step.get("name") == "Install test toolchain"
)
assert "actions/setup-python" not in workflow
assert "actions/setup-go" not in workflow
for required_command in (
"apk add --no-cache curl python3 py3-pip",
"go1.27.1.linux-amd64.tar.gz",
"63d339f0da5ab53635a56f2490a7984dfe12dfcff22ad749f63edaf590168445",
"sha256sum -c -",
"python3 -m venv .venv",
".venv/bin/pip install --requirement requirements-dev.txt",
):
assert required_command in setup_command
validation_command = next(
step["run"]
for step in steps
if step.get("name") == "Validate metadata, patches, and process manager"
)
assert validation_command == ".venv/bin/pytest -q"
def test_patch_payloads_disable_git_whitespace_errors() -> None:
result = subprocess.run(
[