No, not that kind of olivetin, this one :-P

OliveTin is a simple web UI that can be configured via yaml to run cli commands. You add a section such as

actions:
- title: Restart backend
  icon: restart
  shell: docker restart main-backend

and in its UI you’ll find an icon with your title that, once pressed, will execute the shell command you specifed. You can even add arguments

- title: Ping host
  shell: ping {{ host }}
  icon: ping
  arguments:
    - name: host
      title: host
      type: ascii_identifier
      default: example.com

My only slight complaint is that while it sort of supports authorization it does not support authentication. If you’re deploying it to be publicly accessible, you’d need to configure your ingress to authenticate the user and only then redirect them to the app.

EDIT: it has now been updated to support both local users and OAuth2

So, why use it?

For me it’s proven to be an immensely valuable tool to streamline processes.
Business uses an environment. Afterwards they need to reset it. Resetting is manual, time consuming and error-prone.
They offload this to another department that offloads it to Engineering.
And as an engineer, you’re stuck waiting for the trigger to travel down that chain that instructs you to login to a host and execute the same 2-3 commands.
You take your time to get around to it (it’s not your top priority and you’re not really motivated after all).
All the while Business is blocked and asking up and down the chain about the reset.
Not optimal.

With OliveTin and a sprinkle of authentication you can enable your users (business or not) to self-serve by providing access to powerful cli automations via a friendly UI. They are happier and you save your time and sanity.

After all, the definition of DevOps has nothing to do with developers and source repositories. It’s about streamlining and automating processes to facilitate quick iterations.

And it’s there that OliveTin shines.