cli

module
v0.2.18 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 21, 2023 License: Apache-2.0

README

CLI

CLI Interface to the Lekko Dynamic Configuration Platform.

Documentation

Find our documentation at https://app.lekko.com/docs.

Download

To download lekko cli, you can use homebrew. Since the code is still in a private repository, you will need to use a Github personal access token that has been given access to lekkodev/homebrew-lekko and lekkodev/cli repos.

export HOMEBREW_GITHUB_API_TOKEN=<MY_GITHUB_TOKEN>
brew tap lekkodev/lekko
brew install lekko

Release

We use goreleaser (https://goreleaser.com/) to compile and release new versions of the lekko cli.

To install:

brew install goreleaser

To release, first export your Github access token to an environment variable. You can create a new GitHub token here.

export GITHUB_TOKEN="YOUR_GH_TOKEN"

Finally, create the release.

make release

This command will first prompt you for a new tag that it will push to GitHub. Then, it will cross-compile the binary for multiple platforms and architectures, using the latest tag on GitHub.

After completion, navigate to https://github.com/lekkodev/cli/releases/ to see the latest releases under the tag you just created.

Done! The cli has just been released. Follow instructions above to Download the latest cli.

Integration Tests

Integration tests exist for the cli and they are run on CI by default. You can run them locally:

GITHUB_TOKEN=${github_personal_access_token} make integration

The tests are configured to use the lekkodev/integration-test repository as a remote for testing.

All tests live in ./pkg/repo/repo_integration_test.go. They aren't run via make test due to the use of a Go Build Constraint.

Directories

Path Synopsis
cmd
pkg
feature
This package governs the specifics of a feature, like what individual files make up a feature.
This package governs the specifics of a feature, like what individual files make up a feature.
fs
gh
k8s
metadata
This package governs metadata in configuration repos and their surrounding development repositories as well.
This package governs metadata in configuration repos and their surrounding development repositories as well.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL