/cumulus-cl-license-puppet

Puppet module to manage the license on Cumulus Linux

Primary LanguageRubyGNU General Public License v2.0GPL-2.0

This is a fork of Cumulus Network repo (http://github.com/cumulusNetworks/cumulus-cl-license-puppet).

Actual puppet forge page: https://forge.puppet.com/c2devel/cumulus_license

Feel free to send patches to http://github.com/c2devel/cumulus-cl-license-puppet/

cumulus_license

Table of Contents

  1. Overview
  2. Module Description
  3. Setup
  4. Usage
  5. Reference
  6. Limitations
  7. Development

Overview

This module installs a Cumulus Linux license.

Module Description

Installs a Cumulus Linux license file on a Cumulus Linux switch.

If a license is already installed, the module will not attempt to overwrite the existing license. You can overwrite the license with the force parameter. Using the force parameter will remove the idempotent behaviour of the module, so use force mode with caution.

When installing a license on a switch, use a non-EULA license. To confirm if you have a non-EULA license, run cl-license -i <license path> and confirm that it does not prompt you for a EULA.

Version 1.0.x of the module will work with 2.5.2 and lower. Version 1.1.x and higher will work with 2.5.3 and higher

For more details, read the Cumulus Linux User Guide and search for "License". Also review the Cumulus Linux Licensing Knowledge Base

Setup

What cumulus_license affects

This module uses the Cumulus Linux cl-license command to manage the license.

To activate a license for the first time, the switchd service must be restarted.

NOTE: Restarting the switchd daemon is disruptive.

Usage

Install a license file if one is not already installed:

node default {
   cumulus_license { 'example':
	     src => 'http://example.com/cumulus.lic',
	  notify => Service['switchd']
	}
}

Reference

###cl_license

Parameters

src: This is the URL to the license file location. It can be a local path like /root/new.lic or a http or https URL. It does not support a puppet:/// url.

force: Installs the license even though one exists on the switch.

Limitations

This module only works on Cumulus Linux.

This module does not overwrite an existing license. Use the force keyword to perform a license renewal.

puppet resource cumulus_license doesn't work. This feature will be implemented in a later version.

Development

  1. Fork it.
  2. Create your feature branch (git checkout -b my-new-feature).
  3. Commit your changes (git commit -am 'Add some feature').
  4. Push to the branch (git push origin my-new-feature).
  5. Create new Pull Request.

Cumulus icon

Cumulus Linux

Cumulus Linux is a software distribution that runs on top of industry standard networking hardware. It enables the latest Linux applications and automation tools on networking gear while delivering new levels of innovation and flexibility to the data center.

For further details, please see cumulusnetworks.com.