https://github.com/object88/bbreloader
https://github.com/object88/bbreloader
golang
Last synced: 12 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/object88/bbreloader
- Owner: object88
- Created: 2017-04-07T03:22:48.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2017-07-02T18:20:41.000Z (almost 9 years ago)
- Last Synced: 2025-03-24T12:22:50.765Z (about 1 year ago)
- Topics: golang
- Language: Go
- Size: 3.73 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Reloader
Reloader is a local continuous build and integration tool.
Reloader watches your source code for changes. When a change is detected, it will rebuild the code and runs either the tests or the project.
Reloader is written with Golang projects in mind, but can be adapted to work for other languages or toolsets by overwriting certain default configurations.
Configuration file example:
``` JSON
{
"projects": [{
"root": ".",
"target": "./bin/bbreloader",
"build": {
"pre-build-steps": [],
"args": "",
"post-build-steps": [{
"command": "chmod",
"args": ["744", "./bin/bbreloader"]
}, {
"command": "codesign",
"args": "-s $CERT ./bin/bbreloader",
}]
},
"test": {
"args": "",
"restart-trigger-glob": "*_test.go",
},
"run": {
"args": "",
"retain": true,
"rebuild-trigger-glob": "**/*.go, !**/*_test.go",
"restart-trigger-glob": "*.json",
},
}]
}
```
## `projects`
An array of [projects](#Project)
## Project
* `root`
* `target` (optional)
* `build`
* `test`
* `run`
# Examples
## Rebuild and run tests
Command:
`rebuilder test`
``` JSON
{
"projects": [{}]
}
```
## Rebuild and restart a server when any `.go` file changes
``` JSON
{
"projects": [{
"target": "./bin/myservice",
"run": {
"retain": true,
"rebuild-trigger-glob": "**/*.go",
},
}]
}
```
# Reloader is not...
A substitute for `npm`, `grunt`, `gulp`, or other multi-purpose tools. Reloader will not install your dependencies, clean up your artifacts, or commit your code to a source code repository.
# What other tools are there?
* `watcher`
* `gradle` / `grunt` / `gulp` / `npm`
* Whatever that tool was in the gopher meetup