Getting Started
Install
Requires Go 1.24+.
git clone https://codeberg.org/gnoblet/fj-act.git
cd fj-act
make installInstalls to ~/.local/bin/fj-act via go install — no sudo/root needed,
just make sure ~/.local/bin is on your PATH.
Uninstall
Installed from source: rm ~/.local/bin/fj-act (or rm "$(which fj-act)" if you overrode GOBIN/PATH).
Installed via RPM: sudo dnf remove fj-act — same as any other package, nothing left behind.
Your first run
Point fj-act at your workflows
fj-act looks in ./.forgejo/workflows/ by default (override with
-W/--workflows). From the root of a repo that has one:
fj-act --listLists every job it found — id, name, stage, workflow file, triggering events — without touching Docker at all.
Dry-run a job
fj-act --dryrunParses and plans the run, validates expressions and if: conditions, but
never creates a container. Good for catching workflow-syntax mistakes
before waiting on an image pull.
Run it for real
fj-act pushRuns the jobs triggered by a push event. Pass the event name explicitly
(push, pull_request, workflow_dispatch, …) to be sure which jobs
run, or add --detect-event to use the first event type declared in the
workflow file itself. Use -e/--eventpath to feed a real event JSON
payload (branch name, PR number, …) when a workflow’s if: conditions
depend on it.
Everything else
fj-act --help documents every flag with its default; fj-act --man-page
prints the same as a man page; fj-act --list-options prints a
machine-readable JSON dump for tooling. The rest of these docs go deeper
on the flags and behaviors that aren’t self-explanatory from --help
alone — start with Codeberg/Forgejo Compatibility
if you’re wondering what’s actually different about this fork.