Skip to content
This repository has been archived by the owner on Aug 27, 2023. It is now read-only.

jimmy-lt/cf-propane

Repository files navigation

Documentation Status

cf-propane

cf-propane is a collection of generic CFEngine 3 master policies to drive the management of your IT infrastructure.

CFEngine is a configuration management and automation framework that lets you securely manage your IT infrastructure. If you don't know yet about CFEngine, you can take a look at its documentation to get a first grasp of it.

The goal of cf-propane is to provide an easy and ready to use framework for administrators to securely build and manage their IT infrastructure.

Development

cf-propane make use of various Python 3 utilities to drive its development. If you wish to bring some changes to the project and build it, you'll need to set up your working environment first.

In bellow instructions, each command states the level of privileges they should be run with the command prompt. The prompt can be one of the following:

  • $ for normal user privileges. Just run the command as is.
  • # for administrative privileges, either run as root or other administrative user or by prefixing the command with sudo.

Make sure to have Python 3 installed in version 3.5 or later. If you are running Fedora or one of its derivatives, you can run the following command:

# yum install python3

On the other hand if you are using Debian or one of its derivatives, run the following command:

# apt-get install python3

For any other system, you can find installation instructions on the Python's project website.

Virtual environment

In order to keep your system clear from the development tools needed for the project, it is advised to set up a Python 3 virtual environment using pipenv.

Go to the project's directory and run the following command:

$ pipenv --three

To activate the environment, you can enter the following command:

$ pipenv shell
(pipenv)$

When a command should be entered within the virtual environment, we use the following (pipenv)$ prompt in console examples. Such command can also be prefixed with pipenv run when not in an activated environment.

Installation requirements

All the utilities required to build or ease project's development are listed in the Pipfile file. To install the project's dependencies run the command bellow:

$ pipenv install -d

This file will be updated each time a new dependency is added. Be sure to re-run this command each time you notice a change to the Pipfile file.

Invoke tasks

Building the project involves many different tasks. To ease the operation, needed actions grouped together in the tasks.py file and ran using the Invoke tool as simple shell commands.

Licensing

This software project is provided under the licensing terms of the MIT License stated in the file LICENSE.rst.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

About

A collection of generic CFEngine 3 master policies.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published