Skip to main content

CLI client tool for deploying workloads to Racetrack

Project description

Racetrack CLI client

racetrack-client is a CLI client tool for deploying and managing workloads in Racetrack.

Racetrack system allows to deploy jobs in a one step. It transforms your code to in-operation workloads, e.g. Kubernetes workloads. You write some code according to a set of coventions, you include the manifest file which explains the code, and you submit it to Racetrack. A short while after, the service calling your code is in operation.

Quickstart

# Install racetrack-client
python3 -m pip install --upgrade racetrack-client

# Set current remote
racetrack set remote https://racetrack.platform.example.com

# Log in
racetrack login T0k3n.g0es.H3r3

# Deploy a Job
racetrack deploy

Installation

Install racetrack-client using pip:

python3 -m pip install --upgrade racetrack-client

Python 3.8 (or higher) is required.

This will install racetrack CLI tool. Verify installation by running racetrack command.

Usage

Run racetrack --help to see usage.

Adding a remote

Assuming your Racetrack server is running on https://racetrack.platform.example.com/lifecycle, you can add this remote as an alias:

racetrack set alias my-dev https://racetrack.platform.example.com/lifecycle

Alias is a short, friendly name for the URL of your Racetrack server, which is also known as "remote". From now on, you can refer to your remote with an alias.

Switching remotes

Set your current remote with:

racetrack set remote my-dev

This will set up a "remote" context for later use.

Logging in

Log in to Racetrack with your user account (you can get your token from the Dashboard's profile page):

racetrack login T0k3n.g0es.H3r3

In case you're going to use a private repository, provide your git credentials so the job can be built from your code:

racetrack set credentials https://github.com/YourUser/YourRepository USERNAME TOKEN

Installing plugins

Extend Racetrack's possibilities by installing a bunch of plugins:

# This plugin allows you to deploy jobs written in Python
racetrack plugin install github.com/TheRacetrack/plugin-python-job-type

# This plugin allows you to deploy jobs to a local Docker infrastructure
racetrack plugin install github.com/TheRacetrack/plugin-docker-infrastructure

Plugins can only be installed by admin users.

Deploying a job

When your code is ready and you pushed your changes to a repository, it's time to deploy it; that means, upload it to Racetrack so it can become a proper running Job.

To deploy a job, just run it in the place where job.yaml is located:

cd MuffinDestroyer
racetrack deploy 

You will see the URL of your deployed job in the output.

Listing jobs

You can see the list of all deployed jobs with a command:

racetrack list

Checking runtime logs

Check the logs of a running job by means of:

racetrack logs MuffinDestroyer

Deleting a job

Delete your running job with:

racetrack delete MuffinDestroyer

Project details


Download files

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

Source Distribution

racetrack-client-2.19.0.tar.gz (39.5 kB view details)

Uploaded Source

Built Distribution

racetrack_client-2.19.0-py3-none-any.whl (52.0 kB view details)

Uploaded Python 3

File details

Details for the file racetrack-client-2.19.0.tar.gz.

File metadata

  • Download URL: racetrack-client-2.19.0.tar.gz
  • Upload date:
  • Size: 39.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for racetrack-client-2.19.0.tar.gz
Algorithm Hash digest
SHA256 6c624371bd0261cd337fbb0552266ffbddbcc571fd9a76ee019d2d48dad59df5
MD5 8c487c0773cdf5a3e4bb07ee2f352ead
BLAKE2b-256 5a0903fff0fd921a459f1847e90d5337dfed2d1a9b035853bc7756b42bd85883

See more details on using hashes here.

File details

Details for the file racetrack_client-2.19.0-py3-none-any.whl.

File metadata

File hashes

Hashes for racetrack_client-2.19.0-py3-none-any.whl
Algorithm Hash digest
SHA256 305ffc0ed4457a0a4a6e9c1fd191a2d44bbcb22d1c4b83c3be0375bd0731bfbe
MD5 a57c57c7d70b695584b960e02261bd1e
BLAKE2b-256 6804e86b7b00c427d8734f19f88dc1eb702bae8bd4e6d265d2b8dc35796a7ce0

See more details on using hashes here.

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