Skip to content

Command line interface for ODIN. Manage all ODIN services from your command line.

License

Notifications You must be signed in to change notification settings

4Players/fleet-cli

Repository files navigation

ODIN CLI Tool

Build and Release ODIN CLI Tool

Note

This is a CLI tool for the ODIN project. It is used to interact with the ODIN APIs. It's written in Deno and uses the TypeScript ODIN SDK internally.

📖 Documentation

The documentation for the CLI tool is available in our developer documentation. You can find the documentation for the CLI tool in the CLI section.

📦 Installation

To use the Odin CLI no explicit installation is required. You can either use the prebuilt binaries provided by us or compile it yourself.

(Recommended) Prebuilt Binaries

You can simply head to the release page and download the latest binary for your environment. Place it wherever you like and optionally add the path to your path environment variable.

Build it yourself

To run and build the CLI tool from source, you need to have Deno installed. For best compatibility it is recommended to use the Deno version according to .dvmrc. The easiest way to manage multiple Deno version is to use dvm. After installing it you can run dvm install $(<.dvmrc) in this repository to install the hinted version. Alternatively, you can install Deno by following the instructions on the official Deno website.

Warning

Currently only Deno v1 is supported! Due to upstream limitations Deno v2 will not work at this time.

Next, run the following command to generate the CLI tool:

deno task build

This will build a odin binary (or odin.exe on Windows) in the root of the project. You can move this binary to a directory in your PATH to use it globally. On macOS and Linux you might need to run the following command to make the binary executable:

chmod +x odin

🧑‍💻 Development

Tip

This part of the documentation is directed to Mac and Linux development. Working on Windows may require some adaptations to the following instructions.

Install the required dependencies by running:

deno install --allow-scripts

Updating the underlying SDK

To update the underlying SDK, you can simply run the following command:

deno task generate-api-from-backend

This will pull the latest OpenAPI specification file and generate the SDK from it. The generated SDK will be placed in the src/api directory. The CLI tool uses this SDK to interact with the ODIN APIs.

Testing the CLI tool

To run the CLI tool in development mode, you can run the following command:

deno task run

Internally it calls deno run --allow-all src/main.ts. We use --allow-all because the CLI tool needs to access various system resources to work correctly:

  • --allow-read to read the configuration file
  • --allow-write to write the configuration file
  • --allow-net to make API requests
  • --allow-env to read environment variables

Building the CLI tool

To build the CLI tool, you can run the following command:

deno task build

This will create a binary executable (i.e. odin on macOS and Linux and odin.exe on Windows) in the root of the project. You can move this binary to a directory in your PATH to use it globally.

Tip

More details about the CLI tool can be found in the developer documentation.

About

Command line interface for ODIN. Manage all ODIN services from your command line.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •