{"id":23708524,"url":"https://github.com/bigblueswarm/bbsctl","last_synced_at":"2026-02-04T16:30:16.337Z","repository":{"id":41965841,"uuid":"462027076","full_name":"bigblueswarm/bbsctl","owner":"bigblueswarm","description":"A cli tool that let you control bigblueswarm clusters","archived":false,"fork":false,"pushed_at":"2023-04-13T18:59:16.000Z","size":9195,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-12-30T17:57:13.892Z","etag":null,"topics":["bbb","bigbluebutton","bigblueswarm","cli","cluster","golang","loadbalancer"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bigblueswarm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-02-21T20:48:55.000Z","updated_at":"2022-12-27T18:37:11.000Z","dependencies_parsed_at":"2024-06-21T10:08:44.743Z","dependency_job_id":null,"html_url":"https://github.com/bigblueswarm/bbsctl","commit_stats":null,"previous_names":["sledunois/b3lbctl"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigblueswarm%2Fbbsctl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigblueswarm%2Fbbsctl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigblueswarm%2Fbbsctl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigblueswarm%2Fbbsctl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bigblueswarm","download_url":"https://codeload.github.com/bigblueswarm/bbsctl/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239793107,"owners_count":19697892,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bbb","bigbluebutton","bigblueswarm","cli","cluster","golang","loadbalancer"],"created_at":"2024-12-30T17:57:29.587Z","updated_at":"2026-02-04T16:30:16.257Z","avatar_url":"https://github.com/bigblueswarm.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n\u003cimg src=\"assets/bbsctl.png\" alt=\"logo\" /\u003e\n\u003c/p\u003e\n\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/1958ff373bdb47659cb97888992b322b)](https://www.codacy.com/gh/bigblueswarm/bbsctl/dashboard?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=bigblueswarm/bbsctl\u0026amp;utm_campaign=Badge_Grade)\n[![Codacy Badge](https://app.codacy.com/project/badge/Coverage/1958ff373bdb47659cb97888992b322b)](https://www.codacy.com/gh/bigblueswarm/bbsctl/dashboard?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=bigblueswarm/bbsctl\u0026utm_campaign=Badge_Coverage)\n[![Code linting](https://github.com/bigblueswarm/bbsctl/actions/workflows/lint.yml/badge.svg)](https://github.com/SLedunois/b3lbctl/actions/workflows/lint.yml)\n[![Unit tests](https://github.com/bigblueswarm/bbsctl/actions/workflows/unit_test.yml/badge.svg)](https://github.com/SLedunois/b3lbctl/actions/workflows/unit_test.yml)\n![GitHub go.mod Go version](https://img.shields.io/github/go-mod/go-version/bigblueswarm/bbsctl)\n![GitHub](https://img.shields.io/github/license/bigblueswarm/bbsctl)\n\nThe bbsctl command line tool lets you control [BigBlueSwarm](https://github.com/bigblueswarm/bigblueswarm) clusters.\n\nFor 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.\n\n## Installation\n\nDownload last release from [release page](https://github.com/bigblueswarm/bbsctl/releases).\n\nCopy the binary into `/usr/local/bin`.\n\n## Usage\n\n```bash\nManage your BigBlueSwarm cluster from the command line\n\nUsage:\n  bbsctl \u003ccommand\u003e [flags]\n  bbsctl [command]\n\nAvailable Commands:\n  apply        Apply a configuration to bigblueswarm server using a file\n  cluster-info Get overall cluster information\n  completion   Generate the autocompletion script for the specified shell\n  delete       Delete a specific resource\n  describe     Show details of a specific resource or group of resources\n  get          Display a resource\n  help         Help about any command\n  init         Initialize a resource\n\nFlags:\n      --config string   config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default \"$HOME/.bigblueswarm/.bbsctl.yml\")\n  -h, --help            help for bbsctl\n\nUse \"bbsctl [command] --help\" for more information about a command.\n```\n\nSee the [documentation](docs/bbsctl.md) for more details.\n\n### Init configuration\nUse `b3lbctl init config` to initialize `b3lbctl` configuration.\n```bash\nCreate bbsctl if not exists and initialize a basic configuration\n\nUsage:\n  bbsctl init config [flags]\n\nFlags:\n  -b, --bbs string    BigBlueSwarm url\n  -d, --dest string   Configuration file folder destination (default \"$HOME/.bigblueswarm\")\n  -h, --help          help for config\n  -k, --key string    BigBlueSwarm admin api key\n```\n\u003ca href=\"https://asciinema.org/a/2qz4H250QCzMCbioMqEsnkuVE\" target=\"_blank\"\u003e\u003cimg src=\"https://asciinema.org/a/2qz4H250QCzMCbioMqEsnkuVE.svg\" height=\"300\" /\u003e\u003c/a\u003e\n\n\n### Manage instances\n`bbsctl` provide some command to manage your cluster instances:\n- `bbsctl init instances` that create instances file if it does not exists\n```bash\nCreate instances list file if it does not exists\n\nUsage:\n  bbsctl init instances [flags]\n\nFlags:\n  -d, --dest string   File folder destination (default \"$HOME/.bigblueswarm\")\n  -h, --help          help for instances\n```\n- `b3lbctl apply -f instances.yml`\n```bash\nApply a configuration to bigblueswarm server using a file\n\nUsage:\n  bbsctl apply -f [filepath] [flags]\n\nFlags:\n  -f, --file string   resource file path\n  -h, --help          help for apply\n\nGlobal Flags:\n      --config string   config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default \"$HOME/.bigblueswarm/.bbsctl.yml\")\n```\n- `b3lbctl get instances` display all BigBlueButton instances found in your B3lb cluster\n```bash\nDisplay all BigBlueButton instances available in your BigBlueSwarm cluster\n\nUsage:\n  bbsctl get instances [flags]\n\nFlags:\n  -c, --csv    csv output\n  -h, --help   help for instances\n  -j, --json   json output\n\nGlobal Flags:\n      --config string   config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default \"$HOME/.bigblueswarm/.bbsctl.yml\")\n```\n\u003ca href=\"https://asciinema.org/a/nlueByPpY8E9g7DElk85jRcqH\" target=\"_blank\"\u003e\u003cimg src=\"https://asciinema.org/a/nlueByPpY8E9g7DElk85jRcqH.svg\" height=\"300\" /\u003e\u003c/a\u003e\n\n### Manage tenants\nB3lb is a multi tenant load balancer and `b3lbctl` offer tools to manage tenants.\n- `b3lbctl init tenant` initialize a tenant file\n```bash\nInitialize a new bigblueswarm tenant configuration file if not exits\n\nUsage:\n  bbsctl init tenant [flags]\n\nFlags:\n  -d, --dest string   File folder destination (default \"$HOME/.bigblueswarm\")\n  -h, --help          help for tenant\n      --host string   Tenant hostname\n```\n- `b3lbctl apply -f tenant.yml`\n```bash\nApply a configuration to bigblueswarm server using a file\n\nUsage:\n  bbsctl apply -f [filepath] [flags]\n\nFlags:\n  -f, --file string   resource file path\n  -h, --help          help for apply\n\nGlobal Flags:\n      --config string   config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default \"$HOME/.bigblueswarm/.bbsctl.yml\")\n```\n- `b3lbctl get tenants` display all tenants found in B3lb cluster\n```bash\nDisplay all BigBlueSwarm tenants available in your BigBlueSwarm cluster\n\nUsage:\n  bbsctl get tenants [flags]\n\nFlags:\n  -c, --csv    csv output\n  -h, --help   help for tenants\n  -j, --json   json output\n\nGlobal Flags:\n      --config string   config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default \"$HOME/.bigblueswarm/.bbsctl.yml\")\n```\n- `b3lbctl describe tenant` describe a tenant\n```bash\nDescribe a given BigBlueSwarm tenant.\n\nUsage:\n  bbsctl describe tenant \u003chostname\u003e [flags]\n\nFlags:\n  -h, --help   help for tenant\n\nGlobal Flags:\n      --config string   config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default \"$HOME/.bigblueswarm/.bbsctl.yml\")\n```\n\u003ca href=\"https://asciinema.org/a/gB55DijzRQCl40or7bgpa3sv5\" target=\"_blank\"\u003e\u003cimg src=\"https://asciinema.org/a/gB55DijzRQCl40or7bgpa3sv5.svg\" height=\"300\" /\u003e\u003c/a\u003e\n\n### Check your cluster\n`b3lbctl` let you monitor your cluster using `cluster-info` command.\n```bash\nGet overall cluster information. It display all instances with %CPU, %MEM, Active meetings, Active paricipants and API status\n\nUsage:\n  bbsctl cluster-info [flags]\n\nFlags:\n  -h, --help   help for cluster-info\n\nGlobal Flags:\n      --config string   config file (default is $HOME/.bigblueswarm/.bbsctl.yml) (default \"$HOME/.bigblueswarm/.bbsctl.yml\")\n``` \n\u003ca href=\"https://asciinema.org/a/Nqec46FDprZpUzbP43oa940Xb\" target=\"_blank\"\u003e\u003cimg src=\"https://asciinema.org/a/Nqec46FDprZpUzbP43oa940Xb.svg\" height=\"300\" /\u003e\u003c/a\u003e\n\n### Check B3lb configuration\n`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.\n```bash\ndescribe B3LB configuration.\n\nUsage:\n  b3lbctl describe config [flags]\n\nFlags:\n  -h, --help   help for config\n\nGlobal Flags:\n      --config string   config file (default is $HOME/.b3lb/.b3lbctl.yml) (default \"$HOME/.b3lb/.b3lbctl.yml\")\n```\n\u003ca href=\"https://asciinema.org/a/idAmn6AjWZIh77x1oWcaK8Yiv\" target=\"_blank\"\u003e\u003cimg src=\"https://asciinema.org/a/idAmn6AjWZIh77x1oWcaK8Yiv.svg\" height=\"300\" /\u003e\u003c/a\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbigblueswarm%2Fbbsctl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbigblueswarm%2Fbbsctl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbigblueswarm%2Fbbsctl/lists"}