Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
StykMartin authored Apr 7, 2021
1 parent 5dce95c commit 3a11553
Showing 1 changed file with 2 additions and 119 deletions.
121 changes: 2 additions & 119 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Beaker

Beaker is open-source software for managing and automating labs of test
computers.

Expand All @@ -6,122 +8,3 @@ documentation and information about the Beaker project.
The [Developer guide](https://beaker-project.org/dev/guide/) in particular
might be useful if you are working on Beaker.


Repo Layout
-----------

* `Server/`

+ `assets/`
Source files for static assets (JavaScript, LESS) which are served to the
web browser. The webassets module manages compilation and minification of
the raw source files into a form suitable for serving to the browser.

+ `bkr/server/tools/`
Various modules that are run as ancillary processes to the server.

+ `bkr/server/config/`
These are application specific configuration items.

+ `bkr/server/kickstarts/`
Kickstart templates that are served to the lab controller
for provisioning test systems. See the
[admin guide](https://beaker-project.org/docs/admin-guide/kickstarts.html)
for further details.

+ `bkr/server/snippets/`
These are sections of kickstart templates that can be inserted into other
kickstart templates as needed.

+ `bkr/server/static/`
Legacy static assets (not managed by the webassets module). No new assets
are added here.

+ `bkr/server/templates/`
Kid templates for TurboGears controller methods and TurboGears widgets.

+ `bkr/server/alembic/versions/`
Alembic database migration scripts.


* `LabController/`
This contains all the source code for the lab controller.

+ `addDistro/`
Scripts to run on the import of distros.
See the [admin guide](https://beaker-project.org/docs/admin-guide/distro-import.html#automated-jobs-for-new-distros)
for details.

+ `apache/beaker-lab-controller.conf`
Apache configuration file. Used to configure the serving of various files
including logs.

+ `apache/404.html`
Custom 404 error page for logs.

+ `aux/anamon`, `aux/anamon.init`, `aux/anamon.service`
"Anamon", the Anaconda monitoring script. This runs during Anaconda
installations and periodically uploads Anaconda logs to Beaker.

+ `cron.hourly/`
Anything to be run as a cron job on the lab controller goes in here.
Currently contains a single script that expires distros.

+ `init.d/`
Contains the init scripts for the individual lab controller processes.

+ `src/bkr/labcontroller/`
Modules that act as entry points for the main processes listed in
init.d/, as well as related modules.

+ `src/bkr/labcontroller/power-scripts/`
Contains scripts responsible for power cycling test machines.


* `IntegrationTests/`
This directory contains the complete Beaker test suite. Tests for the server,
lab controller and client are found in their corresponding directories in
the `src/bkr/inttest/` directory.


* `Client/`
All source files for the beaker client are found here.

+ `src/bkr/client/`
Modules that are shared and utilized by various commands.

+ `src/bkr/client/commands/`
Each module in this directory corresponds to a different subcommand for
the `bkr` client. Man pages for each subcommand are included as
a module-level docstring in reStructuredText format.


* `documentation/`
Beaker's [documentation](https://beaker-project.org/docs/) in
reStructuredText format.


* `SchemaUpgrades/`
Legacy database upgrade instructions, for Beaker versions up to 0.8.2. Newer
database upgrades are managed by Alembic, with migration scripts added to
`Server/bkr/server/alembic/versions/`.


* `Common/`
Any substantial amount of source code that can be utilized by more than one
package should be here.

+ `bkr/common/schema/`
Any kind of beaker entity that has a schema definition, will be defined
here. This does not include database schemas.


* `Misc/`
Utilities and scripts which are used for developing Beaker but which do not
form part of the source tree itself.

+ `rpmbuild.sh`
Builds SRPM or RPM development packages from the current git HEAD
revision.
For example, `Misc/rpmbuild.sh -bb` will perform a local RPM build
resulting in packages like `beaker-*-20.1-0.git.2.2dff0c7.noarch.rpm`.

0 comments on commit 3a11553

Please sign in to comment.