@informaticon/devops.sql-script-runner
v2.1.10
Published
CLI to automatically run scripts in CI/CD environments and to automatically initialize new databases and users.
Downloads
41
Keywords
Readme
SQL script runner
CLI to automatically run scripts in CI/CD environments and to automatically initialize new databases and users.
Currently only availabe for MySQL databases.
Installation
npm i @informaticon/devops.sql-script-runner
./node_modules/.bin/ssr --version
Usage
CLI
ssr --database test --user test --password test
This will connect to the default mysql port on localhost and run the necessary scripts form ./scripts
.
Configuration
| Option | CLI switch | ENV variable | Defaults | | ------------------------ | ----------------------------------- | --------------------------- | ----------- | | DB database | --database | SSR_DB_DATABASE | | | DB user | --user | SSR_DB_USER | | | DB password | --password | SSR_DB_PASSWORD | '' | | DB host | --host | SSR_DB_HOST | 'localhost' | | DB port | --port | SSR_DB_PORT | 3306 | | DB socket path | --socket-path | SSR_DB_SOCKET_PATH | | | GCS proxy | --gcs-proxy | SSR_GCS_PROXY | | | GCS standalone proxy | --gcs-proxy-standalone | SSR_GCS_PROXY_STANDALONE | | | GCS proxy timeout | --gcs-proxy-timeout | SSR_GCS_PROXY_TIMEOUT | 300000 | | Script directory | --script-dir | SSR_SCRIPT_DIRECTORY | './scripts' |
CLI switches will be used priror to ENV variables and paths will be resolved relative to the working directory.
You can use a .env
file to configure your environment as well.
Initialization
IMPORTANT Make sure you save the generated password!
To initialize a new database and user use the --init
option.
The given user must have the privileges to create databases and users.
Please use this option only locally on your system!
ssr --database test --user root --password "YOUR_ROOT_PW" --init
The following lines should be printed on success
Database test created
User test created
PLEASE SAVE YOUR NEW PASSWORD: YOUR_NEW_PASSWORD
Google Cloud SQL
The script runner has built in support for proxying to a Google Cloud SQL database.
To use this functionality use --gcs-proxy
ssr --database test_db --user root --password "YOUR_ROOT_PW" --gcs-proxy informaticon-devops:europe-west1:devops --init
Standalone
The proxy can be used in standalone mode as well to use it with any given sql tool.
ssr --gcs-proxy-standalone informaticon-devops:europe-west1:devops