Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bigblueswarm/bbsctl
A cli tool that let you control bigblueswarm clusters
https://github.com/bigblueswarm/bbsctl
bbb bigbluebutton bigblueswarm cli cluster golang loadbalancer
Last synced: 3 days ago
JSON representation
A cli tool that let you control bigblueswarm clusters
- Host: GitHub
- URL: https://github.com/bigblueswarm/bbsctl
- Owner: bigblueswarm
- License: gpl-3.0
- Created: 2022-02-21T20:48:55.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-04-13T18:59:16.000Z (over 1 year ago)
- Last Synced: 2024-06-22T11:02:18.230Z (6 months ago)
- Topics: bbb, bigbluebutton, bigblueswarm, cli, cluster, golang, loadbalancer
- Language: Go
- Homepage:
- Size: 8.77 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/1958ff373bdb47659cb97888992b322b)](https://www.codacy.com/gh/bigblueswarm/bbsctl/dashboard?utm_source=github.com&utm_medium=referral&utm_content=bigblueswarm/bbsctl&utm_campaign=Badge_Grade)
[![Codacy Badge](https://app.codacy.com/project/badge/Coverage/1958ff373bdb47659cb97888992b322b)](https://www.codacy.com/gh/bigblueswarm/bbsctl/dashboard?utm_source=github.com&utm_medium=referral&utm_content=bigblueswarm/bbsctl&utm_campaign=Badge_Coverage)
[![Code linting](https://github.com/bigblueswarm/bbsctl/actions/workflows/lint.yml/badge.svg)](https://github.com/SLedunois/b3lbctl/actions/workflows/lint.yml)
[![Unit tests](https://github.com/bigblueswarm/bbsctl/actions/workflows/unit_test.yml/badge.svg)](https://github.com/SLedunois/b3lbctl/actions/workflows/unit_test.yml)
![GitHub go.mod Go version](https://img.shields.io/github/go-mod/go-version/bigblueswarm/bbsctl)
![GitHub](https://img.shields.io/github/license/bigblueswarm/bbsctl)The bbsctl command line tool lets you control [BigBlueSwarm](https://github.com/bigblueswarm/bigblueswarm) clusters.
For configuration, bbsctl looks for a file named config in the `$HOME/.bigblueswarm/.bbsctl.yml` directory. You can specify other bbsctl files by setting the `--config` flag.
## Installation
Download last release from [release page](https://github.com/bigblueswarm/bbsctl/releases).
Copy the binary into `/usr/local/bin`.
## Usage
```bash
Manage your BigBlueSwarm cluster from the command lineUsage:
bbsctl [flags]
bbsctl [command]Available Commands:
apply Apply a configuration to bigblueswarm server using a file
cluster-info Get overall cluster information
completion Generate the autocompletion script for the specified shell
delete Delete a specific resource
describe Show details of a specific resource or group of resources
get Display a resource
help Help about any command
init Initialize a resourceFlags:
--config string config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default "$HOME/.bigblueswarm/.bbsctl.yml")
-h, --help help for bbsctlUse "bbsctl [command] --help" for more information about a command.
```See the [documentation](docs/bbsctl.md) for more details.
### Init configuration
Use `b3lbctl init config` to initialize `b3lbctl` configuration.
```bash
Create bbsctl if not exists and initialize a basic configurationUsage:
bbsctl init config [flags]Flags:
-b, --bbs string BigBlueSwarm url
-d, --dest string Configuration file folder destination (default "$HOME/.bigblueswarm")
-h, --help help for config
-k, --key string BigBlueSwarm admin api key
```### Manage instances
`bbsctl` provide some command to manage your cluster instances:
- `bbsctl init instances` that create instances file if it does not exists
```bash
Create instances list file if it does not existsUsage:
bbsctl init instances [flags]Flags:
-d, --dest string File folder destination (default "$HOME/.bigblueswarm")
-h, --help help for instances
```
- `b3lbctl apply -f instances.yml`
```bash
Apply a configuration to bigblueswarm server using a fileUsage:
bbsctl apply -f [filepath] [flags]Flags:
-f, --file string resource file path
-h, --help help for applyGlobal Flags:
--config string config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default "$HOME/.bigblueswarm/.bbsctl.yml")
```
- `b3lbctl get instances` display all BigBlueButton instances found in your B3lb cluster
```bash
Display all BigBlueButton instances available in your BigBlueSwarm clusterUsage:
bbsctl get instances [flags]Flags:
-c, --csv csv output
-h, --help help for instances
-j, --json json outputGlobal Flags:
--config string config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default "$HOME/.bigblueswarm/.bbsctl.yml")
```### Manage tenants
B3lb is a multi tenant load balancer and `b3lbctl` offer tools to manage tenants.
- `b3lbctl init tenant` initialize a tenant file
```bash
Initialize a new bigblueswarm tenant configuration file if not exitsUsage:
bbsctl init tenant [flags]Flags:
-d, --dest string File folder destination (default "$HOME/.bigblueswarm")
-h, --help help for tenant
--host string Tenant hostname
```
- `b3lbctl apply -f tenant.yml`
```bash
Apply a configuration to bigblueswarm server using a fileUsage:
bbsctl apply -f [filepath] [flags]Flags:
-f, --file string resource file path
-h, --help help for applyGlobal Flags:
--config string config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default "$HOME/.bigblueswarm/.bbsctl.yml")
```
- `b3lbctl get tenants` display all tenants found in B3lb cluster
```bash
Display all BigBlueSwarm tenants available in your BigBlueSwarm clusterUsage:
bbsctl get tenants [flags]Flags:
-c, --csv csv output
-h, --help help for tenants
-j, --json json outputGlobal Flags:
--config string config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default "$HOME/.bigblueswarm/.bbsctl.yml")
```
- `b3lbctl describe tenant` describe a tenant
```bash
Describe a given BigBlueSwarm tenant.Usage:
bbsctl describe tenant [flags]Flags:
-h, --help help for tenantGlobal Flags:
--config string config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default "$HOME/.bigblueswarm/.bbsctl.yml")
```### Check your cluster
`b3lbctl` let you monitor your cluster using `cluster-info` command.
```bash
Get overall cluster information. It display all instances with %CPU, %MEM, Active meetings, Active paricipants and API statusUsage:
bbsctl cluster-info [flags]Flags:
-h, --help help for cluster-infoGlobal Flags:
--config string config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default "$HOME/.bigblueswarm/.bbsctl.yml")
```### Check B3lb configuration
`b3lbctl` let you check your b3lb application configuration remotely. Even if you use a configuration file or consul provider, `b3lbctl` display your application configuration using `describe config` command.
```bash
describe B3LB configuration.Usage:
b3lbctl describe config [flags]Flags:
-h, --help help for configGlobal Flags:
--config string config file (default is $HOME/.b3lb/.b3lbctl.yml) (default "$HOME/.b3lb/.b3lbctl.yml")
```