22.14. dev-library - Dev Library

The following documentation is for Dev Library (dev-library) content package at version v4.11.0-alpha00.69+g6fdc0a93b761e2a35c704a1d9fae2f0cd104db20.

22.14.1. Object Specific Documentation

22.14.1.1. blueprints

The content package provides the following blueprints.

22.14.1.1.1. dev-cleanup-cluster

This Work Order Blueprint is used to cleanup clusters via a trigger.

22.14.1.1.2. dev-raise-alerts

Calls the dev-raise-alerts task which sets the alert level randomly

TODO: make the alert level distribution settable.

22.14.1.1.3. dev-trigger-test

Very simple blueprint that can be used to experiment with triggers by echoing back basic information from the trigger.

22.14.1.1.4. dev-wait-time

This Work Order Blueprint uses the Dev library wait-time task as a testable item that can takes time to operate. It is useful when experimenting with Work Orders to be able to inject a no op delay into the system.

Operators can observe the work by seeing that the icon of the machine running the work order is changing.

22.14.1.2. params

The content package provides the following params.

22.14.1.2.1. dev/counter

Increments when dev-counter task is run

22.14.1.2.2. dev/reboot-workflow

Workflow to set before rebooting system.

22.14.1.2.3. dev/wait-time

Used by the wait-time stage for development use. This can be very helpful to troubleshoot timing issues in provisioning. It should NOT be used in production!

22.14.1.3. profiles

The content package provides the following profiles.

22.14.1.3.1. universal-application-dev-cluster-test

Non-distructive cluster test pipeline will run the dev-generate-load pipeline on machines long enough to examine the workings of Digital Rebar.

Uses three dev tasks during three phases of the runbook workflow:

Learn more about:

22.14.1.3.2. universal-application-dev-generate-load

Non-distructive test pipeline will run anywhere and takes long enough to examine the workings of Digital Rebar.

Uses three dev tasks during three phases of the runbook workflow:

# waits for dev/wait-time for all dev/wait-icons # runs hello world # increments the dev counter param

Learn more about:

22.14.1.4. stages

The content package provides the following stages.

22.14.1.4.1. hello-world

This is a simple stage that will run a small shell script (sh, or ps1 - depending on Operating System). It will simply print a hello world output.

22.14.1.4.2. wait-time

Uses the dev/wait-time param to determine delay (default=5). This can be very helpful to troubleshoot timing issues in provisioning. It should NOT be used in production!

22.14.1.5. tasks

The content package provides the following tasks.

22.14.1.5.1. always-fails

Handy for debugging, this task will always fail to allow for testing of fault conditions

22.14.1.5.2. dev-cluster-cleanup

Handy for housekeeping, this task will cleanup all the unlocked clusters using the cleanup operation.

To schedule daily at 1am, create a a cron trigger with the following properties:

  • all filter matches: true

  • filter: Params.machine-self-runner=true

  • Param cron-trigger/time-string: * 1 * * *

22.14.1.5.3. dev-counter

When run, will add 1 to the dev/counter

22.14.1.5.4. dev-raise-alerts

Create alerts for test purposes

Alert Levels are weighted to be 70% INFO, 20% WARN, 10% ERROR

22.14.1.5.5. dev-reboot-workflow

A task to reboot to a workflow specifed by the dev/reboot-workflow.

22.14.1.5.6. dev-trigger-test

Create alerts as way to test trigger firing.

Created alert uses the name of the trigger and Level can be set using alert/level.

22.14.1.5.7. hello-world

This task runs a simple “hello world” style script on the target machine.

The templates in this task support Windows, Linux, MacOS X, and ESXi operating systems.

This is often used as a quick confirmation that end-to-end workflow is executing and running tasks successfully.

The output message can be customized by setting the param hello/message to a unique string. The default is just Hello World.

22.14.1.5.8. reboot-event

Handy for testing the UX, this task sends a powercycle event

22.14.1.5.9. wait-time

Handy for dev/test, this task will sleep for a programmable amount of time.

It will also excercise the API by changing the machine icons b ased on the wait-icons list.

22.14.1.5.10. workflow-reset

Handy for debugging, this task will clear the current Workflow value form a machine. This allows machines to reset their workflow so THE SAME workflow can be reapplied. Typically, this is a Workflow builder use case only.

22.14.1.6. triggers

The content package provides the following triggers.

22.14.1.6.1. dev-ux-button

Trigger responds to UX generated events as a reference example for operations who wish to create their own custom UX behaviors.

In this case, uses the very basic dev-trigger-test to raise an alert then the event is fired.

22.14.1.7. workflows

The content package provides the following workflows.

22.14.1.7.1. always-fails

Used to generate non-destructive actions in a workflow for testing.

22.14.1.7.2. hello-world

This workflow runs a simple “hello world” script on the target Machine. This can be useful as a quick end-to-end check of the DRP Agent and workflow system.

The following Operating Systems are supported from this single workflow:

  • MacOS X

  • Linux

  • Windows

  • VMware vSphere ESXi

22.14.1.7.3. load-generator

Used to generate non-destructive actions in a workflow for testing.

22.14.1.7.4. reboot-event

Used to generate powercycle event for UX testing.