You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Use compose-go https://github.com/compose-spec/compose-go to make Katenary parsing compose file the official way.
Add labels:
- `volume-from` (with `same-pod`) to avoid volume repetition
- `ignore` to ignore a service
- `mapenv` (replaces the `env-to-service`) to map environment to helm variable (as a template string)
- `secret-vars` declares variables as secret values
More:
- Now, environment (as secret vars) are set in values.yaml
- Ingress has got annotations in values.yaml
- Probes (liveness probe) are improved
- fixed code to optimize
- many others fixes about path, bad volume check, refactorisation, tests...
Copy file name to clipboardexpand all lines: README.md
+13-4
Original file line number
Diff line number
Diff line change
@@ -16,6 +16,7 @@ This project is partially made at [Smile](https://www.smile.eu)
16
16
17
17
You can download the binaries from the [Release](https://github.com/metal3d/katenary/releases) section. Copy the binary and rename it to `katenary`. Place the binary inside your `PATH`. You should now be able to call the `katenary` command.
18
18
19
+
You can of course get the binary with `go install -u github.com/metal3d/katenary/cmd/katenary/...` but the `main` branch is continuously updated. It's preferable to use releases.
19
20
20
21
You can use this commands on Linux:
21
22
@@ -125,7 +126,7 @@ What can be interpreted by Katenary:
125
126
-`env_file` list will create a configMap object per environemnt file (⚠ todo: the "to-service" label doesn't work with configMap for now)
126
127
- some labels can help to bind values, for example:
127
128
-`katenary.io/ingress: 80` will expose the port 80 in a ingress
128
-
-`katenary.io/env-to-service: VARNAME` will convert the value to a variable `{{ .Release.Name }}-VARNAME` - it's usefull when you want to pass the name of a service as a variable (think about the service name for mysql to pass to a container that wants to connect to this)
129
+
-`katenary.io/mapenv: |`: allow to map environment to something else than the given value in the compose file
129
130
130
131
Exemple of a possible `docker-compose.yaml` file:
131
132
@@ -144,32 +145,40 @@ services:
144
145
# because it's the "exposed" port
145
146
- database
146
147
labels:
147
-
# explain to katenary that "DB_HOST" value is variable (using release name)
148
-
katenary.io/env-to-service: DB_HOST
149
148
# expose the port 80 as an ingress
150
149
katenary.io/ingress: 80
150
+
# make adaptations, DB_HOST environment is actually the service name
0 commit comments