63 lines
1.9 KiB
Plaintext
63 lines
1.9 KiB
Plaintext
|
|
|
|
|
|
|
|
|
|
*** cdist #1: Introduction
|
|
**** Lecture content
|
|
***** Objective
|
|
****** Begin to use cdist
|
|
***** Steps
|
|
****** Checkout cdist quickstart https://www.cdi.st/manual/latest/cdist-quickstart.html
|
|
****** Install cdist locally
|
|
****** Create a new cdist configuration directory in ~/ungleich-learning-circle/USERNAME/dot-cdist
|
|
****** Create an empty initial manifest ("use touch")
|
|
****** Commit that status
|
|
****** Ensure that you can login as root to localhost via ssh without a password
|
|
****** Configure cdist to configures the motd of your localhost
|
|
******* Ensure you have a case block matching on $__target_host
|
|
******* Use the -c parameter to cdist to specify the configuration directory
|
|
******* Use the -vv parameter to get more verbose output
|
|
******* Search for / understand what MOTD stands for
|
|
****** Configure cdist to create the file /etc/cdist-configured
|
|
****** Configure cdist to setup the timezone on your local computer
|
|
****** Configure cdist to ensure emacs is installed
|
|
****** Ensure that in the end all changes are committed in your repository
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* cdist #5: Generating Code & Exploring
|
|
|
|
* Understanding how to generate code and when to use it
|
|
** define gencode-remote script: ~/.cdist/type/__nginx_site. After manifest is applied it should restart services so configuration is active. Our gencode-remote looks like echo "service nginx restart"
|
|
|
|
* Modify the previously created type *__my_nginx_site*
|
|
** We modify the previously created type so that the gencode-remote script reacts accordingly
|
|
- echo "if_configurationfile_changes" >> "$__messages_out"
|
|
|
|
* Read about cdist messaging
|
|
** cdist has a simple but powerful way of allowing communication between the initial manifest and types as well as types and types.
|
|
* What is the difference between gencode-local and gencode-remote?
|
|
|
|
** gencode-remote used to generate code to be executed on the target host
|
|
** gencode-local used to generate code to be executed on the source host |