* Enable configuring service type LoadBalancer IP
Signed-off-by: David Mutia <davidmutia47@gmail.com>
* Add tests for loadBalancerIP
Signed-off-by: David Mutia <davidmutia47@gmail.com>
* chore: get rid of cmdstats_map (#1687)
cmdstats_map were on the hotpath and are needed only to update the command stats.
Instead, I introduced the stats withing the CommandId itself that we lookup anyways.
Also, it removes fragile dependency on naked command name char* pointers.
Signed-off-by: Roman Gershman <roman@dragonflydb.io>
---------
Signed-off-by: David Mutia <davidmutia47@gmail.com>
Signed-off-by: Roman Gershman <roman@dragonflydb.io>
Co-authored-by: Roman Gershman <roman@dragonflydb.io>
This commit fixes a rendering error where when the rules are
empty, the helm chart fails to render. By using the correct
indentation, the chart will render correctly.
Golden files need to be updated as version is updated in the
`Chart.yaml` file. This commit adds the step to update the golden
files in the release pipeline.
To make that possible, The following additional changes are also
required:
- `Go.Work`: This adds support multi-module projects as we will
have the tests along with the operator in sub-folders. This
is required to run go cmds from the root directory. (like
running tests in this case).
- `.helmignore`: This updates the Helm chart to ignore the `/ci`
folder during helm packaging as those are not required for
users of the chart.
As Version is encoded into the rendered Helm manifests,
They need to be updated with each release so that these
files are in sync with the latest release version.
This PR updates the golang dependencies in the render test
to remove the security alerts. The security alerts should
not be a worry as its just unit test code.
This updates all the namespace fields in the Helm chart to use the
`Release.Namespace` template variable. This is the recommended way to
do it in Helm 3, and allows the chart to be installed in a namespace
as set by the user, without having to modify the chart or use
`--namespace` in `kubectl`.
This commit adds a new `golden_test.go` file into the helm chart
which essentially renders the chart with a set of values and
compares that with the expected golden file, and errors if
they don't match.
This builds on the existing CI values files in `ci/` directory. As
this is the first time, The golden files are rendered and added. This
means for all the future changes, The golden files can be updated
by running `go test -update` and the CI will fail if the golden files
are not updated. By doing this, Both the committer and reviewer
can be sure that the changes are intentional, without having to render
the chart manually.
* feat(server): Enable overriding --requirepass form env var
Signed-off-by: ashotland <ari@dragonflydb.io>
* Change precednce order
Elaborate test
Signed-off-by: ashotland <ari@dragonflydb.io>
* Update helm chart to support passowrd from secret
Using recently added capability of setting dragonfly passowrd with the
DFLY_PASSWORD environment variable
Signed-off-by: ashotland <ari@dragonflydb.io>
* rename to existingSecret* + CI file
Signed-off-by: ashotland <ari@dragonflydb.io>
* fix typo in comment
Signed-off-by: ashotland <ari@dragonflydb.io>
---------
Signed-off-by: ashotland <ari@dragonflydb.io>
This should greatly improve readability of the chart itself
- moved the `Pod` spec for both the `Deployment` and `StatefulSet` into a common template in `_pod.yaml`
- replace a bunch of `if $value; print $value`-type blocks with `with $value; print .`
- replaced `command.set` in `values.yaml` with `command` directly
- this was broken anyways, as the chart wrongly referenced `command.cmd` for both `Deployment` and `StatefulSet`
- populated contrib/charts/dragonfly/ci/ folder for development/CI purposes
Signed-off-by: Philipp Born <git@pborn.eu>
Signed-off-by: Philipp Born <git@pborn.eu>
* docs(community): Add Code of Conduct #107
Signed-off-by: Ryan Russell <git@ryanrussell.org>
* feat(pre-commit): Add Conventional Commits `commit-msg` hook #107
Signed-off-by: Ryan Russell <git@ryanrussell.org>
* bug(pre-commit): Fix conventional commits entry to include `contrib/scripts` #107
Signed-off-by: Ryan Russell <git@ryanrussell.org>
* feat(docker-compose): Add `docker-compose.yml` #100
Signed-off-by: Ryan Russell <git@ryanrussell.org>
* docs(build-from-source): Include build from source
Signed-off-by: Ryan Russell <git@ryanrussell.org>
* Initial commit for helm chart
Includes support for
- persistence for /data (if enabled, a Statefulset is deployed)
- mounting extra volumes (for logs, debugging, whatever)
- initContainers (adjusting the pod's ulimit, possibly)
- passing extra arguments to the dragonfly binary through extraArgs
Squashed commit of the following:
caa91a0 helm-chart: initial commit
7ec9ea5 helm-chart: add extraArgs and update README/TODO
e1da96c helm-chart: add StatefulSet for persistence and update chart README
4d81f8a helm-chart: add liveness+readinessProbe
cdf70b3 helm-chart: add initContainers, extraVolumes and extraVolumeMounts
aed0ef1 helm-chart: update README
* add CONTRIBUTORS