REM############################################################################ REM REM Copyright (c) 2002, 2003, Oracle Corporation. All rights reserved. REM REM REM PRODUCT REM Oracle Enterprise Manager REM REM THIS FILE IS MACHINE GENERATED. DO NOT EDIT! REM REM JOB TYPE SQL FOR JOB TYPE: DirectiveStepJob REM REM############################################################################# SET DEFINE OFF SET SQLPREFIX OFF BEGIN BEGIN DECLARE l_job_type_name MGMT_JOB_TYPE_INFO.job_type%TYPE; l_job_type_id MGMT_JOB_TYPE_INFO.job_type_id%TYPE; l_major_version MGMT_JOB_TYPE_INFO.major_version%TYPE; l_minor_version1 MGMT_JOB_TYPE_INFO.minor_version1%TYPE; l_minor_version2 MGMT_JOB_TYPE_INFO.minor_version2%TYPE; BEGIN l_job_type_name:= 'DirectiveStepJob'; BEGIN MGMT_JOB_ENGINE.fix_flatten_steps(TRUE); MGMT_JOB_ENGINE.get_max_versions(l_job_type_name, l_major_version, l_minor_version1, l_minor_version2, l_job_type_id); l_minor_version2 := l_minor_version2+1; EXCEPTION WHEN OTHERS THEN IF SQLCODE=MGMT_GLOBAL.INVALID_JOB_TYPE_ERR THEN l_major_version := 1; l_minor_version1 := 0; l_minor_version2 := 1; ELSE RAISE; END IF; END; -- CHECK TO VALIDATE REFERENCED COMMANDS/NESTED JOB TYPES BEGIN DECLARE l_commands SMP_EMD_STRING_ARRAY := SMP_EMD_STRING_ARRAY(); l_nested_jobtypes SMP_EMD_STRING_ARRAY := SMP_EMD_STRING_ARRAY(); BEGIN l_nested_jobtypes.trim(l_nested_jobtypes.count); l_nested_jobtypes.extend(1); l_nested_jobtypes(1) := 'ComponentStepJob'; MGMT_JOB_ENGINE.validate_job_type(l_job_type_name, l_commands, l_nested_jobtypes ); END; END; -- JOBTYPE ENTRY INSERT INTO MGMT_JOB_TYPE_INFO(job_type, version, major_version, minor_version1, minor_version2, job_type_category, all_target_types, agent_bound, single_target, suspend_on_nocreds, default_target_type, restartable, editable, suspendable, trusted,job_type_nlsid,job_type_default,create_text_nlsid,create_text_default,delete_text_nlsid,delete_text_default) VALUES ( l_job_type_name, '1.0', l_major_version, l_minor_version1, l_minor_version2, 0, 0, 1, 1, 1, null, 1, 1, 1, -1, 'PAFDIRECTIVE_DISP_NAME', 'Directive Step Job', null, null, null, null) RETURNING job_type_id INTO l_job_type_id; INSERT INTO MGMT_JOB_SINGLE_TARGET_TYPES(job_type_id, single_target_type) VALUES ( l_job_type_id, 'host' ); MGMT_JOB_ENGINE.insert_cluster_target_types(l_job_type_id); -- ENTRIES FOR STEPSET directiveStepJob INSERT INTO mgmt_job_execplan(job_type_id, step_name, step_type, nested_job_type, nested_job_target_type, incoming_edge_type, origin_step_name, origin_step_type, switch_var_name, switch_var_index, switch_case_val, iterate_param, iterate_param_filter, num_children, stepset_name, stepset_status, command_name, restart_mode, all_params, all_targets, halt_on_failure,step_nlsid ,step_default,trusted) VALUES ( l_job_type_id, 'directiveStepJob', 2, null, null, -1, null, -1, null, null, null, null, null, 1, null, null, null, 1, 0, 0, 0, null, null, -1 ); -- PARAMINFO ENTRIES FOR STEP transferAndExecute -- PARAM SOURCE: source type user BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(1); l_param_names(1) := 'directive_urn'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 0, 1, 'transferAndExecute', 7, 'user', 1, ' ', 0, 1, 0, l_param_names ); END; END; -- PARAM SOURCE: source type user BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(1); l_param_names(1) := 'property_names'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 0, 1, 'transferAndExecute', 7, 'user', 2, ' ', 0, 0, 0, l_param_names ); END; END; -- PARAM SOURCE: source type user BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(1); l_param_names(1) := 'missing_property_values'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 0, 1, 'transferAndExecute', 7, 'user', 3, ' ', 0, 0, 1, l_param_names ); END; END; -- PARAM SOURCE: source type inline BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(1); l_param_names(1) := 'container_loc'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 1, 1, 'transferAndExecute', 7, 'inline', 4, ' ', 0, 0, 0, l_param_names ); END; END; -- INLINE PARAM SOURCE DETAILS BEGIN DECLARE l_params MGMT_JOB_PARAM_LIST := MGMT_JOB_PARAM_LIST(); l_vector_vals MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_params.trim(l_params.count); l_params.extend(1); l_params(1) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(1).param_name := 'container_loc'; l_params(1).param_type := 1; l_params(1).scalar_value := '<0>'; l_params(1).vector_value := null; INSERT INTO MGMT_JOB_VALUE_PARAMS(source_id, param_values, action) SELECT source_id, l_params, 'none' FROM MGMT_JOB_PARAM_SOURCE WHERE job_type_id=l_job_type_id AND source_index=4; END; END; -- PARAM SOURCE: source type inline BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(5); l_param_names(1) := 'target_type'; l_param_names(2) := 'credential_set_name'; l_param_names(3) := 'credential_set_target_type'; l_param_names(4) := 'sudo'; l_param_names(5) := 'staging_area'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 1, 1, 'transferAndExecute', 7, 'inline', 5, ' ', 0, 0, 0, l_param_names ); END; END; -- INLINE PARAM SOURCE DETAILS BEGIN DECLARE l_params MGMT_JOB_PARAM_LIST := MGMT_JOB_PARAM_LIST(); l_vector_vals MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_params.trim(l_params.count); l_params.extend(5); l_params(1) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(1).param_name := 'target_type'; l_params(1).param_type := 1; l_params(1).scalar_value := 'host'; l_params(1).vector_value := null; l_params(2) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(2).param_name := 'credential_set_name'; l_params(2).param_type := 1; l_params(2).scalar_value := 'HostCredsNormal'; l_params(2).vector_value := null; l_params(3) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(3).param_name := 'credential_set_target_type'; l_params(3).param_type := 1; l_params(3).scalar_value := 'host'; l_params(3).vector_value := null; l_params(4) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(4).param_name := 'sudo'; l_params(4).param_type := 1; l_params(4).scalar_value := 'sudo'; l_params(4).vector_value := null; l_params(5) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(5).param_name := 'staging_area'; l_params(5).param_type := 1; l_params(5).scalar_value := '%emd_root%/EMStage'; l_params(5).vector_value := null; INSERT INTO MGMT_JOB_VALUE_PARAMS(source_id, param_values, action) SELECT source_id, l_params, 'none' FROM MGMT_JOB_PARAM_SOURCE WHERE job_type_id=l_job_type_id AND source_index=5; END; END; -- PARAM SOURCE: source type inline BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(3); l_param_names(1) := 'sudo_args'; l_param_names(2) := 'sudo_u'; l_param_names(3) := 'sudo_user'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 0, 1, 'transferAndExecute', 7, 'inline', 6, ' ', 0, 0, 0, l_param_names ); END; END; -- INLINE PARAM SOURCE DETAILS BEGIN DECLARE l_params MGMT_JOB_PARAM_LIST := MGMT_JOB_PARAM_LIST(); l_vector_vals MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_params.trim(l_params.count); l_params.extend(3); l_params(1) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(1).param_name := 'sudo_args'; l_params(1).param_type := 1; l_params(1).scalar_value := '-S'; l_params(1).vector_value := null; l_params(2) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(2).param_name := 'sudo_u'; l_params(2).param_type := 1; l_params(2).scalar_value := 'false'; l_params(2).vector_value := null; l_params(3) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(3).param_name := 'sudo_user'; l_params(3).param_type := 1; l_params(3).scalar_value := 'null'; l_params(3).vector_value := null; INSERT INTO MGMT_JOB_VALUE_PARAMS(source_id, param_values, action) SELECT source_id, l_params, 'none' FROM MGMT_JOB_PARAM_SOURCE WHERE job_type_id=l_job_type_id AND source_index=6; END; END; -- PARAM SOURCE: source type inline BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(2); l_param_names(1) := 'TargetName'; l_param_names(2) := 'TargetType'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 0, 1, 'transferAndExecute', 7, 'inline', 7, ' ', 1, 0, 0, l_param_names ); END; END; -- INLINE PARAM SOURCE DETAILS BEGIN DECLARE l_params MGMT_JOB_PARAM_LIST := MGMT_JOB_PARAM_LIST(); l_vector_vals MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_params.trim(l_params.count); l_params.extend(2); l_params(1) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(1).param_name := 'TargetName'; l_params(1).param_type := 1; l_params(1).scalar_value := '%job_target_names%[1]'; l_params(1).vector_value := null; l_params(2) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(2).param_name := 'TargetType'; l_params(2).param_type := 1; l_params(2).scalar_value := '%job_target_types%[1]'; l_params(2).vector_value := null; INSERT INTO MGMT_JOB_VALUE_PARAMS(source_id, param_values, action) SELECT source_id, l_params, 'none' FROM MGMT_JOB_PARAM_SOURCE WHERE job_type_id=l_job_type_id AND source_index=7; END; END; -- PARAM SOURCE: source type inline BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(1); l_param_names(1) := 'credential_columns'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 1, 1, 'transferAndExecute', 7, 'inline', 8, ' ', 0, 0, 0, l_param_names ); END; END; -- INLINE PARAM SOURCE DETAILS BEGIN DECLARE l_params MGMT_JOB_PARAM_LIST := MGMT_JOB_PARAM_LIST(); l_vector_vals MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_params.trim(l_params.count); l_params.extend(1); l_vector_vals.trim(l_vector_vals.count); l_vector_vals.extend(2); l_vector_vals(1) := 'username'; l_vector_vals(2) := 'password'; l_params(1) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(1).param_name := 'credential_columns'; l_params(1).param_type := 0; l_params(1).scalar_value := null; l_params(1).vector_value := l_vector_vals; INSERT INTO MGMT_JOB_VALUE_PARAMS(source_id, param_values, action) SELECT source_id, l_params, 'none' FROM MGMT_JOB_PARAM_SOURCE WHERE job_type_id=l_job_type_id AND source_index=8; END; END; -- PARAM SOURCE: source type credentials BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(2); l_param_names(1) := 'username'; l_param_names(2) := 'password'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 1, 1, 'transferAndExecute', 7, 'credentials', 9, ' ', 0, 0, 1, l_param_names ); END; END; -- CREDENTIAL PARAM SOURCE DETAILS BEGIN DECLARE l_cred_columns MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); l_target_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); l_target_types MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); l_container_paths MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); l_cred_type_columns MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_cred_type_columns.trim(l_cred_type_columns.count); l_cred_type_columns.extend(2); l_cred_type_columns(1) := 'HostUserName'; l_cred_type_columns(2) := 'HostPassword'; INSERT INTO MGMT_JOB_CRED_PARAMS(source_id, credential_set_name, credential_set_target_type, base_cred_type_name, base_cred_type_target_type, base_cred_type_columns, credential_columns, credential_columns_param, target_names, target_types, container_paths, target_names_param, target_types_param, container_paths_param, set_override) SELECT source_id, '%credential_set_name%', '%credential_set_target_type%', 'HostCreds', 'host', l_cred_type_columns, null, 'credential_columns', null, null, null, 'job_target_names', 'job_target_types', 'container_loc', 0 FROM MGMT_JOB_PARAM_SOURCE WHERE job_type_id= l_job_type_id AND source_index=9; END; END; -- PARAM SOURCE: source type user BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(1); l_param_names(1) := 'password'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 1, 1, 'transferAndExecute', 7, 'user', 10, null, 0, 0, 1, l_param_names ); END; END; -- PARAM SOURCE: source type inline BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(1); l_param_names(1) := 'sudoPassword'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 1, 1, 'transferAndExecute', 7, 'inline', 11, ' ', 0, 0, 1, l_param_names ); END; END; -- INLINE PARAM SOURCE DETAILS BEGIN DECLARE l_params MGMT_JOB_PARAM_LIST := MGMT_JOB_PARAM_LIST(); l_vector_vals MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_params.trim(l_params.count); l_params.extend(1); l_params(1) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(1).param_name := 'sudoPassword'; l_params(1).param_type := 1; l_params(1).scalar_value := '%password%'; l_params(1).vector_value := null; INSERT INTO MGMT_JOB_VALUE_PARAMS(source_id, param_values, action) SELECT source_id, l_params, 'none' FROM MGMT_JOB_PARAM_SOURCE WHERE job_type_id=l_job_type_id AND source_index=11; END; END; -- PARAM SOURCE: source type inline BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(2); l_param_names(1) := 'restart_agent'; l_param_names(2) := 'suspendTimeout'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 0, 1, 'transferAndExecute', 7, 'inline', 12, ' ', 0, 0, 0, l_param_names ); END; END; -- INLINE PARAM SOURCE DETAILS BEGIN DECLARE l_params MGMT_JOB_PARAM_LIST := MGMT_JOB_PARAM_LIST(); l_vector_vals MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_params.trim(l_params.count); l_params.extend(2); l_params(1) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(1).param_name := 'restart_agent'; l_params(1).param_type := 1; l_params(1).scalar_value := 'false'; l_params(1).vector_value := null; l_params(2) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(2).param_name := 'suspendTimeout'; l_params(2).param_type := 1; l_params(2).scalar_value := '30'; l_params(2).vector_value := null; INSERT INTO MGMT_JOB_VALUE_PARAMS(source_id, param_values, action) SELECT source_id, l_params, 'none' FROM MGMT_JOB_PARAM_SOURCE WHERE job_type_id=l_job_type_id AND source_index=12; END; END; -- PARAM SOURCE: source type inline BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(2); l_param_names(1) := 'shell_type'; l_param_names(2) := 'shell_command'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 1, 1, 'transferAndExecute', 7, 'inline', 13, ' ', 0, 0, 0, l_param_names ); END; END; -- INLINE PARAM SOURCE DETAILS BEGIN DECLARE l_params MGMT_JOB_PARAM_LIST := MGMT_JOB_PARAM_LIST(); l_vector_vals MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_params.trim(l_params.count); l_params.extend(2); l_params(1) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(1).param_name := 'shell_type'; l_params(1).param_type := 1; l_params(1).scalar_value := 'perl'; l_params(1).vector_value := null; l_params(2) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(2).param_name := 'shell_command'; l_params(2).param_type := 1; l_params(2).scalar_value := '%perlbin%/perl'; l_params(2).vector_value := null; INSERT INTO MGMT_JOB_VALUE_PARAMS(source_id, param_values, action) SELECT source_id, l_params, 'none' FROM MGMT_JOB_PARAM_SOURCE WHERE job_type_id=l_job_type_id AND source_index=13; END; END; -- PARAM SOURCE: source type inline BEGIN DECLARE l_param_names MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_param_names.trim(l_param_names.count); l_param_names.extend(2); l_param_names(1) := 'execute_directive'; l_param_names(2) := 'do_cleanup'; INSERT INTO MGMT_JOB_PARAM_SOURCE(job_type_id, apply_at_submission, apply_on_retry, step_name, step_type, source_type, source_index, source_data, override_user, required, encrypted, parameter_names) VALUES ( l_job_type_id, 0, 1, 'transferAndExecute', 7, 'inline', 14, ' ', 0, 0, 0, l_param_names ); END; END; -- INLINE PARAM SOURCE DETAILS BEGIN DECLARE l_params MGMT_JOB_PARAM_LIST := MGMT_JOB_PARAM_LIST(); l_vector_vals MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN l_params.trim(l_params.count); l_params.extend(2); l_params(1) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(1).param_name := 'execute_directive'; l_params(1).param_type := 1; l_params(1).scalar_value := 'true'; l_params(1).vector_value := null; l_params(2) := MGMT_JOB_PARAM_RECORD(null,1,null,null); l_params(2).param_name := 'do_cleanup'; l_params(2).param_type := 1; l_params(2).scalar_value := 'true'; l_params(2).vector_value := null; INSERT INTO MGMT_JOB_VALUE_PARAMS(source_id, param_values, action) SELECT source_id, l_params, 'none' FROM MGMT_JOB_PARAM_SOURCE WHERE job_type_id=l_job_type_id AND source_index=14; END; END; -- ENTRY FOR NESTED JOB transferAndExecute BEGIN DECLARE l_gen_iterate_param RAW(16) := SYS_GUID(); l_temp_stepset_name VARCHAR(96) := SYS_GUID() || 'transferAndExecute'; l_gen_stepset_name VARCHAR(64) := substr(l_temp_stepset_name, 1, 64); BEGIN IF MGMT_JOB_ENGINE.is_nested_flatten_candidate(l_job_type_id, 'ComponentStepJob', FALSE) THEN INSERT INTO MGMT_JOB_EXECPLAN(job_type_id, step_name, step_type, nested_job_type, nested_job_target_type, incoming_edge_type, origin_step_name, origin_step_type, switch_var_name, switch_var_index, switch_case_val, iterate_param, iterate_param_filter, num_children, stepset_name, stepset_status, command_name, restart_mode, all_params, all_targets, halt_on_failure,step_nlsid ,step_default, flattened_targets) VALUES ( l_job_type_id, 'transferAndExecute', 12, 'ComponentStepJob', null, 1, 'directiveStepJob', 2, null, null, null, l_gen_iterate_param, null, 0, 'directiveStepJob', null, null, 1, null, 0, 1, 'PAF_DIR_COMP_JOB_TRANSFER_AND_EXECUTE', 'Transfer files and/or execute directive', 0 ); INSERT INTO mgmt_job_execplan(job_type_id, step_name, step_type, nested_job_type, nested_job_target_type, incoming_edge_type, origin_step_name, origin_step_type, switch_var_name, switch_var_index, switch_case_val, iterate_param, iterate_param_filter, num_children, stepset_name, stepset_status, command_name, restart_mode, all_params, all_targets, halt_on_failure,step_nlsid ,step_default,trusted) VALUES ( l_job_type_id, 'transferAndExecute', 6, null, null, 7, 'transferAndExecute', 12, null, null, null, l_gen_iterate_param, null, 1, 'directiveStepJob', null, null, 1, null, null, 0, 'PAF_DIR_COMP_JOB_TRANSFER_AND_EXECUTE', 'Transfer files and/or execute directive', -1 ); INSERT INTO mgmt_job_execplan(job_type_id, step_name, step_type, nested_job_type, nested_job_target_type, incoming_edge_type, origin_step_name, origin_step_type, switch_var_name, switch_var_index, switch_case_val, iterate_param, iterate_param_filter, num_children, stepset_name, stepset_status, command_name, restart_mode, all_params, all_targets, halt_on_failure,step_nlsid ,step_default,trusted) VALUES ( l_job_type_id, 'transferAndExecute', 2, null, null, 6, 'transferAndExecute', 6, null, null, null, null, null, 1, 'transferAndExecute', null, null, 1, null, null, 0, 'PAF_DIR_COMP_JOB_TRANSFER_AND_EXECUTE', 'Transfer files and/or execute directive', -1 ); INSERT INTO MGMT_JOB_EXECPLAN(job_type_id, step_name, step_type, nested_job_type, nested_job_target_type, incoming_edge_type, origin_step_name, origin_step_type, switch_var_name, switch_var_index, switch_case_val, iterate_param, iterate_param_filter, num_children, stepset_name, stepset_status, command_name, restart_mode, all_params, all_targets, halt_on_failure,step_nlsid ,step_default, flattened_targets) VALUES ( l_job_type_id, 'transferAndExecute', 7, 'ComponentStepJob', null, 1, 'transferAndExecute', 2, null, null, null, l_gen_iterate_param, null, 0, 'transferAndExecute', null, null, 1, 0, 0, 0, 'PAF_DIR_COMP_JOB_TRANSFER_AND_EXECUTE', 'Transfer files and/or execute directive', 1 ); INSERT INTO MGMT_NESTED_JOB_TARGETS(job_type_id, step_name, step_type, target_name, target_type) VALUES ( l_job_type_id, 'transferAndExecute', 12, l_gen_iterate_param, null ); ELSE INSERT INTO mgmt_job_execplan(job_type_id, step_name, step_type, nested_job_type, nested_job_target_type, incoming_edge_type, origin_step_name, origin_step_type, switch_var_name, switch_var_index, switch_case_val, iterate_param, iterate_param_filter, num_children, stepset_name, stepset_status, command_name, restart_mode, all_params, all_targets, halt_on_failure,step_nlsid ,step_default,trusted) VALUES ( l_job_type_id, 'transferAndExecute', 7, 'ComponentStepJob', null, 1, 'directiveStepJob', 2, null, null, null, null, null, 0, 'directiveStepJob', null, null, 1, 0, 0, 0, 'PAF_DIR_COMP_JOB_TRANSFER_AND_EXECUTE', 'Transfer files and/or execute directive', -1 ); END IF; END; END; -- STEP PARAMETERS FOR STEP transferAndExecute BEGIN DECLARE l_vector_values MGMT_JOB_VECTOR_PARAMS := MGMT_JOB_VECTOR_PARAMS(); BEGIN INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'component_urn', 1, 0, '%component_urn%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'directive_urn', 1, 0, '%directive_urn%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'staging_area', 1, 0, '%staging_area%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'property_names', -1, 0, null, null, 'property_names' ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'missing_property_values', -1, 0, null, null, 'missing_property_values' ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'target_name', 1, 0, '%job_target_names%[1]', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'target_type', 1, 0, '%job_target_types%[1]', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'username', 1, 0, '%username%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'password', 1, 0, '%password%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'run_as', 1, 0, '%run_as%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'sudo', 1, 0, '%sudo%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'sudo_args', 1, 0, '%sudo_args%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'pam', 1, 0, '%pam%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'pam_args', 1, 0, '%pam_args%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'procedure_guid', 1, 0, '%procedure_guid%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'shell_type', 1, 0, '%shell_type%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'shell_command', 1, 0, '%shell_command%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'password_required', 1, 0, '%password_required%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'execute_directive', 1, 0, '%execute_directive%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'do_cleanup', 1, 0, '%do_cleanup%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'restart_agent', 1, 0, '%restart_agent%', null, null ); INSERT INTO MGMT_JOB_STEP_PARAMS(job_type_id, step_name, param_name, parameter_type, encrypted, scalar_value, vector_value, value_of) VALUES ( l_job_type_id, 'transferAndExecute', 'suspendTimeout', 1, 0, '%suspendTimeout%', null, null ); END; END; MGMT_JOB_ENGINE.extract_nested_job_targets(l_job_type_id, 'transferAndExecute', MGMT_JOB_VECTOR_PARAMS('%job_target_names%[1]'),MGMT_JOB_VECTOR_PARAMS('%job_target_types%[1]')); -- DISPLAYINFO ENTRIES INSERT INTO MGMT_JOB_TYPE_DISPLAY_INFO(job_type_id, nls_bundle,use_default_create_ui) VALUES ( l_job_type_id, 'oracle.sysman.pp.paf.ui.resource.PAResourceBundle', 0 ); -- Ensure that all existing scheduled executions use the new jobtype version MGMT_JOB_ENGINE.reschedule_on_new_jobtype_ver(l_job_type_id); -- Patch NLS information for backward-compatibility MGMT_JOB_ENGINE.update_job_type_nls_info(l_job_type_id, l_job_type_name); END; END; MGMT_JOB_ENGINE.fix_flatten_steps(FALSE); EXCEPTION WHEN OTHERS THEN MGMT_JOB_ENGINE.fix_flatten_steps(FALSE); RAISE; END; / COMMIT; SET DEFINE ON SET SQLPREFIX ON