diff --git a/docs/app/architecture/index.adoc b/docs/app/architecture/index.adoc index a5fa766..61aebe2 100644 --- a/docs/app/architecture/index.adoc +++ b/docs/app/architecture/index.adoc @@ -39,9 +39,9 @@ Beer Garden takes the request body and attempts to transform it into the `Operat After the object is evaluated, if it is determined to be forwarded to a child Beer Garden the forwarding logic is invoked, else it is passed for local processing. -Beer Garden takes the request body and attempts to parse it into a valid Beer Garden request and save it to Mongo. These steps require passing the first-level validation check. This ensures that the request is syntactically valid and meets certain basic requirements (such as the ``status`` field being a valid value). If it fails at this it will return a 400 status code, otherwise the request ID is passed to Bartender for processing. +Beer Garden takes the request body and attempts to parse it into a valid Beer Garden request and save it to Mongo. These steps require passing the first-level validation check. This ensures that the request is syntactically valid and meets certain basic requirements (such as the ``status`` field being a valid value). If it fails at this it will return a 400 status code, otherwise the request will continue processing. -Beer Garden then *validates* the request (either locally or on child Beer Garden). This validation is significantly more involved than the preliminary validation done by Brew View. Here are some of the validation steps: +Beer Garden then *validates* the request (either locally or on child Beer Garden). Here are some of the validation steps: - Ensure that a system (which the correct version) exists that can service the request - That system has an instance matching the instance the request is addressed to @@ -49,7 +49,7 @@ Beer Garden then *validates* the request (either locally or on child Beer Garde - The request's command parameters meet all the constraints placed on them by the command definition - There are no extra command parameters -If all of these conditions are met Bartender will send the request to RabbitMQ using a routing key that ensures the request will be processed by the correct plugin. +If all of these conditions are met Beer Garden will send the request to RabbitMQ using a routing key that ensures the request will be processed by the correct plugin. RabbitMQ will place the request in the specified plugin's request queue. @@ -61,7 +61,7 @@ If the 'final' update fails then the completed request is placed back on the Rab If the 'final' update succeeds the plugin will send an acknowledgement of the message to RabbitMQ. This lets RabbitMQ know the message was successfully processed, which ends the request lifecycle. -If at any time an attempt to update a request fails because Brew View appears to be down the plugin will enter a wait state. While in this state no new requests will be processed (since status can't be communicated to Beer Garden). The plugin will periodically attempt to contact Brew View and will resume normal operation once successful. +If at any time an attempt to update a request fails because Beer Garden appears to be down the plugin will enter a wait state. While in this state no new requests will be processed (since status can't be communicated to Beer Garden). The plugin will periodically attempt to contact Beer Garden and will resume normal operation once successful. === Plugins @@ -90,7 +90,7 @@ The plugin then continues listening on its queues until it receives a stop messa ==== Local Local plugins use the same underlying implementation as remote plugins. The difference is that local plugins are packaged with some additional metadata that allows Beer Garden to manage the plugin process for you. -When Beer Garden starts it will attempt to start all the plugins in its configured plugins directory. Since Beer Garden is the one starting the process you don't need to worry about providing Beer Garden connection information - Beer Garden already knows how to talk to Brew View and will pass that information to the plugin by setting the correct environment variables. Beer Garden will read a special file named ``beer.conf`` and use it to pass additional parameter to the plugin as well. +When Beer Garden starts it will attempt to start all the plugins in its configured plugins directory. Since Beer Garden is the one starting the process you don't need to worry about providing Beer Garden connection information - Beer Garden will pass that information to the plugin by setting the correct environment variables. Beer Garden will read a special file named ``beer.conf`` and use it to pass additional parameter to the plugin as well. The actual implementation of starting, initialization, running, and stopping is exactly the same for local plugins as it is for remote plugins. The difference is how the Python process is created. With remote plugins starting the plugin process is the plugin developer's responsibility, but with local plugins Beer Garden assumes that responsibility. diff --git a/docs/plugins/python/remote-guide.adoc b/docs/plugins/python/remote-guide.adoc index c911da5..32fbdfc 100644 --- a/docs/plugins/python/remote-guide.adoc +++ b/docs/plugins/python/remote-guide.adoc @@ -52,7 +52,7 @@ The best way to stop a plugin is to use the Systems Management page to send a st You should see your plugin log that it has terminated and stop executing, and if you go to the `Admin -> Systems` page in `Beer Garden` you should see the `hello-world` plugin is 'STOPPED'. -NOTE: You can also use Ctrl-c to stop the plugin from the terminal. This works, but it doesn't tell Beer Garden that the plugin is stopping. You'll still see the plugin terminate and stop executing, but the status in `Brew View` will still be 'RUNNING'. After a short period the status will change to 'UNRESPONSIVE'. +NOTE: You can also use Ctrl-c to stop the plugin from the terminal. This works, but it doesn't tell Beer Garden that the plugin is stopping. You'll still see the plugin terminate and stop executing, but the status in `Beer Garden` will still be 'RUNNING'. After a short period the status will change to 'UNRESPONSIVE'. == Exception Handling include::{includedir}/exceptions.adoc[] diff --git a/docs/startup/installation-guides/git.adoc b/docs/startup/installation-guides/git.adoc index dd904ee..66a4b87 100644 --- a/docs/startup/installation-guides/git.adoc +++ b/docs/startup/installation-guides/git.adoc @@ -50,7 +50,8 @@ Sweet. Now for each of the projects you can install the dependencies: [source] ---- -make deps +cd brewtils; make deps +cd beer-garden/src/app; make deps ---- At this point we need a little sidebar about how beer-garden is structured. Beer-Garden is the application that @@ -69,7 +70,7 @@ distributions in 'editable' mode. From the beer-garden root directory: [source] ---- -cd beer-garden; pip uninstall -y brewtils; pip install -e ../../brewtils +cd beer-garden; pip uninstall -y brewtils; pip install -e ../brewtils ---- The Beer Garden UI utilizes NPM to install Javascript dependencies. @@ -86,7 +87,7 @@ and more. To generate coverage: [source] ---- -make coverage +cd beer-garden/src/app; make coverage ---- And you should see all the tests pass. diff --git a/docs/training/example-1.adoc b/docs/training/example-1.adoc index 1d72ae8..46c7eee 100644 --- a/docs/training/example-1.adoc +++ b/docs/training/example-1.adoc @@ -125,23 +125,23 @@ It will start up and print some logging showing the plugin registering with Beer === Use the code -At this point you should see your plugin on the `Available Systems` page in `Brew View`. Click the big blue `Explore hello_world commands` button to see a list of all commands available for the Plugin you made. +At this point you should see your plugin on the `Systems` page in `Beer Garden`. Click the big blue `Explore` button next to `hello-world` to see a list of all commands available for the Plugin you made. -As part of this tutorial the only command listed should be the `say_hello` command because we only defined one command. Click the `Make it Happen!` button to go to the page for that command. +Since we only defined one command as part of this tutorial the only command listed should be the `say_hello` command. Click the `Make it Happen!` button to go to the page for that command. -The command page is where you can specify options and customization for individual executions of that command. Since we didn't define any options (this command always prints 'Hello World!') the only customization available is the comment field. You can add free-form text here and it will be included as part of the request you're generating. +The command page is where you can specify options and customization for individual executions of that command. Since we didn't define any options (this command always prints 'Hello World!') the only customization available is the comment field. You can add free-form text here and it will be included as part of the request you're about to generate. -Are you ready? Click the `Make Request` button when you're ready. +Are you ready? Click the `Make Request` button once you're ready. Making a request takes you to the Request page for the request you just generated. You can see the unique ID as part of the page title. You should see the status start as `IN PROGRESS` and then change to `SUCCESS` once the request completes. Also notice that the output changes when the request is finished. -If you didn't catch those changes on the first try, don't worry. Use the `Pour it Again` button in the top-right corner to go back to the command screen you just left. From there you can use the `Make Request` button to make another request. +If you didn't catch those changes on the first try, don't worry. Use the `Pour it Again` button in the top-right corner to go back to the command screen you just left. From here you can use the `Make Request` button to make another request. NOTE: This command doesn't have any parameters, but for commands that do the `Pour it Again` button will default them to exactly how they were for the original request. === Stop the code -The best way to stop a plugin is to use the 'Systems Management' page to send a stop message. In `Brew View` find the `Systems Management` option under the `Administration` menu. Then click the stop icon next to the `hello-world` listing. +The best way to stop a plugin is to use the Systems Management page to send a stop message. In `Beer Garden` find the `Systems` option under the `Admin` menu. Then click the stop icon next to the `hello-world` listing. -You should see your plugin log that it has terminated and stop executing, and if you go to the main page in `Brew View` you should see the `hello-world` plugin is 'STOPPED'. +You should see your plugin log that it has terminated and stop executing, and if you go to the `Admin -> Systems` page in `Beer Garden` you should see the `hello-world` plugin is 'STOPPED'. -NOTE: You can also use Ctrl-c to stop the plugin from the terminal. This works, but it doesn't tell Beer Garden that the plugin is stopping. You'll still see the plugin terminate and stop executing, but the status in `Brew View` will still be 'RUNNING'. After a short period the status will change to 'UNRESPONSIVE'. +NOTE: You can also use Ctrl-c to stop the plugin from the terminal. This works, but it doesn't tell Beer Garden that the plugin is stopping. You'll still see the plugin terminate and stop executing, but the status in `Beer Garden` will still be 'RUNNING'. After a short period the status will change to 'UNRESPONSIVE'. diff --git a/docs/training/ui-orientation.adoc b/docs/training/ui-orientation.adoc index fbf5147..26cc2f8 100644 --- a/docs/training/ui-orientation.adoc +++ b/docs/training/ui-orientation.adoc @@ -1,4 +1,4 @@ -:imagesdir: ../../images +:imagesdir: images == UI Orientation @@ -20,7 +20,7 @@ image::navigation-user.png[Navigation User] Admin users have additional areas where they can navigate to. -image::navigation-admin.png[Naviagation Admin] +image::navigation-admin.png[Navigation Admin] . `System Management` - Administrative page to start/stop/rescan/delete connected systems . `Queue Management` - Administrative page to manage the queues that systems are listening to