* add script for tooling * add to make * not to forget * reworked go tools * add tool installation script * adding readme * updating readme * updating readme * cleanup install.sh and makefile * update the readme file * cleanup scripts * switch variables.mk to lazy evaluation * add tools ache to gitignore * get rid of absolute path in hte Variables.mk file * switch to reusable function for path generation * add debug statements * add create cache tool dir * add debuig statements to make file * drop tool cache * fix race condition n ci * fix race condition n ci * cleanup workspace * add lefthook.rc to codeowners * copy .citools folder to docker image * switch back to main branch of grafana-build * Add .citools to the drone builder * fix wording in generate.sh and README.md
42 lines
1000 B
Markdown
42 lines
1000 B
Markdown
## API
|
|
|
|
### Adding and Upgrading Tools
|
|
|
|
To add a new tool, execute the installation script:
|
|
|
|
```bash
|
|
install.sh <tool>
|
|
```
|
|
|
|
#### Example
|
|
|
|
The following command will add `lefthook` to the tracked tools if it is not already installed, or update its version:
|
|
|
|
```bash
|
|
install.sh github.com/evilmartians/lefthook@v1.11.10
|
|
```
|
|
|
|
Behind the scenes, the script performs a few simple steps:
|
|
|
|
- Creates a Go module under the `.citools/src/<toolname>` directory to track the tool version and its dependencies.
|
|
- Creates a reference to the tool binary in the `.citools/Variables.mk` file.
|
|
|
|
### Using Tools in the Makefile
|
|
|
|
Our Makefile imports `.citools/Variables.mk`, so you can call a tool binary using standard Make syntax.
|
|
|
|
#### Example
|
|
|
|
```make
|
|
run:
|
|
$(bra) run
|
|
```
|
|
|
|
### Using Tracked Tools Without the Makefile
|
|
|
|
If you want to use a tool outside of the Makefile, you can locate the tool binary by executing the following command:
|
|
|
|
```bash
|
|
GOWORK=off go tool -n -modfile=<path_to_modfile> <toolname>
|
|
```
|