Groolp is a Go-based task runner that simplifies development workflows. By using easy YAML task definitions and dynamic Lua scripts, it automates builds, tests, and deployments seamlessly across platforms. With built-in file watching and dependency management, Groolp ensures tasks run efficiently without hassle.
Groolp (aka Groovy Gulp) is an innovative task automation tool that simplifies development workflows by leveraging a Gulp-like task runner approach. Built in Go, Groolp enables developers to automate essential tasks such as building, testing, and deploying projects with minimal effort. It features a user-friendly YAML configuration file for task definitions and empowers users to extend functionality using dynamic Lua scripts, catering to both simple and complex project requirements.
tasks.yaml file. Define commands and dependencies effortlessly, while advanced tasks can utilize Lua scripts with built-in functions such as run_command, set_data, and get_data.tasks.yaml or Lua scripts, enabling the creation of well-structured workflows. Groolp automatically detects and avoids circular dependencies, ensuring reliability..groolp directory per project.Here is a basic example of task definitions in your tasks.yaml file:
tasks:
build:
command: go build -o myapp .
description: Build the application
watch:
- "*.go"
- "go.mod"
- "go.sum"
test:
command: go test ./...
description: Run tests
depends:
- build
lint:
command: golangci-lint run
description: Run linter
depends:
- build
The following Lua script demonstrates how to implement advanced logic:
function run()
local last_run = get_data("last_run")
if last_run then
print("Last run: " .. last_run)
end
local result = run_command("go version")
print("Go version: " .. result)
set_data("last_run", os.date())
if some_condition then
run_command("go build -o myapp .")
end
end
Groolp significantly enhances development workflows, from live reload servers to comprehensive build pipelines:
Groolp offers developers a powerful and flexible solution for task automation, simplifying project management and enhancing efficiency. By embracing Groolp, developers can focus on writing exceptional code while effortlessly managing their development processes.
No comments yet.
Sign in to be the first to comment.