inertia: github.com/ubclaunchpad/inertia Files | Directories

Command inertia

Inertia is the command line interface that helps you set up your remote for continuous deployment and allows you to manage your deployment through configuration options and various commands.

It can be installed in several ways:

# Mac users
brew install ubclaunchpad/tap/inertia

# Windows users
scoop bucket add ubclaunchpad https://github.com/ubclaunchpad/scoop-bucket
scoop install inertia

Users of other platforms can install the Inertia CLI from the Releases page, found here: https://github.com/ubclaunchpad/inertia/releases/latest

To help with usage, most relevant documentation can be seen by using the --help flag on any command:

inertia --help
inertia init --help
inertia [remote] up --help

Documentation can also be triggered by simply entering a command without the prerequisite arguments or additional commands:

inertia remote               # documentation about remote configuration

Inertia has two "core" sets of commands - one that primarily handles local configuration, and one that allows you to control your remote VPS instances and their associated deployments.

For local configuration, most commands will build off of the root "inertia ..." command. For example, a typical set of commands to set up a project might look like:

inertia init                 # initiates Inertia configuration
inertia remote add my_cloud  # adds configuration for a remote VPS instance

The other set of commands are based on a remote VPS configuration, and the available commands can be seen by running:

inertia [remote] --help

In the previous example, the next steps to set up a deployment might be:

inertia my_cloud init        # bootstraps remote and installs Inertia daemon
inertia my_cloud up          # deploys your project

Some of these commands offer a --stream flag that allows you to view realtime log feedback from the daemon.

More documentation on Inertia, how it works, and how to use it can be found in the project repository: https://github.com/ubclaunchpad/inertia/tree/master

Package Files

doc.go main.go

Directories

PathSynopsis
apiPackage api contains definitions for Inertia API requests and responses
cfgPackage cfg provides configuration structs and types
cfg/internal/identity
clientPackage client provides the interface through which Inertia communicates with a serverside daemon
client/bootstrapPackage bootstrap provides Inertia's remote bootstrapping script, based off of inertia/client.Client
client/internalPackage internal provides compiled scripts and other internal assets
client/runnerPackage runner provides the Inertia client's low-level SSH command runner
client/runner/mocksPackage mocks provides mocked implmentations of interfaces in client/runner
cmdPackage cmd contains Inertia's command-line interface components and logic
cmd/corePackage core provides a parent class for the root 'inertia' command
cmd/core/utils/inputPackage input provides input parsing utilities for the Inertia CLI
cmd/core/utils/outPackage out provides out utilities for the Inertia CLI
cmd/projectPackage projectcmd implements the 'inertia project' subcommands
cmd/provisionPackage provisioncmd implements the 'inertia provision' subcommands
cmd/remotePackage remotecmd implements the 'inertia remote' subcommands
cmd/remotesPackage remotescmd implements the 'inertia [remote]' subcommands
commonPackage common provides utilities, shared variables, and types for both the client and the daemon
daemon/inertiadInertiad is Inertia's daemon component.
daemon/inertiad/authPackage auth provides the Inertia daemon's authentication and security framework
daemon/inertiad/buildPackage build implements Inertia's build procedures
daemon/inertiad/build/mocksCode generated by counterfeiter.
daemon/inertiad/cfgPackage cfg provides the daemon's core configuration
daemon/inertiad/containersPackage containers provides utilities for interacting with Docker containers
daemon/inertiad/cryptoPackage crypto provides functions for managing encryption, keys, etc.
daemon/inertiad/daemonPackage daemon provides Inertiad's core server and API
daemon/inertiad/gitPackage git provides functions for interacting with git repositories
daemon/inertiad/logPackage log provides logging utilities
daemon/inertiad/projectPackage project contains Inertia's build and project management code
daemon/inertiad/project/mocksCode generated by counterfeiter.
daemon/inertiad/resPackage res provides simple HTTP response primitives
daemon/inertiad/utilPackage util provides miscellaneous utility functions
daemon/inertiad/webhookPackage webhook contains Inertia's webhook parsing code
localPackage local provides access to local assets for the CLI
local/git
provisionPackage provision contains Inertia's VPS instance provisioning API

Package main imports 4 packages (graph). Updated 2019-09-13. Refresh now. Tools for package owners.