fix: job collection was not added if job config only has workflows and no predefined tasks (#9963)
This commit is contained in:
@@ -172,7 +172,11 @@ export const sanitizeConfig = async (incomingConfig: Config): Promise<SanitizedC
|
||||
config.i18n = i18nConfig
|
||||
|
||||
// Need to add default jobs collection before locked documents collections
|
||||
if (Array.isArray(configWithDefaults.jobs?.tasks) && configWithDefaults.jobs.tasks.length > 0) {
|
||||
if (
|
||||
(Array.isArray(configWithDefaults.jobs?.tasks) && configWithDefaults.jobs?.tasks?.length) ||
|
||||
(Array.isArray(configWithDefaults.jobs?.workflows) &&
|
||||
configWithDefaults.jobs?.workflows?.length)
|
||||
) {
|
||||
let defaultJobsCollection = getDefaultJobsCollection(config as unknown as Config)
|
||||
|
||||
if (typeof configWithDefaults.jobs.jobsCollectionOverrides === 'function') {
|
||||
|
||||
@@ -13,10 +13,13 @@ export const getDefaultJobsCollection: (config: Config) => CollectionConfig | nu
|
||||
const workflowSlugs: Set<string> = new Set()
|
||||
const taskSlugs: Set<string> = new Set(['inline'])
|
||||
|
||||
if (config.jobs?.workflows.length) {
|
||||
config.jobs?.workflows.forEach((workflow) => {
|
||||
workflowSlugs.add(workflow.slug)
|
||||
})
|
||||
}
|
||||
|
||||
if (config.jobs?.tasks.length) {
|
||||
config.jobs.tasks.forEach((task) => {
|
||||
if (workflowSlugs.has(task.slug)) {
|
||||
throw new Error(
|
||||
@@ -25,6 +28,7 @@ export const getDefaultJobsCollection: (config: Config) => CollectionConfig | nu
|
||||
}
|
||||
taskSlugs.add(task.slug)
|
||||
})
|
||||
}
|
||||
|
||||
const jobsCollection: CollectionConfig = {
|
||||
slug: 'payload-jobs',
|
||||
|
||||
Reference in New Issue
Block a user