metal3d
9766dac763
yaml(schema): Propose a schema to use with LSP
...
This schema works, at least, with yaml-lsp (yamlls) in NeoVim.
2024-11-26 17:02:25 +01:00
metal3d
441be30720
chore(version): Get the version following how katenary is installed
2024-11-26 16:47:37 +01:00
metal3d
e13653fba1
doc(readme): fix the command line help output
2024-11-26 16:47:05 +01:00
metal3d
9181c389d4
doc(refresh): Refresh documentation
2024-11-26 16:11:46 +01:00
metal3d
3b4dade699
chore(label): new label "values-from"
...
This labels allow to use some environment variables from another service
and use the configMap / secret instead of the original value. This is
useful to avoid duplication of values for several variables.
2024-11-26 16:11:12 +01:00
metal3d
4f0298c0a9
test(utils): Add some tests
2024-11-26 16:09:12 +01:00
metal3d
0714eac615
test(codecov): remove codecov
...
Codecov is very nice but we already use SonarQube to evaluate the code
coverage.
2024-11-26 09:08:49 +01:00
metal3d
fc335247f8
chore(tests): exlude tests for sonarqube
2024-11-25 23:11:14 +01:00
metal3d
ad16005091
test(schema): Add test on ingress
2024-11-25 12:10:41 +01:00
metal3d
a676372bbe
chore(clean): remove unused functions
2024-11-25 12:02:19 +01:00
metal3d
7fadc45e9e
chore(typo): bad markdow, bad label name
2024-11-25 12:02:04 +01:00
metal3d
41a0dc58a5
chore(typo): fix some typos
2024-11-25 12:00:04 +01:00
metal3d
dc34d32c5c
test(secrets): add tests
2024-11-25 11:54:38 +01:00
metal3d
36984e3825
chore(clean): remove unused functions
2024-11-25 11:54:18 +01:00
metal3d
046410a5ec
chore(refacto): use utils package
2024-11-25 11:54:00 +01:00
metal3d
827b5bc830
test(values): add map-env and exchange volumes tests
2024-11-22 16:23:00 +01:00
metal3d
8aee6d9983
fix(nil): The service can not exist
2024-11-22 16:11:55 +01:00
metal3d
7b890df1c5
fix(schema): Use ingress default values
...
Ingress has some default values, like path and classname. We need to
ensure that values are taken or nil, and to apply them if they are not
set explicitally. Port is a sepcial case.
2024-11-22 15:55:59 +01:00
metal3d
e925f58e82
doc(add): Add more documentation about katenary file
2024-11-22 15:12:44 +01:00
metal3d
91fc0fd9f0
fix(doc): missed a new line
2024-11-22 14:58:43 +01:00
metal3d
1a1d2b5ee8
fix(configmap): do not write env var in file CM
...
File CM are configmap to store "static" data (file content), do not set
environment variables inside.
2024-11-22 14:55:42 +01:00
metal3d
95f3abfa74
feat(volume): add "exchange volumes"
...
This volumes are "emptyDir" and can have init command. For example, in a
"same-pod", it allow the user to copy data from image to a directory
that is mounted on others pods.
2024-11-22 14:54:36 +01:00
metal3d
3b51f41716
chore(names): Fix resource name
...
Use an utility function to fix some names
2024-11-21 11:12:38 +01:00
metal3d
3f63375b60
refacto(labels): use external files
...
Files are more readable as external. Use "go:embed" to inject them.
2024-11-21 11:08:55 +01:00
metal3d
8c97937b44
test(schema): Add tests
2024-11-21 11:08:09 +01:00
metal3d
96f843630a
chore(misc): make the code more readable here
2024-11-21 11:04:19 +01:00
metal3d
48f6045cd3
fix(same-pod): environnment and volume mapping
...
We must ensure that the volume is owned by the container.
The environmment configMap wasn't bound.
2024-11-21 11:03:10 +01:00
metal3d
af8dabba85
fix(secrets): Wrapping values is unecessary
...
It seems that go-compose now escape the string
2024-11-18 17:42:21 +01:00
metal3d
cc1019b5a8
chore(refacto): fix secret and use katenary schema
...
- add possibility to use a katenary.yaml file to setup values
- fix secret generation
2024-11-18 17:12:12 +01:00
metal3d
14877fbfa3
Remove example for now
2024-11-10 00:49:38 +01:00
metal3d
7b5e45131c
doc(fix): fixes the main-app documentation
...
There were a problem, sentence was truncated
2024-11-09 14:19:56 +01:00
metal3d
b09316b416
refactor(yaml): globalize fixups
...
The ToK8SYaml() function makes the job, it's now simpler to manage fixes
2024-11-09 14:18:27 +01:00
metal3d
9b392a1f64
Fix problem on getting tls mapping
...
The types were not compatible to get TLS activation
2024-11-08 16:55:18 +01:00
metal3d
9358076a36
chore(ingress): Allow tls activation
2024-11-08 15:51:36 +01:00
metal3d
8ab1763902
version(actions) Update actions and Go version
...
- checkout is now v4
- setup-go is now v5
- go version to use 1.23
2024-11-08 13:35:52 +01:00
metal3d
e409be235e
version(go) go 1.23 is now mandatory
2024-11-08 13:30:47 +01:00
metal3d
1ca71f264c
version(mod) Update others dependencies
2024-11-08 13:29:06 +01:00
metal3d
5f464253c4
version(k8s/api) Update kubernetes api package
2024-11-08 13:26:14 +01:00
metal3d
75869975f6
version(netdb) Update version
2024-11-08 13:24:04 +01:00
metal3d
ac43256511
version(cobra) Update cobra version
2024-11-08 13:20:38 +01:00
metal3d
5b51ba6d98
doc(fix): Regenerate the doc
2024-11-08 13:13:27 +01:00
metal3d
dd63bb6343
chore(fixes): Unwrap yaml before converting and fix volume name variable
...
2 fixes:
- the first problem to resolve is that some volume names can have "-" in
the name. We now replace them by "_"
- the second problem is that k8s.io library truncates the lines and so
we cannot split the files by lines. We now "unwrap" the result.
TODO: globalize the `yaml.Marshal()` code to our own specific function
2024-11-08 13:11:14 +01:00
metal3d
817ebe0e53
Remove logs
...
Made for debug, we must remove them.
Todo, add a logger system for debug.
2024-11-08 13:08:20 +01:00
metal3d
2d33367422
chore(optim): manage space in struct
...
Warning given by sonarlint, saves a few bytes.
2024-10-24 17:24:36 +02:00
metal3d
d72f371c59
fix(generation): fix the volume var/path name
...
Underscores are forbidden by Kubernetes (should be a valid URL string),
we replace "_" by "-" in names, and we leave the values file using the
original name. So a volume named "foo_bar" in compose file, is
registered as "foo_bar" in the values file, but "foo-bar" is used as
volume name in deployments, volume claims, ...
2024-10-24 17:23:26 +02:00
metal3d
db168c91c9
fix(generation): use tpl in note for hostnames
...
The value in hostname in values file can be a templated string. So, we
should execute the content.
2024-10-24 17:21:04 +02:00
metal3d
d31993953b
fix(doc): livenessProbe and readinessProbe must be set
...
In the health-check label, we now need to specify the kind of check to
do - in the expected form from Kubernetes specification.
2024-10-23 16:32:50 +02:00
metal3d
63c6d5d0ef
chore(format): moved import
...
Formatter changed the import order
2024-10-23 16:20:29 +02:00
metal3d
164a617869
fix(values): Remove tplString in environment directive
...
We badly set a "tpl string" in values.yaml file for "values" labels set
in compose.yaml file.
2024-10-23 16:17:01 +02:00
metal3d
865473b41b
Enhance documentation
...
- upgraded mkdocs and dependencise (+ add mermaid)
- linted markdown
- add more details
2024-10-18 09:36:56 +02:00
metal3d
533e1422d0
Sonar complience
...
Use valid names and factorize some constants checks
2024-10-18 09:36:55 +02:00
metal3d
d2c8d08b7f
Validate markdown
...
Use markdownlint / marksman in your editor please
2024-10-18 09:36:55 +02:00
metal3d
4703aa7df5
MkDocs needs 4 spaces for lists
2024-10-18 09:36:55 +02:00
metal3d
918f1b845b
Fix problems and adding functionnalities
...
Many fixes and enhancements:
- Add icon option
- Add env file managment
- Ordering compose parsing options
- Fix path with underscores
- Fix image and tag discovery
- Better documentation for labels
2024-10-18 09:36:54 +02:00
metal3d
78dfb15cf5
Add the command package
2024-05-07 13:19:04 +02:00
metal3d
adc44a5e8b
Refactorization and ordering
2024-05-07 13:18:00 +02:00
metal3d
4367a01769
Big refactorization
...
- reduce complexity
- use better tools to format the code
- add more tests
- and too many things to list here
We are rewriting for V3, so these commits are sometimes big and not
fully detailed. Of course, further work will be more documented.
2024-05-06 21:11:36 +02:00
metal3d
d98268f45b
Add more tests on probes and dependencies
2024-04-25 00:20:04 +02:00
metal3d
ccfebd1a70
We need helm linting at this time
...
Because the linting makes the dependency update. We will need to split
linting and dep update later.
2024-04-25 00:18:57 +02:00
metal3d
e4f67dbd31
Fix the parsing of probes
2024-04-25 00:18:04 +02:00
metal3d
d01a35e2d4
Use real types to parse labels
...
We were using `yaml.Unmarshal` on basic types or inline structs. This
was not efficient and not clear to defined what we expect in labels.
We now use types to unmarshal the labels.
Only the `values` label is, at this time, parsed by GetValuesFromLabel
because this `utils` function is clearly a special case.
2024-04-24 23:06:45 +02:00
metal3d
0aa7023947
Avoid repetition
2024-04-24 21:53:24 +02:00
metal3d
451a1341bd
Do not check coverage on test file dude
2024-04-24 21:52:59 +02:00
metal3d
da7d92bbfa
Add more tests, refactor to fix problems
...
Signed-off-by: Patrice Ferlet <metal3d@gmail.com >
2024-04-24 20:55:27 +02:00
metal3d
15a2f25e51
Exclude doc from the analysis
2024-04-24 14:23:31 +02:00
metal3d
f73d598bb4
Standardization
...
- changed variables that was uppercased, that's not OK for linters
- cleanup some documentation
- remove the "/" in label prefix, a function is now used to get the
complete label (`labelName()`)
- some cleanup in tpl files, and so on...
2024-04-24 14:03:41 +02:00
metal3d
98c7c6ddc1
Use latest Go compiler
2024-04-24 13:57:06 +02:00
metal3d
39d63c11b1
Remove coverage files
2024-04-24 13:51:46 +02:00
metal3d
8f4d69d6e2
Add sonar profile
2024-04-24 13:51:25 +02:00
metal3d
531756d8ea
Use sonarcloud
2024-04-24 13:48:01 +02:00
metal3d
e0c18ec2ad
Avoid repetitions
2024-04-23 15:45:31 +02:00
metal3d
a3e7435544
Add test for static volumes
...
And moved a test from deployment_test that was not the right place to be
created.
2024-04-23 15:38:50 +02:00
metal3d
c01cdf50c8
Only on PR and on push to master
2024-04-23 14:59:20 +02:00
metal3d
2e3dd5032f
Add codecov
2024-04-23 14:54:42 +02:00
metal3d
8b01807568
Add workflows
2024-04-23 14:43:57 +02:00
metal3d
46c878b56e
Add coverage files
2024-04-23 14:42:55 +02:00
metal3d
77de53c999
Create more tests
2024-04-23 14:26:23 +02:00
metal3d
6a7fedee7e
We shouldn't quote encoded values
...
Quoting before encoding in base64 adds the quotes in the encoded data.
That's a bad behavior.
2024-04-23 14:24:06 +02:00
metal3d
c31299197f
Remove the bats tests
...
That was interesting but finally not so useful. We will make better
tests in Go. The hard part will be to make them working in CI/CD.
2024-04-23 10:13:38 +02:00
metal3d
49c1fa5fb0
Explain what happens
2024-04-23 10:10:58 +02:00
metal3d
d1186ee1e1
Refresh doc
2024-04-23 08:07:20 +02:00
metal3d
50975ae94a
Fix static volume binding
...
It is possible there are many things like this to fix. I made too much
complexity on searching services in deployment while the map key is
enough to get the righ deployment for a compose service.
Need to check the "same-pod" possibilities later.
2024-04-23 08:05:00 +02:00
metal3d
7e8cb57979
Fixes
2024-04-22 15:43:02 +02:00
metal3d
12814f4732
Cleanup
2024-04-22 15:36:49 +02:00
metal3d
dc41826691
Back to normal
2024-04-22 15:32:39 +02:00
metal3d
6770f8176a
Make pure svg calls
2024-04-22 15:29:32 +02:00
metal3d
cd946b2df6
Try another thing
2024-04-22 15:20:29 +02:00
metal3d
734b0ed39d
Try to embed logos
2024-04-22 15:17:28 +02:00
metal3d
78d37c4405
Ease installation
2024-04-22 13:55:53 +02:00
metal3d
fd3ba6d577
Fix doc after changes in source files
2024-04-22 13:31:30 +02:00
metal3d
8ae9350d31
Add YAML keys in the comments
...
I eases developpers and admins to know the key to override when they
create an override file or to use `--set` argument for Helm.
2024-04-22 13:28:22 +02:00
metal3d
9621493343
Add resources in containers and values
2024-04-22 13:27:44 +02:00
metal3d
f291d17aa3
Fixup documentation after changing packages
2024-04-21 16:37:20 +02:00
metal3d
9826a54187
Fix notes.txt problems
...
We were using a bad method to read the ingress values. It's not ensured
by using the service names + checking the "ingress" key.
2024-04-21 16:35:32 +02:00
metal3d
d48fd2f911
make a better override + add more values (serviceAccount, nodeSelector...)
2024-04-21 16:34:21 +02:00
metal3d
ec62a79d82
Better override list and documentation
2024-04-19 22:26:45 +02:00
metal3d
58d19cce52
Fix the chart app version
2024-04-19 22:12:09 +02:00
metal3d
3bb635a627
Add FAQ page
2024-04-19 12:11:43 +02:00
metal3d
35f464a1cb
Add footnotes and search
2024-04-19 12:11:18 +02:00
metal3d
85f1b2d43c
Fixes the ingress doc
2024-04-19 11:28:27 +02:00