0.0.2 • Published 12 months ago
botjam v0.0.2
botjam
Botjam is a simple, declarative, and agent-less system configuration automation tool in TypeScript.
Features
- Ansible-like syntax
- Autocomplete friendly TypeScript
- Declarative syntax
- Fast execution
- Agent-less
Getting Started
First, install it:
pnpm install botjam
Then, write your first configuration. This example sets up a cronjob to remove systemd logs.
// dotfiles.ts
import { botjam } from '../dist'
botjam.configure({
servers: ['localhost'],
})
for (const dotfile of ['.tmux.conf', 'prettier.config.js']) {
botjam.tasks.file({
src: `~/.dotfiles/home/${dotfile}`,
dest: `~/${dotfile}`,
state: 'link',
})
}
botjam.run()
Running that script will configure server and the output should be like this:
✔ [1/2] Ensure file existence of: .tmux.conf
ℹ ==> CHANGED 8:02:53 PM
✔ [2/2] Ensure file existence of: prettier.config.js
ℹ Cleaning up... 8:02:53 PM
✔ Success! 8:02:53 PM
TODO
- Add more core modules
- Remote file controls
- Secrets management
- Extra vers on runtime