Giter VIP home page Giter VIP logo

cli's Introduction

deployKF - Command Line Interface (CLI)

Check Commit Downloads Latest Release

This repo contains the command line interface (CLI) for deployKF.

Install

To install the deploykf CLI, please follow the installation instructions on the deployKF website.

Usage

The simplest usage of the deploykf CLI is to run the following command:

deploykf \
  --source-version 0.1.1 \
  --values ./custom-values.yaml \
  --output-dir ./GENERATOR_OUTPUT

This command will generate deployKF manifests in the ./GENERATOR_OUTPUT directory using the v0.1.1 source version and the values specified in your ./custom-values.yaml file. Note that the --source-version flag must correspond to a tag from a deployKF release.

TIP:

The version of the CLI does NOT need to match the --source-version you are generating manifests for. If a breaking change is ever needed, the CLI will fail to generate with newer source versions, and will print message telling you to upgrade the CLI.

Container Image

We publish the deploykf CLI as a container image on the following registries:

Registry Image Pull Command
GitHub Container Registry ghcr.io/deploykf/cli docker pull ghcr.io/deploykf/cli:TAG_NAME

To use the container image, you need to mount your local filesystem into the container:

CONTAINER_IMAGE="ghcr.io/deploykf/cli:0.1.2"

docker run \
  --rm \
  --volume "$(pwd):/home/deploykf" \
  --volume "${HOME}/.deploykf:/home/deploykf/.deploykf" \
  "${CONTAINER_IMAGE}" \
    generate \
    --source-version "0.1.1" \
    --values ./sample-values.yaml \
    --output-dir ./GENERATOR_OUTPUT

Development

Here are some helpful commands when developing the CLI:

  • make build: Builds the binary for your local platform and outputs it to ./bin/deploykf.
  • make install: Installs the binary to /usr/local/bin.
  • make lint: Runs golangci-lint against the codebase to check for errors.
  • make lint-fix: Attempts to automatically fix any linting errors found.

cli's People

Contributors

thesuperzapper avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

cli's Issues

arch mismatch in doc

Checks

deployKF CLI Version

0.1.0

Description

Hi. Thanks for an interesting project!

The doc uses uname -m to figure out the target arch on Linux.

DKF_CLI_VERSION="0.1.0"
DKF_CLI_ARCH="$(uname -m)"
DFK_CLI_DEST=/usr/local/bin/deploykf

# download the binary
sudo curl -L "https://github.com/deploykf/cli/releases/download/v${DKF_CLI_VERSION}/deploykf-linux-${DKF_CLI_ARCH}" -o "${DFK_CLI_DEST}"

# make the binary executable
sudo chmod +x "${DFK_CLI_DEST}"

# test the binary
deploykf version

However, in our machine (Lambda Labs Cloud 8x A100 40GB machine), uname -m reports x86_64, whereas the release assumes amd64.

So, just copying and paste the above code downloads an empty file without an error, and deploykf version executes the empty file and prints /usr/local/bin/deploykf: 1: Not: not found

Here are my suggestions:

  1. Add x84_64 in release
  2. sudo curl -L -> sudo curl -fL. With -f flag curl will safely non-0 exit when not found, with no file downloaded.

Relevant Logs

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.