/********************************************* * Copyright (c) 2013 AnsibleWorks, Inc. * * JobTemplates.js * Form definition for Job Template model * * */ angular.module('JobTemplateFormDefinition', []) .value( 'JobTemplateForm', { addTitle: 'Create Job Templates', //Legend in add mode editTitle: '{{ name }}', //Legend in edit mode name: 'job_templates', twoColumns: true, well: true, fields: { name: { label: 'Name', type: 'text', addRequired: true, editRequired: true, column: 1 }, description: { label: 'Description', type: 'text', addRequired: false, editRequired: false, column: 1 }, job_type: { label: 'Job Type', type: 'select', ngOptions: 'type.label for type in job_type_options', default: 0, addRequired: true, editRequired: true, column: 1, awPopOver: "

When this template is submitted as a job, setting the type to run will execute the playbook, running tasks " + " on the selected hosts.

Setting the type to check will not execute the playbook. Instead, ansible will check playbook " + " syntax, test environment setup and report problems.

", dataTitle: 'Forks', dataPlacement: 'right' }, inventory: { label: 'Inventory', type: 'lookup', sourceModel: 'inventory', sourceField: 'name', addRequired: true, editRequired: true, ngClick: 'lookUpInventory()', column: 1 }, project: { label: 'Project', type: 'lookup', sourceModel: 'project', sourceField: 'name', addRequired: true, editRequired: true, ngClick: 'lookUpProject()', column: 1 }, playbook: { label: 'Playbook', type:'select', ngOptions: 'book for book in playbook_options', id: 'playbook-select', addRequired: true, editRequired: true, column: 1 }, credential: { label: 'Credential', type: 'lookup', sourceModel: 'credential', sourceField: 'name', ngClick: 'lookUpCredential()', addRequired: false, editRequired: false, column: 1 }, forks: { label: 'Forks', id: 'forks-number', type: 'number', integer: true, min: 0, max: 100, slider: true, class: 'input-mini', default: '0', addRequired: false, editRequired: false, column: 2, awPopOver: "

Specify the number of parallel or simultaneous processes to use while executing the playbook. Provide a value between 0 and 100. " + "A value of zero will use the ansible default setting of 5 parallel processes.

", dataTitle: 'Forks', dataPlacement: 'left' }, limit: { label: 'Limit', type: 'text', addRequired: false, editRequired: false, column: 2, awPopOver: "

Provide a host pattern to further constrain the list of hosts that will be managed or affected by the playbook. " + "Multiple patterns can be separated by ; : or ,

For more information and examples see the " + "Selecting Targets section under Inventory and Patterns " + " in the Ansible documentation.

", dataTitle: 'Forks', dataPlacement: 'left' }, verbosity: { label: 'Verbosity', type: 'select', ngOptions: 'v.label for v in verbosity_options', default: 0, addRequired: true, editRequired: true, column: 2, awPopOver: "

Indicate the amount of debugging type information ansible should produce as the playbook executes.

", dataTitle: 'Forks', dataPlacement: 'left' }, extra_vars: { label: 'Extra Variables', type: 'textarea', rows: 6, class: 'span12', addRequired: false, editRequired: false, default: "\{\}", column: 2, awPopOver: "

Enter variables as JSON. Both the key and value must be wrapped in double quotes. " + "Separate variables with commas, and wrap the entire string with { }. " + " For example:

{"ntp_server": "ntp.example.com",
" + '"proxy": "proxy.example.com"
}

See additional JSON examples at www.json.org

', dataTitle: 'Extra Variables', dataPlacement: 'left' } }, buttons: { //for now always generates