xref: /openbmc/openbmc-tools/README.md (revision b40ba881)
1# The OpenBMC Tools Collection
2
3The goal of this repository is to collect the two-minute hacks you write to
4automate interactions with OpenBMC systems.
5
6It's highly likely the scripts don't meet your needs - they could be
7undocumented, dysfunctional or utterly broken. Please help us improve!
8
9## Repository Rules
10
11* _Always_ inspect what you will be executing
12* Some hacking on your part is to be expected
13
14## If you're still with us
15
16Then this repository aims to be the default destination for your otherwise
17un-homed scripts. As such we are setting the bar for submission pretty low,
18and we aim to make the process as easy as possible.
19
20## Catalogue of scripts
21
22### Users
23
24* [`openbmc-events`](geissonator/openbmc-events/): Query error events on the target server
25* [`openbmc-sensors`](geissonator/openbmc-events/): Query sensors on the target server
26* [`openbmc-sfw`](geissonator/openbmc-events/): Manage host and BMC firmware images on the target server
27* [`openbmctool`](thalerj/): A general purpose tool for user interactions with OpenBMC
28* [`pretty-journal`](post-process/): Convert journalctl's 'pretty' output to regular output
29* [`upload_and_update`](leiyu/): Upload a tarball to TFTP server and update BMC with it
30
31### Developers
32
33* [`netboot`](amboar/obmc-scripts/netboot/): Painless netboot of BMC kernels
34* [`obmc-gerrit`](amboar/obmc-scripts/maintainers/): Automagically add reviewers to changes pushed to Gerrit
35* [`reboot`](amboar/obmc-scripts/reboot/): Endlessly reboot OpenPOWER hosts
36* [`tracing`](amboar/obmc-scripts/tracing/): Enable and clean up kernel tracepoints remotely
37* [`witherspoon-debug`](amboar/obmc-scripts/witherspoon-debug/): Deploy the debug tools tarball to Witherspoon BMCs
38
39### Maintainers
40
41* [`cla-signers`](emilyshaffer/cla-signers): Check if a contributor has signed the OpenBMC CLA
42
43### Project Administrators
44
45* [`openbmc-autobump.py`](infra/): Update commit IDs in bitbake recipes to bring in new changes
46
47## Sending patches
48
49Please use gerrit for all patches to this repository:
50
51* [Gerrit](https://gerrit.openbmc-project.xyz/) Repository
52
53Do note that you will need to be party to the OpenBMC CLA before your
54contributions can be accepted. See [Gerrit Setup and CLA][1]
55for more information.
56
57## What we will do once we have your patches
58
59So long as your patches look sane with a cursory glance you can expect them to
60be applied. We may push back in the event that similar tools already exist or
61there are egregious issues.
62
63## What you must have in your patches
64
65We don't ask for much, but you need to give us at least a
66[Signed-off-by](https://developercertificate.org/), and put your work under the
67Apache 2.0 license. Licensing everything under Apache 2.0 will just hurt our
68heads less. Lets keep the lawyers off our backs. ^
69
70^Any exceptions must be accompanied by a LICENSE file in the relevant
71subdirectory, and be compatible with Apache 2.0. You thought you would get away
72without any fine print?
73
74## How you consume the repository
75
76There's no standard way to install the scripts housed in the here, so adding
77parts of the repository to your PATH might be a bit of a dice-roll. We may also
78move or remove scripts from time to time as part of housekeeping. It's probably
79best to copy things out if you need stability.
80
81[1]: https://github.com/openbmc/docs/blob/master/CONTRIBUTING.md#submitting-changes-via-gerrit-server
82