wait-database-cli

command module
v0.0.0-...-4646fa7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 10, 2025 License: MIT Imports: 13 Imported by: 0

README

wait-database-cli

CLI tool to wait for MySQL / PostgreSQL server to be up and running

Features

  • Supports both MySQL and PostgreSQL databases
  • Configurable via command-line flags or environment variables
  • Optional query execution after connection is established
  • Timeout configuration (default: 10 minutes)
  • Support for SOCKS proxy (MySQL only)

Installation

go install github.com/evalphobia/wait-database-cli@latest

Usage

Command Line Flags
  • -type: Database type (mysql or postgresql, default: mysql)
  • -host: Database host
  • -port: Database port (default: 3306 for MySQL, 5432 for PostgreSQL)
  • -user: Database user (default: root for MySQL, postgres for PostgreSQL)
  • -password: Database password
  • -database: Database name
  • -query: SQL query to execute after connection
Environment Variables
  • WAIT_DATABASE_TYPE: Database type
  • WAIT_DATABASE_HOST: Database host
  • WAIT_DATABASE_PORT: Database port
  • WAIT_DATABASE_USER: Database user
  • WAIT_DATABASE_PASSWORD: Database password
  • WAIT_DATABASE_DATABASE: Database name
  • WAIT_DATABASE_QUERY: SQL query to execute
Examples
MySQL
# Using command line flags
wait-database-cli -type mysql -host localhost -port 3306 -user root -password mypassword -database mydb

# Using environment variables
export WAIT_DATABASE_TYPE=mysql
export WAIT_DATABASE_HOST=localhost
export WAIT_DATABASE_USER=root
export WAIT_DATABASE_PASSWORD=mypassword
export WAIT_DATABASE_DATABASE=mydb
wait-database-cli

# With query execution
wait-database-cli -type mysql -host localhost -database mydb -query "SELECT VERSION()"
PostgreSQL
# Using command line flags
wait-database-cli -type postgresql -host localhost -port 5432 -user postgres -password mypassword -database mydb

# Using environment variables
export WAIT_DATABASE_TYPE=postgresql
export WAIT_DATABASE_HOST=localhost
export WAIT_DATABASE_USER=postgres
export WAIT_DATABASE_PASSWORD=mypassword
export WAIT_DATABASE_DATABASE=mydb
wait-database-cli

# With query execution
wait-database-cli -type postgresql -host localhost -database mydb -query "SELECT version()"

Docker

The tool is available as a Docker image:

docker run -e WAIT_DATABASE_TYPE=mysql -e WAIT_DATABASE_HOST=127.0.0.1 -e WAIT_DATABASE_USER=root -e WAIT_DATABASE_PASSWORD=pass --rm evalphobia/wait-database-cli

License

MIT

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL