punchagan / okra

OKR report aggregation tool

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

okra

Aggregation tool for markdown-based activity reports.

Build Status

okra can:

  • Generate a weekly report stub with your Github activity
  • Lint reports to check they are in the expected format
  • Aggregate weekly reports for multiple engineers and projects

Getting Started

Installation

Install opam if you don't already have it, and add tarides/opam-repository to your list of opam repositories:

Either only to the current opam switch with the command:

opam repository add tarides https://github.com/tarides/opam-repository.git

Or to the list of opam repositories for all opam switches with the command:

opam repository add --all tarides https://github.com/tarides/opam-repository.git

However, note that if you use --all as above, you will then have to instruct opam to also search in that repository in each switch, as the list of repositories opam is considering is switch-specific. Once you are in a given switch, this can be done with:

opam remote set-repos default tarides

where the repositories are listed in search order, i.e. here we ask opam to look in its default repository first and in the tarides repository after that.

Update your list of packages:

opam update

Then you can install okra. If you had it installed previously through pinning simply run:

opam pin remove okra

This will both remove the pinned version and install the new one. You may also need to opam pin remove okra-lib too.

If okra is not installed yet, run:

opam install okra

Usage

For engineers

To generate your last week report:

okra gen

To update your report by rewriting workitems into objectives:

okra cat -C /path/to/admin -e old_weekly.md -o new_weekly.md

To lint your report:

okra lint -e -C /path/to/admin/ report.md

For more details, please refer to the Engineer's Manual.

For team leads

To aggregate engineer reports:

cat magnus.md patrick.md | okra cat --engineer

To lint engineer reports of your team:

okra team lint -C /path/to/admin/ -w 40-41

To aggregate team reports:

cat team1.md team2.md | okra cat --team

To lint a team report:

okra lint -t -C /path/to/admin/ report.md

For more details, please refer to the Team Lead's Manual.

Documentation

The full documentation for okra can be found here.

About

OKR report aggregation tool

License:MIT License


Languages

Language:OCaml 75.8%Language:Perl 23.1%Language:Emacs Lisp 0.6%Language:Vim Script 0.2%Language:Dockerfile 0.1%Language:Makefile 0.1%