Code Monkey home page Code Monkey logo

colordemo's Introduction

Color Demo Example and Training Content

Cloudia the ColorDemo

Introduction

For Digital Rebar Provision, which is maintained by RackN.

This colordemo repo is an example / training content pack designed to help new users of Digital Rebar Provision to understand how content packs can be authored and maintained in a Git (or other Source Code Control System) management system.

The directory structure (in the "content/" directory) closely relates to the different parts of composable content that are represented in Content Bundles (or Packs). Each directory contains unique content pieces for each of the types of content.

Directories that don't exist here (for example "bootenvs") can be created if you need to build content of that type.

All Workflow elements in Content are executed as a "job" on the Machine side. This is why you must have a Runner (agent) running. DRP supports "plugins" which are compiled binaries, that execute on the DRP Endpoint side, on behalf of the Machine. This Color Demo content does NOT relate to Plugins, only content executed on the Machine as Workflow jobs.

Usage

To install the colordemo content pack, use the following command:

git clone https://github.com/digitalrebar/colordemo.git
cd ./colordemo/content
drpcli contents bundle ../colordemo-v1.yaml

To inject/install it to a Digital Rebar Provision endpoint, use:

drpcli contents create ../colordemo-v1.yaml

If you make changes to the local files (updates, edits, fixes, etc), and want to update the already installed conent pack, rebundle the changes, then update as follows:

# edit files as desired
drpcli contents bundle ../colordemo-v2.yaml
drpcli contents update colordemo ../colordemo-v2.yaml

Feature in Videos!

Operating Color Demo

You must have a machine that is currently running an Agent (runner-service); the Sledgehammer (discovery) bootenv meets this criteria, or the runner-service has been run on an installed OS. Verify the agent is running with ps -ef | grep 'drpcli processjobs' | grep -v grep".

Add the colordemo-example profile to the machine; a cloned version of the profile with your changes to the Params, or the bare params directly to the machine.

Set the machine to the colordemo Workflow. The "i" (information) column should change to the set color and icon. To rerun the workflow, you must first clear the workflow (remove) the current colordemo workflow, then re-set it on the machine.

Which DRP Endpoint are you talking to?

Remember that the drpcli client tool by default connects to the address and port specified as follows:

https://127.0.0.1:8092

Make sure you set the Endpoint (and Username/Password if changed from defaults) with the appropriate options. Run drpcli by itself to get help output.

Notes

Not All Content Types Represented

Digital Rebar Provision content has many parts and pieces. There are several types of content that are not represented in the Color Demo. Empty directories are not allowed in Git repos, so we can't provide blank directories for your reference. DRP bundle operations can't deal with errant files in a directory structure (like ".gitempty").

For content types not represented here (for example "bootenvs"), simply create an empty directory of that name, to create content of that type. Use some of the examples from other content packs (see Other Content Examples for more inspiration.

Other Content Examples

We at RackN regularly "crib" or "borrow" from existing content examples we've created already. You can too! To check out a much more advanced use of a Git repo to host multiple content packs, see:

Note that the "content/" directory contains the actual "DRP Community Content", bundle, while other content packs exist in the subdirectories "krib", "sledgehammer-builder", etc.

Bundle Operation Errors

The contents bundle operation is very sensitve to errant/unexpected files in the directory structure. Anything that is NOT a meta file (eg a file with .\_Something.meta or a YAML file will be misinterpreted and an error will occur on the bundle operation, like:

drp@pixie:./colordemo$ drpcli contents bundle colordemo-v1.yaml
Error: Failed to load: No idea how to decode LICENSE into dr-provision-releases

(.gitignore will also similarly cause an error). Make sure your directory is clean from errant hidden/dot files, things like LICENSE, README.md, etc.

For this reason, the colordemo contents have been moved in to the subdirectory named content/.

README as Documentation Meta Info

This README is included (by symbolic reference) as content/.\_Documentation.meta file. The Documentation meta file can use RST formatted text.

Talk to Us!

The RackN Team uses Slack to communicate with our Digital Rebar Provision community. If you haven't already signed up for our Community Slack, you can do so at:

We look forward to helping you with your provisioning automation journey towards a fully self sustained Continuously Delivered Data Center journey.

colordemo's People

Contributors

michaelrice avatar sygibson avatar zehicle avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.