abctl
Airbyte's command line tool for local Airbyte deployments.
Quickstart
[!TIP]
Additional documentation can be found in the Airbyte Documentation.
[!IMPORTANT]
Credentials are randomly generated as part of the installation process.
After installation is complete, to find your credentials run abctl local credentials
.
-
Install Docker
-
Install abctl
-
Install Airbyte
# install Airbyte
abctl local install
# fetch the login credentials
abctl local credentials
[!NOTE]
Depending on internet speed, abctl local install
could take in excess of 15 minutes.
By default abctl local install
will only allow Airbyte to accessible on the host localhost
and port 8000
.
If Airbyte will be accessed outside of localhost
, --host [hostname]
can be specified.
If port 8000
is not available. or another port is preferred, --port [PORT]
can be specified.
-
Login to Airbyte
If abctl local install
completed successfully, it should open a browser to http://localhost:8000
(or to the --host
and --port
overrides if specified). If this is the first time Airbyte has been
installed you will be asked to provide an email and organization name. To retrieve your password
to login, run abctl local credentials
.
Commands
All commands and sub-commands support the following optional global flags:
Short |
Long |
Description |
-h |
--help |
Displays the help information, description the available options. |
-v |
--verbose |
Enables verbose (debug) output. Useful when debugging unexpected behavior. |
All commands support the following environment variables:
Name |
Description |
DO_NOT_TRACK |
Set to any value to disable telemetry tracking. |
The following commands are supported:
local
abctl local --help
The local sub-commands are focused on managing the local Airbyte installation.
The following sub-commands are supports:
credentials
abctl local credentials
Displays the credentials required to login to the local Airbyte installation.
[!NOTE]
When abctl local install
is first executed, random password
, client-id
, and client-secret
are generated.
Returns ths email
, password
, client-id
, and client-secret
credentials.
The email
and password
are required to login to Airbyte.
The client-id
and client-secret
are necessary to create an Access Token
for interacting with the Airbyte API.
For example:
$ abctl local credentials
{
"password": "[RANDOM PASSWORD]",
"client-id": "[RANDOM CLIENT-ID]",
"client-secret": "[RANDOM CLIENT-SECRET]"
}
credentials
supports the following optional flags
Name |
Default |
Description |
--email |
"" |
Changes the authentication email address. |
--password |
"" |
Changes the authentication password. |
deployments
abctl local deployments
Display kubernetes deployment information and allows for restarting a kubernetes deployment.
deployments
supports the following optional flags
Name |
Default |
Description |
--restart |
"" |
Restarts the provided deployment. |
install
abctl local install
Installs a local Airbyte instance or updates an existing installation which was initially installed by abctl
.
[!NOTE]
Depending on your internet speed, abctl local install
may take in excess of 20 minutes.
install
supports the following optional flags:
[!NOTE]
An -
in the default column indicates no value can be provided.
These flags behave as a switch, enabled if provided, disabled if not.
Name |
Default |
Description |
--chart-version |
latest |
Which Airbyte helm-chart version to install. |
--docker-email |
"" |
Docker email address to authenticate against --docker-server . Can also be specified by the environment-variable ABCTL_LOCAL_INSTALL_DOCKER_EMAIL . |
--docker-password |
"" |
Docker password to authenticate against --docker-server . Can also be specified by the environment-variable ABCTL_LOCAL_INSTALL_DOCKER_PASSWORD . |
--docker-server |
"" |
Docker server to authenticate against. Can also be specified by the environment-variable ABCTL_LOCAL_INSTALL_DOCKER_SERVER . |
--docker-username |
"" |
Docker username to authenticate against --docker-server . Can also be specified by the environment-variable ABCTL_LOCAL_INSTALL_DOCKER_USERNAME . |
--insecure-cookies |
- |
Disables secure cookie requirements. Only set if using --host with an insecure (non https ) connection. |
--low-resource-mode |
false |
Run Airbyte in low resource mode. |
--host |
localhost |
FQDN where the Airbyte installation will be accessed. Set this if the Airbyte installation will be accessed outside of localhost. |
--migrate |
- |
Enables data-migration from an existing docker-compose backed Airbyte installation. Copies, leaving the original data unmodified, the data from a docker-compose backed Airbyte installation into this abctl managed Airbyte installation. |
--no-browser |
- |
Disables launching the browser when installation completes. Useful to set in situations where no browser is available. |
--port |
8000 |
Port where the Airbyte installation will be accessed. Set this if port 8000 is already in use or if a different port is preferred. |
--secret |
"" |
Can be set multiple times. Creates a kubernetes secret based on the contents of the file provided. Useful when used in conjunction with --values for customizing installation. |
--values |
"" |
Helm values file to further customize the Airbyte installation. |
--volume |
"" |
Can be set multiple times. Mounts additional volumes in the kubernetes cluster. Must be in the format of <HOST_PATH>:<GUEST_PATH> . |
status
abctl local status
If an Airbyte installation exists, returns information regarding that installation.
For example:
$ abctl local status
Existing cluster 'airbyte-abctl' found
Found helm chart 'airbyte-abctl'
Status: deployed
Chart Version: 0.422.2
App Version: 0.63.15
Found helm chart 'ingress-nginx'
Status: deployed
Chart Version: 4.11.1
App Version: 1.11.1
Airbyte should be accessible via http://localhost:8000
uninstall
abctl local uninstall
Uninstalls a local Airbyte instance.
[!NOTE]
The data associated with the installed Airbyte instance will not be removed.
This is done to allow Airbyte to be reinstalled at a later date with all the data preserved.
uninstall
supports the following optional flags:
[!NOTE]
An -
in the default column indicates no value can be provided.
These flags behave as a switch, enabled if provided, disabled if not.
Name |
Default |
Description |
--persisted |
- |
Will remove all data for the Airbyte installation. This cannot be undone. |
version
abctl version
Displays version information about the abctl
tool.
For example:
$ abctl version
version: v0.12.0
Contributing
Report an Issue
If you have found a problem with abctl
, please open a Github Issue and use the 🐛 [abctl] Report an issue with the abctl tool
template.
Build
Install go
This repository utilises a Makefile, wrapping the traditional go
commands
used for formatting, vetting, building, and testing go
code.
The following make
commands are supported:
name |
description |
make build |
Builds the abctl binary, placing it in the build directory. |
make clean |
Removes the build directory. |
make fmt |
Formats the code. |
make test |
Runs all the tests. |
make vet |
Runs the vet command. |