mirror of
https://github.com/ansible/awx.git
synced 2026-05-07 01:17:37 -02:30
Persist schedule prompt on launch fields when editing (#14736)
* persist schedule prompt on launch fields when editing * Merge job template default credentials with schedule overrides in schedule prompt * rename vars for clarity * handle undefined defaultCredentials --------- Co-authored-by: Michael Abashian <mabashia@redhat.com>
This commit is contained in:
@@ -20,6 +20,7 @@ import UnsupportedScheduleForm from './UnsupportedScheduleForm';
|
|||||||
import parseRuleObj, { UnsupportedRRuleError } from './parseRuleObj';
|
import parseRuleObj, { UnsupportedRRuleError } from './parseRuleObj';
|
||||||
import buildRuleObj from './buildRuleObj';
|
import buildRuleObj from './buildRuleObj';
|
||||||
import buildRuleSet from './buildRuleSet';
|
import buildRuleSet from './buildRuleSet';
|
||||||
|
import mergeArraysByCredentialType from './mergeArraysByCredentialType';
|
||||||
|
|
||||||
const NUM_DAYS_PER_FREQUENCY = {
|
const NUM_DAYS_PER_FREQUENCY = {
|
||||||
week: 7,
|
week: 7,
|
||||||
@@ -350,6 +351,12 @@ function ScheduleForm({
|
|||||||
startDate: currentDate,
|
startDate: currentDate,
|
||||||
startTime: time,
|
startTime: time,
|
||||||
timezone: schedule.timezone || now.zoneName,
|
timezone: schedule.timezone || now.zoneName,
|
||||||
|
credentials: mergeArraysByCredentialType(
|
||||||
|
resourceDefaultCredentials,
|
||||||
|
credentials
|
||||||
|
),
|
||||||
|
labels: originalLabels.current,
|
||||||
|
instance_groups: originalInstanceGroups.current,
|
||||||
};
|
};
|
||||||
|
|
||||||
if (hasDaysToKeepField) {
|
if (hasDaysToKeepField) {
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
export default function mergeArraysByCredentialType(
|
||||||
|
defaultCredentials = [],
|
||||||
|
overrides = []
|
||||||
|
) {
|
||||||
|
const mergedArray = [...defaultCredentials];
|
||||||
|
|
||||||
|
overrides.forEach((override) => {
|
||||||
|
const index = mergedArray.findIndex(
|
||||||
|
(defaultCred) => defaultCred.credential_type === override.credential_type
|
||||||
|
);
|
||||||
|
if (index !== -1) {
|
||||||
|
mergedArray.splice(index, 1);
|
||||||
|
}
|
||||||
|
mergedArray.push(override);
|
||||||
|
});
|
||||||
|
|
||||||
|
return mergedArray;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user