Repository Service for TUF Command Line Interface

Tests and Lint Coverage

Repository Service for TUF Command Line Interface (CLI).

This CLI is part of the Repository Service for TUF (RSTUF).

Note

Not a functional tool, it is still in the development stage. Wait for release 0.0.1

Development

Requirements:

  • Python >=3.9

  • Pipenv

Getting the source code

Fork the repository on GitHub and clone it to your local machine:

git clone git@github.com:YOUR-USERNAME/repository-service-tuf-cli.git

Add a remote and regularly sync to make sure you stay up-to-date with our repository:

git remote add upstream https://github.com/vmware/repository-service-tuf-cli
git checkout main
git fetch upstream
git merge upstream/main

Preparing the environment

After installing Python, install the pipenv tool:

$ pip install pipenv

Create a virtual environment for this project:

$ pipenv shell

Install the requirements from the Pipfile.

The flag -d will install the development requirements:

$ pipenv install -d

Note

macOS running on MacBook M1

For developers, after the above command, run:

$ pip uninstall cryptography cffi -y
$ pip cache purge
$ LDFLAGS=-L$(brew --prefix libffi)/lib CFLAGS=-I$(brew --prefix libffi)/include pip install cffi cryptography

Running RSTUF CLI:

$ rstuf

Usage: rstuf [OPTIONS] COMMAND [ARGS]...

Repository Service for TUF Command Line Interface (CLI).

How to add new requirements

Install the requirements package.

The flag -d will install the development requirements.

$ pipenv install -d <package>
$ pipenv install <package>

Update all project requirements

$ make requirements

Tests

Perform automated testing with the tox tool:

$ tox

Documentation List

Indices and tables