Skip to content

v0.0.2

Choose a tag to compare

@ersinkoc ersinkoc released this 30 Mar 10:08
· 60 commits to main since this release

SimpleDeploy v0.0.2

Security

  • Webhook JSON parsing: Replaced fragile string-based JSON extraction with proper encoding/json unmarshaling
  • YAML injection fix: All environment variable values in generated docker-compose.yml are now properly quoted
  • Domain validation: Caddy proxy rejects malformed domains that could inject into Caddyfile
  • Atomic state writes: State file writes are now atomic (write to tmp + rename) to prevent corruption on crash
  • Deploy timeout safety: Webhook deploy goroutines release locks after 30 minutes even if hung

Bug Fixes

  • Fixed DATABASE_URL being overwritten when multiple SQL databases are provisioned (now uses per-type URLs like MYSQL_URL, POSTGRESQL_URL)
  • Decryption failures in deploy/redeploy now warn instead of silently ignoring
  • RunLogs now properly returns errors instead of swallowing them
  • Image cleanup goroutines now have panic recovery
  • Removed dead loop in git.go that did nothing
  • config.Init() is now called from main.go (SIMPLEDEPLOY_DIR env var was dead code)

New Features

  • CLI commands: restart, stop, exec — previously listed in help but not implemented
  • Multi-provider webhooks: GitHub, GitLab, and Gitea push events all supported with proper signature verification
  • Per-app deploy locking: Webhook server serializes deploys per-app instead of globally
  • Ruby support: Dockerfile template for Ruby apps in buildpack
  • Dynamic DB list: Deploy wizard now generates database options from db.AvailableDatabases() instead of hardcoded list

Cleanup

  • Removed unused internal/compose/templates.go
  • Removed unused wizard color functions (Blue, Cyan, Magenta)
  • Updated README with new commands and multi-provider webhook docs

Stats

  • 12/12 test packages passing
  • 81.2% test coverage
  • go vet clean

Full Changelog: v0.0.1...v0.0.2