Code Monkey home page Code Monkey logo

alcali-formula's Introduction

⚠️ THIS FORMULA IS NO LONGER MAINTAINED. PLEASE USE https://github.com/saltstack-formulas/alcali-formula INSTEAD.

Alcali formula

Build Status

A SaltStack formula to install and configure Alcali.

Alcali is a web based tool for monitoring and administrating Saltstack Salt.

Available states

Testing

Requirements

Alcali

Meta-state (This is a state that includes other states).

This create the alcali user, installs the alcali package, manages the alcali configuration file and then starts the associated alcali service.

alcali.user

This state will create the alcali user only.

alcali.package

This state will install the alcali package only.

alcali.config

This state will configure the alcali service and has a dependency on alcali.install via include list.

alcali.service

This state will start the alcali service and has a dependency on alcali.config via include list.

alcali.clean

Meta-state (This is a state that includes other states).

this state will undo everything performed in the alcali meta-state in reverse order, i.e. stops the service, removes the configuration file, uninstalls the package and remove the user.

alcali.user.clean

This state will remove the alcali user.

alcali.service.clean

This state will stop the alcali service and disable it at boot time.

alcali.config.clean

This state will remove the configuration of the alcali service and has a dependency on alcali.service.clean via include list.

alcali.package.clean

This state will remove the alcali package and has a dependency on alcali.config.clean via include list.

Testing

Linux testing is done with kitchen-salt.

Requirements

  • Ruby
  • Docker
$ gem install bundler
$ bundle install
$ bin/kitchen test [platform]

Where [platform] is the platform name defined in kitchen.yml, e.g. debian-9-2019-2-py3.

bin/kitchen converge

Creates the docker instance and runs the template main state, ready for testing.

bin/kitchen verify

Runs the inspec tests on the actual instance.

bin/kitchen destroy

Removes the docker instance.

bin/kitchen test

Runs all of the stages above in one go: i.e. destroy + converge + verify + destroy.

bin/kitchen login

Gives you SSH access to the instance for manual testing.

TODO:

  • Add multiple install options.

Contribute

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

If you like this project, consider donating:

via GitHub Sponsors, or

ko-fi

Image: Jean-Philippe WMFr, derivative work : User:Benoit Rochon CC BY-SA 4.0

alcali-formula's People

Contributors

mattllvw avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

alcali-formula's Issues

debian 10 x64, "alcali-package-install-virtualenv-managed" failes

Hey there,

i played a while with salt and now i wanted to test that nice looking GUI.
So i created a new VM (to not play in my prod env), installed debian 10, created a salt-master (3000.2) with api, auth, mysql (+python3-mysqldb), rest-auth and ofc the mariadb-server.

I configured the pillar to get the alcali v3000.1.0

When i run the state to install alcali i get the following output (shortend):


      ID: alcali-package-install-virtualenv-managed
Function: virtualenv.managed
    Name: /opt/alcali/.venv
  Result: False
 Comment: Created new virtualenv
          Collecting ansi2html==1.5.2
            Downloading ansi2html-1.5.2.tar.gz (27 kB)
          DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. pip 21.0 will drop support for Python 2.7 in January 2021. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
          ERROR: Could not find a version that satisfies the requirement Django==3.0.5 (from -r /tmp/tmp55pjep7t/prod.txt (line 2)) (from versions: 1.1.3, 1.1.4, 1.2, 1.2.1, 1.2.2, 1.2.3, 1.2.4, 1.2.5, 1.2.6, 1.2.7, 1.3, 1.3.1, 1.3.2, 1.3.3, 1.3.4, 1.3.5, 1.3.6, 1.3.7, 1.4, 1.4.1, 1.4.2, 1.4.3, 1.4.4, 1.4.5, 1.4.6, 1.4.7, 1.4.8, 1.4.9, 1.4.10, 1.4.11, 1.4.12, 1.4.13, 1.4.14, 1.4.15, 1.4.16, 1.4.17, 1.4.18, 1.4.19, 1.4.20, 1.4.21, 1.4.22, 1.5, 1.5.1, 1.5.2, 1.5.3, 1.5.4, 1.5.5, 1.5.6, 1.5.7, 1.5.8, 1.5.9, 1.5.10, 1.5.11, 1.5.12, 1.6, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.6.6, 1.6.7, 1.6.8, 1.6.9, 1.6.10, 1.6.11, 1.7, 1.7.1, 1.7.2, 1.7.3, 1.7.4, 1.7.5, 1.7.6, 1.7.7, 1.7.8, 1.7.9, 1.7.10, 1.7.11, 1.8a1, 1.8b1, 1.8b2, 1.8rc1, 1.8, 1.8.1, 1.8.2, 1.8.3, 1.8.4, 1.8.5, 1.8.6, 1.8.7, 1.8.8, 1.8.9, 1.8.10, 1.8.11, 1.8.12, 1.8.13, 1.8.14, 1.8.15, 1.8.16, 1.8.17, 1.8.18, 1.8.19, 1.9a1, 1.9b1, 1.9rc1, 1.9rc2, 1.9, 1.9.1, 1.9.2, 1.9.3, 1.9.4, 1.9.5, 1.9.6, 1.9.7, 1.9.8, 1.9.9, 1.9.10, 1.9.11, 1.9.12, 1.9.13, 1.10a1, 1.10b1, 1.10rc1, 1.10, 1.10.1, 1.10.2, 1.10.3, 1.10.4, 1.10.5, 1.10.6, 1.10.7, 1.10.8, 1.11a1, 1.11b1, 1.11rc1, 1.11, 1.11.1, 1.11.2, 1.11.3, 1.11.4, 1.11.5, 1.11.6, 1.11.7, 1.11.8, 1.11.9, 1.11.10, 1.11.11, 1.11.12, 1.11.13, 1.11.14, 1.11.15, 1.11.16, 1.11.17, 1.11.18, 1.11.20, 1.11.21, 1.11.22, 1.11.23, 1.11.24, 1.11.25, 1.11.26, 1.11.27, 1.11.28, 1.11.29)
          ERROR: No matching distribution found for Django==3.0.5 (from -r /tmp/tmp55pjep7t/prod.txt (line 2))
 Started: 00:27:50.068798
Duration: 5348.629 ms
 Changes:
          ----------
          new:
              Python 2.7.16

Research shows that (like that error-message tells me) django 3.0.5 needs python3, change-log shows that python 2.7.16 got installed...

My pillar "alcali.sls" looks like this:

alcali:
deploy:
repository: https://github.com/latenighttales/alcali.git
branch: v3000.1.0
user: alcali
group: alcali
directory: /opt/alcali
service: alcali
runtime: python3
gunicorn:
name: 'config.wsgi:application'
host: '0.0.0.0'
port: 5000
workers: {{ grains['num_cpus'] }}
config:
db_backend: mysql
db_name: salt
db_user: salt
db_password: alphanumeric-password
db_host: localhost
db_port: 3306
master_minion_id: srv-salt-01.monitoring.mynetwork.de
secret_key: alphanumeric-password
allowed_hosts: '*'
salt_url: 'https://srv-salt-01.monitoring.mynetwork.de:8080'
salt_auth: rest


Do you have any hint for me to fix that problem?

Greetings
Chriss

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.