I’ve created an Ansible playbook to deploy Citrix ADM (previously Citrix NetScaler MAS) Stylebooks. It will upload the latest version of the stylebook, migrate existing configpacks that are using the older version and then remove the old version from MAS.
There are still a lot to do with this playbook, for example handle parameters being added to a new version and delete Stylebooks if they’ve been removed from the playbook.
The playbook configures the following (as of this blog post):
- Logs on to MAS
- Locates all stylebooks in files/stylebooks
- Identifies stylbook versions
- Uploads stylebook if it that version doesn’t exist
- Migrates configpacks to the new version
- Removes the old version(s) of the stylebooks
Right now, there are four stylebooks:
- xenit-srvobject.yml – Adds one or more server objects
- xenit-svcgroup.yml – Adds a service groups with one or more server objects
- xenit-csvserver.yml – Adds a cs vserver
- xenit-lbvserver.yml – Adds an lb vserver using service group and binds it to a cs vserver
Feel free to try it out and any feedback is welcome! Or maybe even do a pull request?