OpenCrowbar Documentation¶
Welcome to the OpenCrowbar Project - the gateway to a new hardware provisioning experience that delivers the best of software deployment automation and orchestration. OpenCrowbar is a successor of the 3 year-old & still active Crowbar project. It derives much of its functionality from its predecessor, but offers a lot more.
OpenCrowbar documentation is divided into the following sections:
- Deploy Guide
- Development Guide
- Frequently Asked Questions (FAQ)
- OpenCrowbar License
- Operational Principles
- User Guide
Deploy Guide¶
Development Guide¶
- Development Guide
- OpenCrowbar API
- Attribute (aka Attrib) APIs
- Barclamp APIs
- Deployment APIs
- Deployment-Role API
- DHCP Database
- Group APIs
- Ignore This File
- Interface (NICs) API
- Jig (aka CMDB interface) APIs
- Network API
- Node API
- Node Role APIs
- Range API
- Role APIs
- Structure of the template JSON (from an example)
- Run APIs
- Status APIs
- Test APIs
- User CRUD: List
- User CRUD: Show
- User CRUD: Create
- User CRUD: Update
- Reset User Password
- Lock User
- Unlock User
- Make User Admin
- Remove User Admin
- User CRUD: Delete
- Crowbar Barclamps
- Creating a New OpenCrowbar Barclamp
- Contributing to OpenCrowbar
- Contributing Code
- OpenCrowbar Database (Postgresql 9.3)
- Dev System Configuration
- OK, let’s get started setting up the development environemnt:
- Build Sledgehammer (Advanced Dev Only)
- openSUSE images <== This info is not current – FixMe
- Configuration Guide - Ubuntu 12.04.03
- Crowbar Development Based Upon SUSE
- THIS IS DEPRECATED. Use the Docker based development environment instead here
- OpenCrowbar Development Environment Based Upon Ubuntu
- Getting started with Crowbar development
- Short Term notes for running the OpenCrowbar in Docker
- Admin Node in Docker
- Test/Dev using Docker Worker Nodes
- Setting Up the Virtual Machine (VM) on a Fedora host O/S
- Ubuntu with KVM
- Configuration of Proxy Cache
- Windows & Firewall Help
- VirtualBox Development System
- Adding Documentation
- Formatting Documentation
- Topic Documentation
- Configuration Managers (aka Jigs)
- Chef Jig and Developing with Cookbooks
- Crowbar and Berkshelf
- Developing Cookbooks
- Testing Cookbooks
- Noop Jig
- Script Jig
- OpenCrowbar Design Topics
- Core OCB Objects Design Information
- Attrib Model
- Barclamp Model
- Experimental OpenCrowbar Model
- Required Overrides
- Overriding Barclamp.rb
- Deployment Model
- Deployment Role Model
- Group Model
- OpenCrowbar Data Models
- Additional Data Model Design Information
- Network Model
- Node Model
- Node Role Model
- Role Model
- Run / Delayed Job
- User Model
- Network Barclamp
- TODO REVIEW NEEDED >>>>>>
- Provising Process
- Testing OpenCrowbar
- BDD Testing
- Using the BDD tool
- Test Debugging
- BDD Domain Specific Language (DSL)
- Writing Feature Tests
- BDD Internals
- BDD Config
- JSON Parser
- BDD Object Management
- What are the BDD *rats?
- CLI Steps (clirat)
- Extending the DSL
- Passing information between Steps in a Scenario
- Debugging
- BDD Code Files
- BDD testing RESTful APIs
- g
- json & validate
- inspector
- step - setup & teardown
- Common steps
- Reference Features
- BDD Tips and Tricks
- OpenCrowbar Environment Simulator
- User Interface Development
- Adding Localizations (i18n)
- Adding Menu Items
- Barclamp Roles - User Interface Development and Testing
- Tips & Tricks (UI Developer)
- Workflow Overview
- Failures
- Interact with Chef
- Caveats:
- Assumptions:
- Instructions:
- Neato things:
- Assumptions:
- Enabling Online Mode
- Caveats:
- Sledgehammer Hooks
- The smoketest framework lives on the admin node, and consists of:
- The smoketest command works like this:
- Writing Barclamp Smoketests