Skip to main content

NEOS Core CLI

Project description

Core CLI v0.12.8

Prerequisites

The following packages are used across python repositories. A global install of them all is highly recommended.

WSL (optional)

If running on Windows, you may need to install distutils to install the service.

$ sudo apt-get install python3.10-distutils

Port forwarding (optional)

To access the APIs locally, you will need to connect to the pod inside the cluster using kubefwd.

$ sudo kubefwd svc -n core-gateway -c ~/.kube/config

Setup

Install CLI

Install the CLI using pip:

pip install neosctl

To install the CLI from source, clone the repository and run the following

$ invoke install-dev

When running locally, if you do not manage your own virtual environments, you can use poetry to put you in a shell with access to the installed code.

$ poetry shell

Setup profile

To setup a profile, run the following command:

neosctl profile init

and set all required parameters. More information about this command you can find in the DOCS.md file.

Login to the system

To login to the system, run the following command:

neosctl auth login

You will need username and password for that.

Setup service user (optional)

For some operations, you will need to provide a service user access_key_id and secret_access_key, adding them into the file ~/.neosctl/credential. To create service user and get it's access and secret key, use IAM API.

Review settings

All setting are stored by default in the folder ~/.neosctl/.

You can also review all settings by running the following commands:

neosctl profile list
neosctl profile view

Reuse profile

To work with the same profile across multiple commands you can export the profile name as an NEOSCTL_PROFILE environment variable.

$ neosctl -p my-profile --help
...
$ export NEOSCTL_PROFILE=my-profile
$ neosctl --help

Usage

To see all available commands, run the following command:

neosctl --help

or go to the DOCS.md file.

Code Quality

Tests

invoke tests
invoke tests-coverage

Linting

invoke check-style
invoke isort

Generate docs

To generate docs in a markdown format, run the following command:

invoke generate-docs-md

The output DOCS.md file could be used to update the NEOS documentation site (docs.neosmesh.com).

Releases

Release management is handled using changelog-gen. The below commands will tag a new release, and generate the matching changelog entries. Jenkins will then publish the release to the artifact repository.

$ invoke release
$ invoke bump-patch
$ invoke bump-minor
$ invoke bump-major
> vX.Y.Z

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

neosctl-0.12.8.tar.gz (28.3 kB view hashes)

Uploaded Source

Built Distribution

neosctl-0.12.8-py3-none-any.whl (39.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page