fix: three deploy failures from run #1424 #369

Merged
guettlibot merged 1 commits from refs/pull/369/head into main 2026-06-03 19:23:14 +00:00
guettlibot commented 2026-06-03 18:00:18 +00:00 (Migrated from codeberg.org)

Summary

Fixes three distinct failures from CI deploy run #1424 and concurrent website update failures.

  • Play Store job: pip install google-auth requests fails on Ubuntu 24.04 with PEP 668. Fixed by using python3 -m venv for an isolated install.
  • SSH key error (APK, Linux, website jobs): All SSH/rsync steps fail with Load key "/root/.ssh/id_ed25519": error in libcrypto inside the Dagger Alpine 3.21 container. This is the first time these jobs actually ran (all previous deploy runs had every job skipped). Two fixes:
    • setup_dagger_remote.sh: export_secret was appending an extra trailing newline to values (like SSH private keys) that already end with \n. Now only adds one when needed.
    • ci/main.go Deployer: mounts the key at a .raw path, strips Windows-style CRLF endings with tr -d '\r', then writes the normalised key to id_ed25519. CRLF bytes cause "error in libcrypto" in Alpine's LibreSSL-backed openssh.

Test plan

  • Deploy run triggers after merge; all three deploy jobs complete
  • Play Store verification step passes
  • SSH commands in Alpine load the key without error in libcrypto

Closes #366

## Summary Fixes three distinct failures from CI deploy run #1424 and concurrent website update failures. - **Play Store job**: `pip install google-auth requests` fails on Ubuntu 24.04 with PEP 668. Fixed by using `python3 -m venv` for an isolated install. - **SSH key error (APK, Linux, website jobs)**: All SSH/rsync steps fail with `Load key "/root/.ssh/id_ed25519": error in libcrypto` inside the Dagger Alpine 3.21 container. This is the first time these jobs actually ran (all previous deploy runs had every job skipped). Two fixes: - `setup_dagger_remote.sh`: `export_secret` was appending an extra trailing newline to values (like SSH private keys) that already end with `\n`. Now only adds one when needed. - `ci/main.go` `Deployer`: mounts the key at a `.raw` path, strips Windows-style CRLF endings with `tr -d '\r'`, then writes the normalised key to `id_ed25519`. CRLF bytes cause "error in libcrypto" in Alpine's LibreSSL-backed openssh. ## Test plan - [ ] Deploy run triggers after merge; all three deploy jobs complete - [ ] Play Store verification step passes - [ ] SSH commands in Alpine load the key without `error in libcrypto` Closes #366
Sign in to join this conversation.