Create a skill assembly
A skill assembly defines a set of skills should be installed or removed from nodes using add and remove rules.
Prerequisites
Create a skill assembly
To create a skill assembly, follow these steps:
Create a file named
skill-assembly.json
and paste in the following skill assembly definition:{ "name": "my-skill-assembly", "skills": [ { "action": "add", "skill": { "name": "courier-runner", "channel": "stable", "value": ["1.4.6"] } }, { "action": "add", "skill": { "channel": "stable", "name": "chef-gohai", "value": ["1.2.1"] } }, { "action": "add", "skill": { "name": "shell-interpreter", "channel": "stable", "value": ["1.0.5"] } }, { "action": "add", "skill": { "name": "inspec-interpreter", "channel": "stable", "value": ["1.0.6"] } }, { "action": "add", "skill": { "name": "restart-interpreter", "channel": "stable", "value": ["1.0.4"] } }, { "action": "add", "skill": { "name": "chef-client-interpreter", "channel": "stable", "value": ["1.0.6"] } } ] }
Create the skill assembly:
chef-node-management-cli management assembly create-assembly --body-file skill-assembly.json --profile <NODE_MANAGER_PROFILE_NAME>
The response is similar to the following:
{ "item": { "skillAssemblyId": "e2e66c8a-79ff-4bdc-a4cd-739c3f02f9e9" } }
Save the value of
skillAssemblyId
, you will use it to create a node cohort.
Troubleshooting
Use the assembly find-one-assembly
subcommand to verify that the skill assembly was created or updated successfully:
chef-node-management-cli management assembly find-one-assembly --skillAssemblyId <SKILL_ASSEMBLY_ID> --profile <NODE_MANAGER_PROFILE_NAME>
Next steps
- Create override settings that define required skill settings.