Render CLI
The Render CLI is an alternative way to leverage the power of Render for your projects. In conjunction with the infrastructure-as-code (IaC) practices enabled by Render Blueprints, the CLI is intended to build towards a rigorously automatable development and deployment process with Render at its heart—freeing you up to work on your project and not on the infrastructure around it.
In addition, the Render CLI is built atop the customer-facing Render REST API. There’s no special sauce in the Render CLI; any workflows you build using the Render CLI can be turned into code running in your programming language of choice.
How do I get help?
As the Render CLI is an alpha release, the project is not under the purview of standard support channels. Until the CLI exits alpha, please submit help requests only as GitHub issues.
We would like the Render CLI to grow and evolve with the needs of the community; to that end, feature requests and pull requests are gratefully solicited in our public GitHub repository.
Installation
We’re trying to make the Render CLI as easy to use as we can across all supported platforms—and some that aren’t, too. Our supported platforms include:
- x86_64 Linux:
x86_64-unknown-linux-gnu
- x86_64 Windows:
x86_64-pc-windows-msvc
- x86_64 macOS:
x86_64-apple-darwin
- ARM macOS:
aarch64-apple-darwin
The CLI may work on unsupported platforms as well; some work on your part may be required. (See From source, below.)
Homebrew (MacOS, Linux)
We support installs on MacOS and Linux via Homebrew, and run our own Homebrew tap. Install the Render CLI with the following:
brew tap render-oss/render
brew install render
Once installed, it should be available as render
.
Chocolatey (Windows)
We support installs on Windows via Chocolatey. Once Chocolatey is installed and set up, run the following in an elevated (“run as administrator”) PowerShell or CMD prompt:
choco install rendercli
Once installed, it should be available to non-elevated accounts on the PATH
as render.exe
.
Direct installs (all supported operating systems)
- Navigate to the CLI GitHub repository.
- Click Releases on the right-hand sidebar.
- Under the newest release, you’ll see a set of executables. Download the executable appropriate to your operating system. On *nix platforms we recommend creating a
~/bin
directory for your user’s own executables and adding it to yourPATH
.- Make sure to
chmod +x
the downloaded file on *nix platforms. - You probably also want to rename it something shorter than the artifact names we use on GitHub, too! (In our packaged releases, we rename the files to
render
orrender.exe
, depending on platform.)
- Make sure to
From source (unsupported operating systems)
Our CLI is written in Deno, which has execution targets for some operating systems not supported by the Deno compiler (chiefly ARM Linux). If you run into trouble with the below, please feel free to file a GitHub issue, and we can try to help, though as these platforms are not supported, we can’t guarantee success.
- Install
deno
. If you use asdf, we ship a.tool-versions
file that you can use withasdf install
to get going immediately. - Clone the repo with
git clone https://github.com/render-oss/render-cli
. - Run
make deps
to download our application dependencies. - Run
deno task run
, which is the equivalent of the barerender
command for a compiled version of the application, to ensure that everything installed correctly. - Your Deno build may have a compatible compiler for your local system, in which case
deno compile
will emit an executable that works locally. Check theMakefile
for syntax. Ifdeno compile
does not work, consider a shim script or a shell alias to give yourself arender
command. - Later, to update, simply do a
git pull
within this git repository.
Getting started
Now that you’ve got the CLI installed, you can get set up. render config init
will walk you through providing an API key and getting started with usage. Once you’ve initialized your config, render commands
provides an alphabetized list of commands used in the application.
All commands support the --help
switch to get you started with their use. If something is unclear or incorrect in the help sections, we absolutely want to know about it — please file a GitHub issue with as much detail as you can provide.