1.7.3 • Published 7 months ago

@golemio/cli v1.7.3

Weekly downloads
-
License
MIT
Repository
gitlab
Last release
7 months ago

pipeline status coverage report

Golemio CLI

Golemio CLI is a collection of executables intended for use with Golemio services and modules

Install the CLI

Prerequisites

Install locally (recommended)

$ cd my-project

# With Yarn
$ yarn add --dev @golemio/cli
# For Portman support, run yarn add --dev @apideck/portman@^1.16.1

# With npm
$ npm install --save-dev @golemio/cli
# For Portman support, run npm install --save-dev @apideck/portman@^1.16.1

# Test it out
$ yarn golemio
$ npm exec golemio

Install globally

# With Yarn
$ yarn global add @golemio/cli

# With npm
$ npm install -g @golemio/cli

# Test it out
$ golemio

Commands summary

CommandDescription
golemioDefault command (welcome)
golemio helpView available commands
golemio migrate-db helpView available migration commands and flags
golemio migrate-db create \<name>Create new migration scripts (--postgres)
golemio migrate-db upExecute up migrations (--postgres)
golemio migrate-db downExecute down migrations (--postgres)
golemio migrate-db resetReset all executed migrations (--postgres)
golemio import-db-data helpView available db data import commands and flags
golemio import-db-dataImport db data (--dangerous, --postgres)
golemio rabbitmq helpView available rabbitmq commands and flags
golemio rabbitmq send --helpView available rabbitmq send flags
golemio rabbitmq receive --helpView available rabbitmq receive flags
golemio release helpView available commands
golemio release check-modules-integrityCheck module group if new repo was added
golemio release checkCheck repos that are ready to release (--scope, --skip or --only, --interactive)
golemio release mergeMerge repos marked as release candidate by check command (--scope, --skip or --only, --interactive)
golemio release check-mr-pipelinesShow pipelines of merged repos (--scope, --skip or --only, --interactive)
golemio release sync-branchesSynchronize branches after release (--scope, --skip or --only, --interactive)
golemio release create-tagsCreate tags and releases of merged repos (--scope, --skip or --only, --interactive)
golemio release print-release-issuePrint issues and release candidate modules
golemio swagger helpView available swagger commands and flags
golemio swagger generateGenerate OAS file from multiple inputs
golemio swagger api-testRun Portman integration tests
golemio asyncapi generateMerge asyncapi documentation

Read release_management_CZ for more info to release command.

Environmental variables

VariableExampleRequired
POSTGRES_CONNpostgres://oict:oict-pass@localhost/oict-test:white_check_mark: (mdb and idd postgres)
RABBIT_CONNamqp://rabbit:pass@localhost:white_check_mark: (rmq)
POSTGRES_MIGRATIONS_DIRdb/migrations/postgresql (default):negative_squared_cross_mark:
SQL_DUMP_FILESdb/example/*.sql:white_check_mark: (idd postgres)
GITLAB_API_TOKENtoken:white_check_mark: (rls)
RELEASE_BRANCH_NAMErelease:negative_squared_cross_mark: (rls) default: release
TARGET_BRANCH_NAMEmaster:negative_squared_cross_mark: (rls) default: master

The value of the variable GITLAB_API_TOKEN should be created in GitLab User Settings page Access Tokens. Token scopes are api, read_repository and write_repository.

Development

Local environment

To set up your local development environment, install project dependencies and create .env file in the root of the project (see .env.template for reference)

$ npm install
$ cp .env.template .env

Now you can run the CLI in development mode, just type

$ ./bin/golemio.js

You don't need to compile the source code as the script automatically registers the ts-node loader in development mode

Unit tests

Unit tests are located at test/unit. You can run them by typing

$ npm run test-unit

Integration tests

Integration tests are located at test/integration. You can run them by typing

# Run local services, recommended
$ docker-compose up -d

$ npm run test-integration

License

MIT

1.7.3

7 months ago

1.7.2

7 months ago

1.7.1

8 months ago

1.7.0

9 months ago

1.6.3

9 months ago

1.6.1

10 months ago

1.6.0

10 months ago

1.4.6

2 years ago

1.4.5

2 years ago

1.4.4

2 years ago

1.5.0

2 years ago

1.4.3

2 years ago

1.4.2

2 years ago

1.4.1

2 years ago

1.4.0

2 years ago

1.3.3

3 years ago

1.3.2

3 years ago

1.3.1

3 years ago

1.3.0

3 years ago

1.2.2

3 years ago

1.2.1

3 years ago

1.2.0

4 years ago

1.1.1

4 years ago

1.1.0

4 years ago

1.0.3

4 years ago

1.0.2

4 years ago