compose-to-intellij

|
Command line application to convert Docker Compose environment variables to IntelliJ format.
|
Intro
compose-to-intellij converts environment variables configured in compose files to the string
format used by iDEA products such as IntelliJ or WebStorm. Compose environment variables are set using the
environment key as part of service declarations. compose-to-intellij will output an IntelliJ environment
variable string for each service configured in thecompose file. Optional arguments of compose service names can be
passed to filter the output.
Contents
Installation
compose-to-intellij can be installed either with Homebrew, built from source, or downloaded from
GitHub as a GitHub release asset.
Homebrew
compose-to-intellij can be installed with Homebrew either by tapping j-r-oliver/tools
and then installing the formulae...
brew tap j-r-oliver/tools
brew install compose-to-intellij
...or installing directly from the tap.
brew install j-r-oliver/tools/compose-to-intellij
From Source
To start clone the repository to your local machine. The following command will build a native executable and output
it to /dist:
go build -o dist/compose-to-intellij cmd/compose-to-intellij/main.go
Arguments
Optional arguments can be passed after any options to filter the output. These arguments should match the service
keys defined in the compose file. For Example:
compose-to-intellij application database
Options
compose-to-intellij has a handful of options. These options can be used to override the defaults that have been
provided. For example:
compose-to-intellij -i ./build/docker-compose.build.yaml
Command Line Options
The following command line options are available for configuration:
| Option |
Default |
Description |
| -i, --input <input> |
./openapi-validator-report.json |
filepath for docker-compose YAML file |
| -v, --version |
|
output the version number |
| -h, --help |
|
display help for command |
Local Development
Prerequisites
To install and modify this project you will need to have:
Installation
To start, please fork and clone the repository to your local machine.
Testing
All tests have been written using the testing package from the
Standard library. To run the tests execute:
go test -v ./...
Code coverage is also measured by using the testing package. To run tests with coverage execute:
go test -coverprofile=coverage.out ./...
Conventional Commits
This project uses the Conventional Commits specification for commit
messages. The specification provides a simple rule set for creating commit messages, documenting features, fixes, and
breaking changes in commit messages.
A pre-commit configuration file has been provided to automate
commit linting. Ensure that pre-commit has been installed and
execute...
pre-commit install
...to add a commit Git hook to your local machine.
An automated pipeline job has been configured to lint commit messages on a push.
GitHub Actions
A CI/CD pipeline has been created using GitHub Actions to automated tasks such as
linting and testing.
Build Workflow
The build workflow handles integration tasks. This workflow consists of two jobs, Git
and Go, that run in parallel. This workflow is triggered on a push to a branch.
Git
This job automates tasks relating to repository linting and enforcing best practices.
Go
This job automates Go specific tasks.