All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
Unreleased
[0.6.0] - 2026-03-06
This release revamps the runner pod manifest configuration. The migration steps depend on the value you are currently passing:
If you are currently passing a map or a callback to
:runner_pod_tpl, you can simply rename the option to:manifestand it should maintain the current behaviour.If you are using
%FLAMEK8sBackend.RunnerPodTemplate{}with:envand/or:resourcesfields, you need to convert it into a manifest map.manifest = %{ "spec" => %{ "containers" => [ %{ "env" => [ %{"name" => "FOO", "value" => "bar"} ], "resources" => %{ "requests" => %{"memory" => "256Mi", "cpu" => "100m"}, "limits" => %{"memory" => "256Mi", "cpu" => "400m"} } } ] } } {FLAME.Pool, name: MyApp.SamplePool, backend: {FLAMEK8sBackend, manifest: manifest}}Note that, by default, using
%FLAMEK8sBackend.RunnerPodTemplate{}implied that envs and resources were copied from the parent pod. If you want to maintain that behaviour, you can use a manifest function, as fallows:manifest_fun = fn parent_pod_manifest, app_container -> %{ "spec" => %{ "containers" => [ %{ # Copy env vars and resources from the parent container definition. # For fields that you don't want to copy, you can specify the desired # values here. "env" => app_container["env"] || [], "envFrom" => app_container["envFrom"] || [], "resources" => app_container["resources"] || %{} } ] } } end {FLAME.Pool, name: MyApp.SamplePool, backend: {FLAMEK8sBackend, manifest: manifest_fun}}
Added
- Added
:manifestbackend option - Added
:envbackend option for passing extra runner environment variables as a key-value map
Changed
- If a container image is specified in the runner manifest, it is no longer overridden by the parent image
Removed
- Removed
:runner_pod_tploption in favour of the the new:manifestoption - Removed the
%FLAMEK8sBackend.RunnerPodTemplate{}struct
[0.5.7] - 2024-12-05
Fixed
- Allow callers to set omit_owner_reference option #59
[0.5.6] - 2024-10-09
Fixed
- Set
RELEASE_COOKIEinstead ofRELEASE_SECRET
[0.5.5] - 2024-10-08
Fixed
[0.5.4] - 2024-09-11
Changed
- Upgrade to FLAME 0.5.0
[0.5.3] - 2024-08-30
Changed
- Reverted change in
0.5.2. Users should parse the YAML if they want to.
[0.5.2] - 2024-08-29
Added
FLAMEK8sBackend.RunnerPodTemplate: Allow BYO pod template to be a binary.
[0.5.1] - 2024-08-28
Changed
- Upgrade to FLAME 0.4.0
[0.5.0] - 2024-08-27
Fixed
FLAMEK8sBackend.RunnerPodTemplate: Only setPHX_SERVERif it is not passed.FLAMEK8sBackend.RunnerPodTemplate: RejectFLAME_PARENT, notFLAME_BACKENDin passed env vars.
Added
FLAMEK8sBackend.RunnerPodTemplate: Set.metadata.namespaceand.metadata.generateNameon runner pod if not set (#43)
Changed
FLAMEK8sBackend.RunnerPodTemplate: Also copyenv_fromifadd_parent_envistrue- Improve documentation
[0.4.3] - 2024-08-22
Fixed
- use
FLAME.Parser.JSONinstead ofJason
Added
- Support for BYO runner pod templates as map.
[0.4.2] - 2024-07-28
Fixed
- SSL cert verification workaround for older OTP versions was added again - #37 #38
- Upgraded FLAME dependency to
0.3.0
[0.4.1] - 2024-07-07
Changed
- Remove
Reqdependency and use:httpcinstead in order to be safer when run in Livebook. #35
[0.4.0] - 2024-06-19
Changed
- Support for FLAME >= 0.2.0 and livebook integraion (requires livebook >= 0.13.0) - #32
[0.3.3] - 2024-04-29
Changed
- With
mint1.6.0 out, we have no need for the temporary workaround for TLS verification anymore.
[0.3.2] - 2024-02-25
Changed
- Dependency Updates
[0.3.1] - 2024-01-28
Changed
- Use
:cacertfileinsead of:cacertsin:transport_optionsand let the OTP process the certificate - #8 - Dependency Updates
[0.3.0] - 2023-12-19
Changed
- Remove
:insecure_skip_tls_verifyoption and use a custommatch_funinstead to work around failing hostname verification for IP addresses. - #5
[0.2.3] - 2023-12-15
Added
runner_pod_tploption for better control over the runner pod manifest - #2- Basic integration test
Changed
- Delete pod when shutting down the runner.
[0.2.2] - 2023-12-14
Fixed
- Don't crash the runner if the
:logoption is not set (or set tofalse)
[0.2.1] - 2023-12-11
Changed
- ENV var
DRAGONFLY_PARENTwas renamed toFLAME_PARENTin commit 9c2e65cc
[0.2.0] - 2023-12-10
Changed
- Replace
k8slib with a lightweight Kubernetes client implementation.
[0.1.0] - 2023-12-09
- Very early stage implementation of a Kubernetes backend.