2ff6b90cd8
* add offical pillar true(default) / false to use raw source url in component:name:archive:source * add tar pillar true(default) / false to use file instead of tar, some repo provide only the binary * update archive/install.sls and map.jinja |
||
---|---|---|
.github/workflows | ||
bin | ||
docs | ||
prometheus | ||
test | ||
.gitignore | ||
.pre-commit-config.yaml | ||
.rstcheck.cfg | ||
.rubocop.yml | ||
.salt-lint | ||
.travis.yml | ||
.yamllint | ||
AUTHORS.md | ||
CHANGELOG.md | ||
CODEOWNERS | ||
commitlint.config.js | ||
FORMULA | ||
Gemfile | ||
Gemfile.lock | ||
kitchen.yml | ||
LICENSE | ||
pillar.example | ||
pre-commit_semantic-release.sh | ||
release-rules.js | ||
release.config.js |
prometheus-formula
Formula to manage Prometheus on GNU/Linux and MacOS.
Table of Contents
General notes
See the full SaltStack
Formulas installation and usage instructions. If you are interested
in writing or contributing to formulas, please pay attention to the Writing
Formula Section. If you want to use this formula, please pay
attention to the FORMULA
file and/or git tag
,
which contains the currently released version. This formula is versioned
according to Semantic Versioning. See
Formula
Versioning Section for more details.
Special notes
None.
Contributing to this repo
Commit message formatting is significant!!
Please see How to contribute <CONTRIBUTING>
for more
details.
Available metastates
prometheus
^^^^^^^^^^^^
Meta-state (This is a state that includes other states).
This installs from prometheus solution.
prometheus.archive
^^^^^^^^^^^^^^^^^^^^
This state will install prometheus components on MacOS and GNU/Linux from archive.
prometheus.clientlibs
^^^^^^^^^^^^^^^^^^^^^^^
This state will install prometheus client libraries on MacOS and GNU/Linux from archive.
prometheus.package
^^^^^^^^^^^^^^^^^^^^
This state will install prometheus component packages from GNU/Linux.
prometheus.config
^^^^^^^^^^^^^^^^^^^
This state will apply prometheus service configuration (files).
prometheus.service
^^^^^^^^^^^^^^^^^^^^
This state will start prometheus component services.
prometheus.exporters
^^^^^^^^^^^^^^^^^^^^^^
This state will apply prometheus exporters configuration.
prometheus.exporters.clean
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This state will remove prometheus exporters configuration.
prometheus.service.clean
^^^^^^^^^^^^^^^^^^^^^^^^^^
This state will stop prometheus component services.
prometheus.config.clean
^^^^^^^^^^^^^^^^^^^^^^^^^
This state will remove prometheus service configuration (files).
prometheus.package.clean
^^^^^^^^^^^^^^^^^^^^^^^^^^
This state will uninstall prometheus component packages from GNU/Linux.
prometheus.clientlibs.clean
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This state will uninstall prometheus client libraries.
prometheus.archive.clean
^^^^^^^^^^^^^^^^^^^^^^^^^^^
This state will remove prometheus component archive (directories).
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 prometheus
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.