Skip to content

Release v0.5.7

Latest

Choose a tag to compare

@oranheim oranheim released this 08 Aug 12:27
· 19 commits to master since this release

🎯 Highlights

This release focuses on improving the standalone Docker container experience with enhanced admin account management, better modularization, updated dependencies, and optimized CI/CD workflows.

✨ New Features

Admin Account Management

  • New unlock-admin-account CLI command - Directly unlock the admin account via database connection when locked out
  • Added convenient wrapper scripts for better container CLI experience
  • Improved admin account security with better rate limiting defaults (100 requests/60 seconds)

Standalone Container Improvements

  • Refactored Dockerfile.standalone for better maintainability with modular setup scripts
  • Added version identifier to /health endpoint response for easier deployment tracking
  • Optimized container build process with better caching and reduced image size
  • Consolidated to single optimized Dockerfile (removed minimal variant)
  • Database connections now use dedicated authly user instead of postgres superuser

πŸ”§ Infrastructure & DevOps

CI/CD Improvements

  • Optimized Docker builds with PostgreSQL builder caching strategy
    • Separated postgres-builder stage for better caching
    • Multi-stage caching reduces build times significantly
    • Cached builder images stored in GitHub Container Registry
  • Python 3.13 adoption in CI/CD pipelines
    • Updated conformance tests to use Python 3.13
    • Modernized test runner configurations
  • Enhanced release workflow
    • Split Docker builds into production and standalone variants
    • Improved deployment summaries with clearer instructions
    • Better image tagging and metadata handling

Build System

  • Modularized container setup into separate scripts:
    • configure-all.sh - Main configuration orchestrator
    • setup-environment.sh - Environment variables setup
    • setup-postgres.sh - PostgreSQL configuration
    • setup-python.sh - Python environment setup
    • setup-s6-services.sh - S6 supervision configuration
    • setup-wrappers.sh - CLI wrapper scripts

Testing

  • Added PostgreSQL builder cache testing script
  • Enhanced health check endpoint with version information
  • Removed "90% Target" from OIDC conformance tests (now achieving 100% compliance)

πŸ“¦ Dependencies

  • Python: Updated to 3.13.6
  • Docker base images: Updated to latest versions
  • UV lock file: Refreshed with latest compatible dependencies

πŸ“š Documentation

  • Archived completed AI assistant instructions
  • Updated Gemini project memory
  • Enhanced Docker standalone documentation
  • Added comprehensive implementation notes for Docker improvements

πŸ”„ Changes Summary

  • 11 commits since v0.5.6
  • 34 files changed: 1,408 insertions(+), 635 deletions(-)
  • Major refactoring of standalone Docker implementation
  • Improved developer experience with better CLI tools
  • Optimized CI/CD pipeline with better caching strategies

New Admin Unlock Feature

If the admin account gets locked due to failed login attempts:

# Direct database unlock
./scripts/unlock-admin-account.sh

# Or within container
docker exec authly-standalone authly-unlock-admin

πŸ“ Notes

  • The minimal Dockerfile variant has been removed in favor of a single optimized build
  • Rate limiting defaults have been adjusted to 100 requests per 60 seconds for better security
  • The health endpoint now returns version information for easier deployment verification
  • CI/CD builds now leverage multi-stage caching for faster deployments

Full Changelog: v0.5.6...v0.5.7