vnetod/README.md

102 lines
2.1 KiB
Markdown

# vnetod*
<small><strong>*</strong> inverted word "dotenv"</small>
Are you still switching sections in your dotenv file manually? Try this dotenv
section switcher!
You can create many sections in your `.env` and switch between them.
Rules:
- Section name starts on a new line with `###` symbols (Ex. `### local`)
- Section can contain multiple comma-separated names (Ex.
`### local,staging`)
- Each section name may specify a namespace (Ex. `### debug:on,dev:on`). If a
section doesn't contain a namespace, it's a global namespace.
- Section ends if line is empty or contains a new section name.
You can see the [full example].
[full example]: https://git.pleshevski.ru/pleshevskiy/vnetod/src/branch/main/.env.example
# Usage
Basic usage
```sh
cp .env.example .env
vnetod local # enable local section
vnetod staging # enable staging section
vnetod local debug # enable local and debug sections
vnetod # disable all sections
```
This tool uses `.env` from your current location, but you can change this
behavior with the `-f` (`--file`) flag.
```sh
cp .env.example .env.properties
vnetod -f .env.properties local
```
And you can also change the output file with the `-o` (`--output`) flag, if you
don't want to overwrite the input file.
```sh
vnetod -f .env.example -o .env local
```
You can also use variables from namespaces
```sh
vnetod db:staging debug:off
```
You can switch between states and overwrite from namespaces at the same time.
```sh
vnetod local db:staging debug:off
```
For more information, see the help.
```sh
vnetod --help
```
# Install
## Cargo
```sh
cargo install vnetod
```
## Docker
```sh
docker run --rm -it -v $PWD:/data pleshevskiy/vnetod --help
```
## Nix
```sh
nix run git+https://git.pleshevski.ru/pleshevskiy/vnetod -- --help
```
# Contact me
- [send feedback](https://github.com/pleshevskiy/vnetod/discussions)
- [make an issue](https://github.com/pleshevskiy/vnetod/issues)
- matrix: @pleshevskiy:matrix.org
- email: dmitriy@pleshevski.ru
# License
GNU General Public License v3.0 or later
See [COPYING] to see the full text.
[COPYING]: https://git.pleshevski.ru/pleshevskiy/vnetod/src/branch/main/COPYING