Git Product home page Git Product logo

elanman's Introduction

elanman

eLan Manager for WHM servers

What is it

It's a tool that creates your private tool based on the data that you provide in your answer file.

What does this playbook do

If you install ansible on a linux machine, clone this project and run the following commands:
cp managers.sample managers
ansible-playbook -i managers elanman.yaml
After a few minutes you will end up with the following playbook:
https://github.com/ilanh/myelanman
In ~/myelanman/
The layout and variables in the generated playbook are taken from:
https://raw.githubusercontent.com/ilanh/elanman/master/roles/common/files/answers.sample.yaml

If you cahnge ~/myelanman/answer.yaml (copied on first run to an empty directory) and re run the playbook command from this project,
The content of ~/myelanman/ will change accordinly.

Answer file structure

The configurable options are at:
https://raw.githubusercontent.com/ilanh/elanman/master/roles/common/vars/defaultobjects.yaml

The whole playbook is will be organized with the following guides:

  • You define how your servers are organized in brands, regions, roles and logical groups
  • In the answer file there are configuration sections like firewall ports
  • In the sections there are configuration objects like 'tcp in ports'
  • For each object there are several possible values like '22,80,443' and '22,53,2087'
  • The values are assigned to brands, regions roles and logical groups

using the data
main vars, templates and tasks in the target playbook are generated with the relevant values for each group

elanman's People

Contributors

ilanh avatar

Watchers

 avatar

elanman's Issues

Move variables from logicalgroup.j2

[all:vars]
whm_installed=true
whmapilogs="{{ whmapilogs }}"
develop=false
clCagefsEnabled=true
c1CagefsRelocate=true
clAltphpEnabled=true
clLsapiEnabled=true
csfTestMode='0'

EasyApache module

Add easyapache module that takes care of deployment and configuration of php handler accordingly.

template generator

A task that:

  • downloads latest source from provider
  • extracts the config files
  • runs a nested loop with config file names and config objects per file
  • and does automated sed against a set of variables to generate a jinja2 template

CloudLinux is included when not installed

TASK [common : Run the script] ************************************************************************************************************************************
changed: [cp95.box.co.il]

TASK [sharedhosting : Include cloudlinux variables] ***************************************************************************************************************
ok: [cp95.box.co.il]

TASK [sharedhosting : Create cagefs skeleton directory] ***********************************************************************************************************
changed: [cp95.box.co.il]

TASK [sharedhosting : Create cagefs link] *************************************************************************************************************************
changed: [cp95.box.co.il]

TASK [sharedhosting : Add cagefs] *********************************************************************************************************************************
fatal: [cp95.box.co.il]: FAILED! => {"changed": false, "msg": "No package matching 'cagefs' found available, installed or updated", "rc": 126, "results": ["No package matching 'cagefs' found available, installed or updated"]}
to retry, use: --limit @/root/echk/site.retry

PLAY RECAP ********************************************************************************************************************************************************
cp95.box.co.il : ok=26 changed=16 unreachable=0 failed=1

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.