# The OpenBMC Tools Collection The goal of this repository is to collect the two-minute hacks you write to automate interactions with OpenBMC systems. It's highly likely the scripts don't meet your needs - they could be undocumented, dysfunctional or utterly broken. Please help us improve! ## Repository Rules * _Always_ inspect what you will be executing * Some hacking on your part is to be expected ## If you're still with us Then this repository aims to be the default destination for your otherwise un-homed scripts. As such we are setting the bar for submission pretty low, and we aim to make the process as easy as possible. ## Catalogue of scripts ### Users * [`openbmc-events`](geissonator/openbmc-events/): Query error events on the target server * [`openbmc-sensors`](geissonator/openbmc-events/): Query sensors on the target server * [`openbmc-sfw`](geissonator/openbmc-events/): Manage host and BMC firmware images on the target server * [`openbmctool`](thalerj/): A general purpose tool for user interactions with OpenBMC * [`pretty-journal`](post-process/): Convert journalctl's 'pretty' output to regular output * [`upload_and_update`](leiyu/): Upload a tarball to TFTP server and update BMC with it ### Developers * [`netboot`](amboar/obmc-scripts/netboot/): Painless netboot of BMC kernels * [`obmc-gerrit`](amboar/obmc-scripts/maintainers/): Automagically add reviewers to changes pushed to Gerrit * [`reboot`](amboar/obmc-scripts/reboot/): Endlessly reboot OpenPOWER hosts * [`tracing`](amboar/obmc-scripts/tracing/): Enable and clean up kernel tracepoints remotely * [`witherspoon-debug`](amboar/obmc-scripts/witherspoon-debug/): Deploy the debug tools tarball to Witherspoon BMCs ### Maintainers * [`cla-signers`](emilyshaffer/cla-signers): Check if a contributor has signed the OpenBMC CLA ### Project Administrators * [`openbmc-autobump.py`](infra/): Update commit IDs in bitbake recipes to bring in new changes ## Sending patches Please use gerrit for all patches to this repository: * [Gerrit](https://gerrit.openbmc-project.xyz/) Repository Do note that you will need to be party to the OpenBMC CLA before your contributions can be accepted. See [Gerrit Setup and CLA][1] for more information. ## What we will do once we have your patches So long as your patches look sane with a cursory glance you can expect them to be applied. We may push back in the event that similar tools already exist or there are egregious issues. ## What you must have in your patches We don't ask for much, but you need to give us at least a [Signed-off-by](https://developercertificate.org/), and put your work under the Apache 2.0 license. Licensing everything under Apache 2.0 will just hurt our heads less. Lets keep the lawyers off our backs. ^ ^Any exceptions must be accompanied by a LICENSE file in the relevant subdirectory, and be compatible with Apache 2.0. You thought you would get away without any fine print? ## How you consume the repository There's no standard way to install the scripts housed in the here, so adding parts of the repository to your PATH might be a bit of a dice-roll. We may also move or remove scripts from time to time as part of housekeeping. It's probably best to copy things out if you need stability. [1]: https://github.com/openbmc/docs/blob/master/CONTRIBUTING.md#submitting-changes-via-gerrit-server