Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms

Select Status

RSS

rundeck-wrapper (4) Versions 1.2.0

Install and configure rundeck server

Policyfile
Berkshelf
Knife
cookbook 'rundeck-wrapper', '= 1.2.0', :supermarket
cookbook 'rundeck-wrapper', '= 1.2.0'
knife supermarket install rundeck-wrapper
knife supermarket download rundeck-wrapper
README
Dependencies
Changelog
Quality 33%

Rundeck Wrapper Cookbook

Description

Install and configure Rundeck by wrapping cookbook
rundeck-server.

This wrapper allows to:

  • Generate rundeck users from a data bag.
  • Generate rundeck projects and jobs from attributes.

Requirements

Cookbooks and gems

Declared in [metadata.rb](metadata.rb) and in [Gemfile](Gemfile).

Platforms

Tested on:

  • RHEL Family 7, tested on Centos

Usage

Easy Setup

Add recipe[rundeck-wrapper] in your run-list to install and configure
Rundeck. Configuration will be fetched from attribute
node['rundeck_server']. See cookbook rundeck-server
documentation for more information.

To see an example, look at [.kitchen.yml](.kitchen.yml).

Data Bags

An optional data bag is available to manage rundeck realm users credentials.

You must specify the name of data bag you want to use in
node['rundeck-wrapper']['data_bag']['realm_users'].

Realm Users Data Bag

It will replaces the following attribute during config recipe :
* node['rundeck-wrapper']['realm.properties'].

Databag Definition

A sample Realm user object would look like :
```json
{
"id": "admin",
"rundeck_password": "admin",
"groups": [
"user",
"admin"
],
"rundeck_token": "E4rNvVRV378knO9dp3d73O0cs1kd0kCd"
}

##### Databag Key Definitions

- `id`: _String_ specifies the username, as well as the data bag object id.
- `rundeck_password`: _String_ specifies the realm user's password.
- `groups`: _Array_ an array of groups that the realm user will be added to.
- `rundeck_token`: _String_ optional API token linked to user

### Test

This cookbook is fully tested through the installation of a rundeck server in a
docker host. This uses kitchen and docker.

For more information, see [.kitchen.yml](.kitchen.yml) and [test](test)
directory.

Attributes
----------

Configuration is done by overriding default attributes. All configuration keys
have a default defined in [attributes/default.rb](attributes/default.rb).
Please read it to have a comprehensive view of what and how you can configure
this cookbook behavior.

Recipes
-------

### default

Include `java`, `rundeck-server::default`, `secret`, `node`, recipes.

### java

Install java from distribution package. Is disabled if `install_java` is true
for rundeck\_server.

### secret

Generate and deploy [Rundeck] realm properties users file from data bag :
*realm.properties*.

### node

Generate and deploy nodes files per Chef role declared in attribute
`node['rundeck-wrapper']['nodes_roles']`.

Resources/Providers
-------------------

None.

Changelog
---------

Available in [CHANGELOG.md](CHANGELOG.md).

Contributing
------------

Please read carefully [CONTRIBUTING.md](CONTRIBUTING.md) before making a merge
request.

License and Author
------------------

- Author:: Sylvain Arrambourg ()
- Author:: Samuel Bernard ()

```text
Copyright (c) 2017-2018 Make.org

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Dependent cookbooks

rundeck-server >= 0.0.0
cluster-search >= 1.3.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

Changelog

1.2.0

Breaking changes:

  • feat: rename secret recipe to user

Main:

  • feat: add recipe to handle jobs creation
  • feat: add recipe to handle projects creation
  • feat: generate token from realm users data bag

Test:

  • test: include .gitlab-ci.yml from test-cookbook
  • test: replace deprecated require_chef_omnibus

Misc:

  • doc: use doc in git message instead of docs
  • doc: update data bag def and wrapper desc
  • doc: add rundeck_password to data bag definition
  • chore: add supermarket category in .category
  • chore: set generic maintainer & helpdesk email
  • chore: add 2018 to copyright notice
  • style(rubocop): fix empty line after guard clause
  • style: wrap resources template into 80 columns

1.1.0

Main:

  • disable useless "api check" that execute at each run
  • do not create user without rundeck password

1.0.0

  • Initial version with centos support

Collaborator Number Metric
            

1.2.0 failed this metric

Failure: Cookbook has 1 collaborators. A cookbook must have at least 2 collaborators to pass this metric.

Contributing File Metric
            

1.2.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file

Foodcritic Metric
            

1.2.0 passed this metric

No Binaries Metric
            

1.2.0 passed this metric

Testing File Metric
            

1.2.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file

Version Tag Metric
            

1.2.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number