862369145b
fix: Service restart handling with watch requisite |
||
---|---|---|
.github/workflows | ||
bin | ||
docs | ||
keepalived | ||
test/integration | ||
.gitignore | ||
.gitlab-ci.yml | ||
.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 |
keepalived-formula
Formula to set up and configure keepalived
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.
Contributing to this repo
Commit message formatting is significant!!
Please see How to contribute for more details.
Available states
keepalived
Installs and configures the keepalived package.
keepalived.package
Installs the keepalived package.
keepalived.config
This state manages the file keepalived.conf
under
/etc/keepalived
(template found in "keepalived/files"). The
configuration is populated by values in "keepalived/map.jinja" based on
the package's default values (and RedHat, Debian, Suse and Arch family
distribution specific values), which can then be overridden by values of
the same name in pillar.
keepalived.scripts
Put arbitrary helper scripts on the minion. Default scripts location:
/etc/keepalived
This state can deploy script, set its
permissions like file mode, user and group, but it won't create new user
/ group if they do not exist.
keepalived.service
This state ensures that keepalived service is running.
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 keepalived
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.