Buddy CLI

Installing Buddy self-hosted also installs the Buddy CLI. The CLI is used to operate, manage, and configure your self-hosted installation.

Basic commands

Warning
All commands listed in the article must be run as root.
  • buddy start – starts the application
  • buddy stop – stops the application
  • buddy restart – restarts the application
  • buddy configure – configures the application
  • buddy feedback – sends feedback to Buddy customer support
  • buddy version – shows the CLI and Buddy self-hosted version
  • buddy terms – shows the Buddy self-hosted Software License Agreement

CLI configuration options

When you run buddy configure, the CLI shows the options listed below. To configure an option, type the corresponding number and press Enter.

  1. Exit configuration
  2. Custom domain – sets a custom domain used to access Buddy self-hosted through the browser.
  3. Custom domain SSL certificate – sets a valid SSL certificate for the custom domain.
  4. Application data path – moves the application data to a different partition or disk.
  5. IP & ports – sets the connection IP's and ports:

    • external IP – used to access the instance through the browser
    • server IP – the IP address to which the application is bound; by default, all application interfaces are bound to this address
    • HTTPS port (default: 443)
    • HTTP port (default: 80)
    • Git SSH port (default: 22)
  6. Generate workspace owner password
    • generates a one-day token that can be used instead of the owner's password. This token can also be used to bypass the SSO login requirement.
  7. Concurrent executions limit – limits the number of pipelines that can run at the same time.
  8. Parallel actions limit – limits the number of actions that can run at the same time within one pipeline.
  9. SMS serviceconfigures SMS messages sent by Amazon AWS as notifications.
  10. Repo max file size – sets the maximum size of files you can push to a repository when using Buddy Git Hosting.
  11. HAProxy ciphers – changes HAProxy ciphers to customize security policies for connected clients.
  12. Application memory management – adjusts the amount of memory used by the application's components.
  13. API requests limit – adjusts the rate limits for accessing resources. By default, users can make 1000 requests to a resource every 15 minutes.
  14. Telemetryenables or disables telemetry.
  15. Pipelines worker assignment – specifies if pipelines are automatically re-assigned to a different worker if the worker vCPU load exceeds 100%.
Success
The memory and CPUs available for your pipelines are managed per worker. This also applies to the main instance of Buddy self-hosted (the default worker). The full list of parameters is available in the worker configuration documentation.

Advanced commands

  • buddy [--yes] [--full] backup – creates a backup of the app. Use the --yes flag to create a backup without the need for user interaction and delete old backups. Use the --full flag to include the cache in the backup.
  • buddy [--yes] restorerestores application from a backup file. Use the --yes flag to use the latest backup available to the system.
  • buddy clear-cache – clears the Docker cache (docker prune), filesystems, and DinD disk contents.
  • buddy status – shows the status of the application and its components.
  • buddy diagnose – runs diagnostics on your installation. Shows tips for fixing problems it finds.
  • buddy [--yes] update – shows if a new version of the app or the CLI is available and provides installation instructions. Use the --yes flag to automatically download and apply available updates.
  • buddy [--yes] uninstall – uninstalls Buddy self-hosted. The CLI must be removed manually. Use the --yes flag to do it without requiring user interaction.
  • buddy set – configures integrations and system resources through the CLI. Run the command to get the full list of things you can configure.
  • buddy fix-mysql – fixes MySQL issues. Run only when buddy diagnose tells you to do so.
  • buddy install-worker – installs a new worker for your instance through a CLI wizard.

List of parameters for buddy set

Hint
Run buddy set {INTEGRATION_NAME} to learn more about configuring the selected integration.
ParameterDescription
azureAzure integration
aws-roleAWS role assumption credentials
bitbucketBitbucket integration
certcustom domain SSL certificate
datapathapplication data path
digitaloceanDigitalOcean integration
dockerhubDocker Hub integration
domaincustom domain
githubGitHub OAuth integration
githubappGitHub Apps integration
githubenterpriseGitHub Enterprise integration
githubenterpriseappGitHub Enterprise Apps integration
gitlabGitLab integration
gitlabenterpriseGitLab Enterprise integration
googleGoogle integration
haproxyHAProxy ciphers
herokuHeroku integration
ipsandportsapplication IP addresses & ports
languageapplication language
ldapLDAP integration
leLet's Encrypt custom domain SSL certificate
licenseapplication license
limitsapplication build resource limits
logs-limitaction logs limit
netlifyNetlify integration
pinpointAWS Pinpoint integration (SMS)
pushbulletPushbullet integration
secretapplication secret key
sessionapplication session secret
shopifyShopify integration
slackSlack integration
smtpemail sending
snsAWS SNS integration (SMS)
telegramTelegram integration
telemetryenable / disable sending telemetry data

List of options for limits parameter

  • --repomaxsize value – the maximum size of a file in the repository. Default: 0 (unlimited).
  • --executions value – the maximum number of pipelines running concurrently at one time. Default: 0 (unlimited).
  • --actions value – the maximum number of actions running in parallel at one time. Default: 0 (unlimited).
  • --apiLimit value – the maximum number of API requests per user per hour. Default: 0 (unlimited).
  • --reset – resets the value of all options to default.

Last modified on Oct 16, 2024