diff --git a/README.md b/README.md index 18c3fc8e..35d525f6 100644 --- a/README.md +++ b/README.md @@ -8,11 +8,13 @@ Garm enables you to create and automatically maintain pools of [self-hosted GitH The goal of ```garm``` is to be simple to set up, simple to configure and simple to use. It is a single binary that can run on any GNU/Linux machine without any other requirements other than the providers it creates the runners in. It is intended to be easy to deploy in any environment and can create runners in any system you can write a provider for. There is no complicated setup process and no extremely complex concepts to understant. Once set up, it's meant to stay out of your way. +Garm supports creating pools on either GitHub itself or on your own deployment of [GitHub Enterprise Server](https://docs.github.com/en/enterprise-server@3.5/admin/overview/about-github-enterprise-server). For instructions on how to use ```garm``` with GHE, see the [credentials](/doc/github_credentials.md) section of the documentation. + ## Installing ## Build from source -You need to have Go install, then run: +You need to have Go installed, then run: ```bash git clone https://github.com/cloudbase/garm diff --git a/doc/running_garm.md b/doc/running_garm.md index dbfe60a8..3fa8f281 100644 --- a/doc/running_garm.md +++ b/doc/running_garm.md @@ -81,7 +81,7 @@ Global Flags: Use "garm-cli completion [command] --help" for more information about a command. ``` -## Adding a repository/organization +## Adding a repository/organization/enterprise To add a repository, we need credentials. Let's list the available credentials currently configured. These credentials are added to ```garm``` using the config file (see above), but we need to reference them by name when creating a repo. @@ -128,6 +128,22 @@ ubuntu@experiments:~$ garm-cli organization create \ +-------------+--------------------------------------+ ``` +To add an enterprise, use the following command: + +```bash +ubuntu@experiments:~$ garm-cli enterprise create \ + --credentials=gabriel \ + --name=gsamfira \ + --webhook-secret="$SECRET" ++-------------+--------------------------------------+ +| FIELD | VALUE | ++-------------+--------------------------------------+ +| ID | 0925033b-049f-4334-a460-c26f979d2356 | +| Name | gsamfira | +| Credentials | gabriel | ++-------------+--------------------------------------+ +``` + ## Creating a pool Pools are objects that define one type of worker and rules by which that pool of workers will be maintained. You can have multiple pools of different types of instances. Each pool can have different images, be on different providers and have different tags. @@ -356,18 +372,22 @@ Usage: Available Commands: completion Generate the autocompletion script for the specified shell credentials List configured credentials + debug-log Stream garm log + enterprise Manage enterprise help Help about any command init Initialize a newly installed garm - login Log into a manager organization Manage organizations pool List pools + profile Add, delete or update profiles provider Interacts with the providers API resource. repository Manage repositories runner List runners in a pool + version Print version and exit Flags: --debug Enable debug on all API calls -h, --help help for garm-cli Use "garm-cli [command] --help" for more information about a command. + ```