.\" Man page generated from reStructuredText. . .TH "KNIFE-ROLE" "1" "Chef 12.0" "" "knife role" .SH NAME knife-role \- The man page for the knife role subcommand. . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .sp A role is a way to define certain patterns and processes that exist across nodes in an organization as belonging to a single job function. Each role consists of zero (or more) attributes and a run\-list. Each node can have zero (or more) roles assigned to it. When a role is run against a node, the configuration details of that node are compared against the attributes of the role, and then the contents of that role\(aqs run\-list are applied to the node\(aqs configuration details. When a chef\-client runs, it merges its own attributes and run\-lists with those contained within each assigned role. .sp The \fBknife role\fP subcommand is used to manage the roles that are associated with one or more nodes on a Chef server\&. .SH COMMON OPTIONS .sp The following options may be used with any of the arguments available to the \fBknife role\fP subcommand: .INDENT 0.0 .TP .B \fB\-\-chef\-zero\-port PORT\fP The port on which chef\-zero will listen. .TP .B \fB\-c CONFIG_FILE\fP, \fB\-\-config CONFIG_FILE\fP The configuration file to use. .TP .B \fB\-d\fP, \fB\-\-disable\-editing\fP Use to prevent the $EDITOR from being opened and to accept data as\-is. .TP .B \fB\-\-defaults\fP Use to have knife use the default value instead of asking a user to provide one. .TP .B \fB\-e EDITOR\fP, \fB\-\-editor EDITOR\fP The $EDITOR that is used for all interactive commands. .TP .B \fB\-E ENVIRONMENT\fP, \fB\-\-environment ENVIRONMENT\fP The name of the environment. When this option is added to a command, the command will run only against the named environment. .TP .B \fB\-F FORMAT\fP, \fB\-\-format FORMAT\fP The output format: \fBsummary\fP (default), \fBtext\fP, \fBjson\fP, \fByaml\fP, and \fBpp\fP\&. .TP .B \fB\-h\fP, \fB\-\-help\fP Shows help for the command. .TP .B \fB\-k KEY\fP, \fB\-\-key KEY\fP The private key that knife will use to sign requests made by the API client to the Chef server\&. .TP .B \fB\-\-[no\-]color\fP Use to view colored output. .TP .B \fB\-\-print\-after\fP Use to show data after a destructive operation. .TP .B \fB\-s URL\fP, \fB\-\-server\-url URL\fP The URL for the Chef server\&. .TP .B \fB\-u USER\fP, \fB\-\-user USER\fP The user name used by knife to sign requests made by the API client to the Chef server\&. Authentication will fail if the user name does not match the private key. .TP .B \fB\-V\fP, \fB\-\-verbose\fP Set for more verbose outputs. Use \fB\-VV\fP for maximum verbosity. .TP .B \fB\-v\fP, \fB\-\-version\fP The version of the chef\-client\&. .TP .B \fB\-y\fP, \fB\-\-yes\fP Use to respond to all confirmation prompts with "Yes". knife will not ask for confirmation. .TP .B \fB\-z\fP, \fB\-\-local\-mode\fP Use to run the chef\-client in local mode. This allows all commands that work against the Chef server to also work against the local chef\-repo\&. .UNINDENT .SH BULK DELETE .sp The \fBbulk delete\fP argument is used to delete one or more roles that match a pattern defined by a regular expression. The regular expression must be within quotes and not be surrounded by forward slashes (/). .sp \fBSyntax\fP .sp This argument has the following syntax: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role bulk delete REGEX .ft P .fi .UNINDENT .UNINDENT .sp \fBOptions\fP .sp This command does not have any specific options. .sp \fBExamples\fP .sp Use a regular expression to define the pattern used to bulk delete roles: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role bulk delete "^[0\-9]{3}$" .ft P .fi .UNINDENT .UNINDENT .SH CREATE .sp The \fBcreate\fP argument is used to add a role to the Chef server\&. Role data is saved as JSON on the Chef server\&. .sp \fBSyntax\fP .sp This argument has the following syntax: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role create ROLE_NAME (options) .ft P .fi .UNINDENT .UNINDENT .sp \fBOptions\fP .sp This argument has the following options: .INDENT 0.0 .TP .B \fB\-d DESCRIPTION\fP, \fB\-\-description DESCRIPTION\fP The description of the role. This value will populate the description field for the role on the Chef server\&. .UNINDENT .sp \fBExamples\fP .sp To add a role named \fBrole1\fP, enter: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role create role1 .ft P .fi .UNINDENT .UNINDENT .sp In the $EDITOR enter the role data in JSON: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C ## sample: { "name": "role1", "default_attributes": { }, "json_class": "Chef::Role", "run_list": [\(aqrecipe[cookbook_name::recipe_name], role[role_name]\(aq ], "description": "", "chef_type": "role", "override_attributes": { } } .ft P .fi .UNINDENT .UNINDENT .sp When finished, save it. .SH DELETE .sp The \fBdelete\fP argument is used to delete a role from the Chef server\&. .sp \fBSyntax\fP .sp This argument has the following syntax: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role delete ROLE_NAME .ft P .fi .UNINDENT .UNINDENT .sp \fBOptions\fP .sp This command does not have any specific options. .sp \fBExamples\fP .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role delete devops .ft P .fi .UNINDENT .UNINDENT .sp Type \fBY\fP to confirm a deletion. .SH EDIT .sp The \fBedit\fP argument is used to edit role details on the Chef server\&. .sp \fBSyntax\fP .sp This argument has the following syntax: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role edit ROLE_NAME .ft P .fi .UNINDENT .UNINDENT .sp \fBOptions\fP .sp This command does not have any specific options. .sp \fBExamples\fP .sp To edit the data for a role named \fBrole1\fP, enter: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role edit role1 .ft P .fi .UNINDENT .UNINDENT .sp Update the role data in JSON: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C ## sample: { "name": "role1", "default_attributes": { }, "json_class": "Chef::Role", "run_list": [\(aqrecipe[cookbook_name::recipe_name], role[role_name]\(aq ], "description": "This is the description for the role1 role.", "chef_type": "role", "override_attributes": { } } .ft P .fi .UNINDENT .UNINDENT .sp When finished, save it. .SH FROM FILE .sp The \fBfrom file\fP argument is used to create a role using existing JSON data as a template. .sp \fBSyntax\fP .sp This argument has the following syntax: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role from file FILE .ft P .fi .UNINDENT .UNINDENT .sp \fBOptions\fP .sp This command does not have any specific options. .sp \fBExamples\fP .sp To view role details based on the values contained in a JSON file: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role from file "path to JSON file" .ft P .fi .UNINDENT .UNINDENT .SH LIST .sp The \fBlist\fP argument is used to view a list of roles that are currently available on the Chef server\&. .sp \fBSyntax\fP .sp This argument has the following syntax: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role list .ft P .fi .UNINDENT .UNINDENT .sp \fBOptions\fP .sp This argument has the following options: .INDENT 0.0 .TP .B \fB\-w\fP, \fB\-\-with\-uri\fP Use to show the corresponding URIs. .UNINDENT .sp \fBExamples\fP .sp To view a list of roles on the Chef server and display the URI for each role returned, enter: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role list \-w .ft P .fi .UNINDENT .UNINDENT .SH SHOW .sp The \fBshow\fP argument is used to view the details of a role. .sp \fBSyntax\fP .sp This argument has the following syntax: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role show ROLE_NAME .ft P .fi .UNINDENT .UNINDENT .sp \fBOptions\fP .sp This argument has the following options: .INDENT 0.0 .TP .B \fB\-a ATTR\fP, \fB\-\-attribute ATTR\fP The attribute (or attributes) to show. .UNINDENT .sp \fBExamples\fP .sp To view information in JSON format, use the \fB\-F\fP common option as part of the command like this: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role show devops \-F json .ft P .fi .UNINDENT .UNINDENT .sp Other formats available include \fBtext\fP, \fByaml\fP, and \fBpp\fP\&. .sp To view information in JSON format, use the \fB\-F\fP common option as part of the command like this: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ knife role show devops \-F json .ft P .fi .UNINDENT .UNINDENT .sp Other formats available include \fBtext\fP, \fByaml\fP, and \fBpp\fP\&. .SH AUTHOR Chef .\" Generated by docutils manpage writer. .