Skip to content

feat: k8s-friendly project templates#54

Closed
Taure wants to merge 1 commit intonovaframework:masterfrom
Taure:feat/k8s-templates
Closed

feat: k8s-friendly project templates#54
Taure wants to merge 1 commit intonovaframework:masterfrom
Taure:feat/k8s-templates

Conversation

@Taure
Copy link
Copy Markdown
Contributor

@Taure Taure commented Mar 10, 2026

Summary

  • Add multi-stage Dockerfile template with ARG ERLANG_VERSION / ARG REBAR_VERSION (from .tool-versions)
  • Add .dockerignore to keep build context clean
  • Use nova_jsonlogger in prod sys.config for structured JSON logging (stdout)
  • Add shutdown_delay and shutdown_drain_timeout config for graceful shutdown
  • Keep -sname in vm.args (required by releases) but comment out -setcookie

Test plan

  • rebar3 new nova test_app generates all new files (Dockerfile, .dockerignore)
  • Template variables substituted correctly
  • Docker image builds successfully with --build-arg from .tool-versions
  • Container runs and heartbeat returns 200
  • JSON structured logs output to stdout
  • Graceful shutdown works with correct log output

🤖 Generated with Claude Code

- Add multi-stage Dockerfile with ARG for erlang/rebar versions from .tool-versions
- Add .dockerignore to keep build context clean
- Use nova_jsonlogger in prod_sys.config for structured JSON logging
- Add shutdown_delay and shutdown_drain_timeout config for graceful shutdown
- Disable distributed Erlang by default in vm.args (commented out -sname/-setcookie)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@Taure
Copy link
Copy Markdown
Contributor Author

Taure commented Mar 19, 2026

Superseded by #61 (rebar3 nova new myapp --docker)

@Taure Taure closed this Mar 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant