A tool to simplify everyday tasks for the common corporate programmer.
In other words:
-
Coworker: "Can you help me out here real quick?"
You: "Sure, just gimme the name of your repo and I'll
fu
me the source. Did you know I hate browsing code via web?" -
You without
fu
: "Damn, why do I need to click this friggin build job again?" scrolls through pages of jenkins jobs...You with
fu
: "Easy, i can filter the list in my terminal. Oh, wait, I'll justCtrl
R
it."
furbnicator consists of various (ok, more than one) modules, each supporting a distinct system or task. Each module provides a list of actions and batarang is in the end not much more than a simple interface to search & execute the tasks provided by all activated modules.
The bitbucket server module can index repositories from bitbucket.org. Especially handy if you regularly need to browse or clone repositories. If you work with a single repo most of the time, this module might not help you very much.
This module supports notifications.
- Clone repositories
- Browse repositories
The jenkins meodule can index the jobs in a single jenkins installation.
This module supports notifications.
- Run jobs
- Browse jobs
- Browse Job after it is run
- Download artefacts after job is run
Displays the current unix or java timestamp.
furbnicator can send notifications eg. when it finds a new bitbucket repository.
Sends notifications about changes in other modules via email.
Sends notifications about changes in other modules via MS Teams.
This module is deprecated since atlassian eol'ed the on premise version of bitbucket.
The bitbucket server module can index repositories from a single bitbucket server installation. Especially handy if you regularly need to browse or clone repositories. If you work with a single repo most of the time, this module might not help you very much.
- Clone repositories
- Browse repositories
tbd.
It puts the executable in the $PATH. Mac users might want to rename the file.
Create a file ~/.config/furbnicator/furbnicator.yaml
. Please see
example_furbnicator.yaml for details.
fu -h
get helpfu -u
update data. Run this periodically to keep up to date with remote data (like available repositories)fu
show all available actions. Select ohne with the arrow keys. Press enter to run selected action. Cancel viaCtrl
+C
fu any text
only show actions with tags containing "any" and "text"fu +any text
only show actions with a tag starting with "any" and a tag containing "text"fu +any text+
only show actions with a tag starting with "any" and a tag ending with "text"
If your search terms lead to only one possible action, you will be prompted to
run the action immediately. Use -l
(feeling lucky) to skip this promt:
fu -l +clone analyzer
clone the repo containing "analyzer" right away - but only if there is just one.
The RobinModule will support external task definitions e.g. shell scripts. You might wonder why you need a task runner to run shell scripts if you already have ... a shell. Well, don't ask me :D
People will never take us seriously without this ;)
- mpris would work without much hassle, but only on linux
- web api would work cross platfrom, but isn't fun because authorization
- go with mpris. if anyone wants windows/mac, they can open pr with scripting solutions
go build
- I tried to bang out a golang project as fast as I could without knowing much about the language before. Code quality wasn't a concern.
- I never tested this on macOS or windows.
EUPL-1.2