private void validatePartsOfPipelineConfig(PipelineConfig pipelineConfig, PipelineConfigSaveValidationContext contextForStages) { for (StageConfig stageConfig : pipelineConfig.getStages()) { PipelineConfigSaveValidationContext contextForChildren = contextForStages.withParent(stageConfig); validateStageApprovalAuthorization(stageConfig, contextForChildren); for (JobConfig jobConfig : stageConfig.getJobs()) { PipelineConfigSaveValidationContext contextForJobChildren = contextForChildren.withParent(jobConfig); validateFetchTasks(jobConfig, contextForJobChildren); validateElasticProfileId(jobConfig, contextForJobChildren); validatePluggableArtifactConfig(jobConfig, contextForJobChildren); } } }