diff --git a/docs/pom.xml b/docs/pom.xml
index 4422b0ac..fe59b962 100644
--- a/docs/pom.xml
+++ b/docs/pom.xml
@@ -5,7 +5,7 @@
org.springframework.cloud.internal
releaser-parent
- 3.0.0-SNAPSHOT
+ 2.0.0-SNAPSHOT
releaser-docs
pom
diff --git a/pom.xml b/pom.xml
index 85f63bf5..03e024de 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,13 +6,13 @@
org.springframework.cloud.internal
releaser-parent
- 3.0.0-SNAPSHOT
+ 2.0.0-SNAPSHOT
pom
org.springframework.cloud
spring-cloud-build
- 4.0.3
+ 3.1.8
@@ -28,9 +28,9 @@
UTF-8
- 17
+ 11
- 2022.0.3
+ 2021.0.8
1.315
0.0.9
diff --git a/projects/pom.xml b/projects/pom.xml
index 26896f47..d876de7e 100644
--- a/projects/pom.xml
+++ b/projects/pom.xml
@@ -5,13 +5,13 @@
4.0.0
releaser-projects
- 3.0.0-SNAPSHOT
+ 2.0.0-SNAPSHOT
pom
org.springframework.cloud.internal
releaser-parent
- 3.0.0-SNAPSHOT
+ 2.0.0-SNAPSHOT
..
diff --git a/projects/spring-cloud-stream/pom.xml b/projects/spring-cloud-stream/pom.xml
index ac0baaf0..0589f99d 100644
--- a/projects/spring-cloud-stream/pom.xml
+++ b/projects/spring-cloud-stream/pom.xml
@@ -10,13 +10,13 @@
org.springframework.cloud.internal
releaser-projects
- 3.0.0-SNAPSHOT
+ 2.0.0-SNAPSHOT
..
UTF-8
- 17
+ 11
diff --git a/projects/spring-cloud-stream/src/main/java/releaser/cloud/buildsystem/SpringCloudStreamMavenBomParser.java b/projects/spring-cloud-stream/src/main/java/releaser/cloud/buildsystem/SpringCloudStreamMavenBomParser.java
index 27756e44..6b42e6c9 100644
--- a/projects/spring-cloud-stream/src/main/java/releaser/cloud/buildsystem/SpringCloudStreamMavenBomParser.java
+++ b/projects/spring-cloud-stream/src/main/java/releaser/cloud/buildsystem/SpringCloudStreamMavenBomParser.java
@@ -138,30 +138,30 @@ class SpringCloudStreamMavenBomParser implements CustomBomParser {
public Set setVersion(Set projects, String projectName, String version) {
Set newProjects = new LinkedHashSet<>(projects);
switch (projectName) {
- case SPRING_BOOT:
- case BOOT_STARTER_ARTIFACT_ID:
- case BOOT_STARTER_PARENT_ARTIFACT_ID:
- case BOOT_DEPENDENCIES_ARTIFACT_ID:
- updateBootVersions(newProjects, version);
- break;
- case BUILD_ARTIFACT_ID:
- case CLOUD_DEPENDENCIES_PARENT_ARTIFACT_ID:
- updateBuildVersions(newProjects, version);
- break;
- case CLOUD_ARTIFACT_ID:
- case CLOUD_DEPENDENCIES_ARTIFACT_ID:
- case CLOUD_RELEASE_ARTIFACT_ID:
- case CLOUD_STARTER_ARTIFACT_ID:
- case CLOUD_STARTER_PARENT_ARTIFACT_ID:
- updateSpringCloudVersions(newProjects, version);
- break;
- case STREAM_DEPS_ARTIFACT_ID:
- case STREAM_STARTER_ARTIFACT_ID:
- case STREAM_STARTER_BUILD_ARTIFACT_ID:
- case STREAM_STARTER_PARENT_ARTIFACT_ID:
- case STREAM_DOCS_ARTIFACT_ID:
- updateStreamVersions(newProjects, version);
- break;
+ case SPRING_BOOT:
+ case BOOT_STARTER_ARTIFACT_ID:
+ case BOOT_STARTER_PARENT_ARTIFACT_ID:
+ case BOOT_DEPENDENCIES_ARTIFACT_ID:
+ updateBootVersions(newProjects, version);
+ break;
+ case BUILD_ARTIFACT_ID:
+ case CLOUD_DEPENDENCIES_PARENT_ARTIFACT_ID:
+ updateBuildVersions(newProjects, version);
+ break;
+ case CLOUD_ARTIFACT_ID:
+ case CLOUD_DEPENDENCIES_ARTIFACT_ID:
+ case CLOUD_RELEASE_ARTIFACT_ID:
+ case CLOUD_STARTER_ARTIFACT_ID:
+ case CLOUD_STARTER_PARENT_ARTIFACT_ID:
+ updateSpringCloudVersions(newProjects, version);
+ break;
+ case STREAM_DEPS_ARTIFACT_ID:
+ case STREAM_STARTER_ARTIFACT_ID:
+ case STREAM_STARTER_BUILD_ARTIFACT_ID:
+ case STREAM_STARTER_PARENT_ARTIFACT_ID:
+ case STREAM_DOCS_ARTIFACT_ID:
+ updateStreamVersions(newProjects, version);
+ break;
}
return newProjects;
}
diff --git a/projects/spring-cloud/pom.xml b/projects/spring-cloud/pom.xml
index 910c3b3a..fe172b5d 100644
--- a/projects/spring-cloud/pom.xml
+++ b/projects/spring-cloud/pom.xml
@@ -10,13 +10,13 @@
org.springframework.cloud.internal
releaser-projects
- 3.0.0-SNAPSHOT
+ 2.0.0-SNAPSHOT
..
UTF-8
- 17
+ 11
diff --git a/projects/spring-cloud/src/main/java/releaser/cloud/buildsystem/SpringCloudMavenBomParser.java b/projects/spring-cloud/src/main/java/releaser/cloud/buildsystem/SpringCloudMavenBomParser.java
index 349704ca..48c9af0d 100644
--- a/projects/spring-cloud/src/main/java/releaser/cloud/buildsystem/SpringCloudMavenBomParser.java
+++ b/projects/spring-cloud/src/main/java/releaser/cloud/buildsystem/SpringCloudMavenBomParser.java
@@ -139,31 +139,31 @@ class SpringCloudMavenBomParser implements CustomBomParser {
public Set setVersion(Set projects, String projectName, String version) {
Set newProjects = new LinkedHashSet<>(projects);
switch (projectName) {
- case SPRING_BOOT:
- case BOOT_STARTER_ARTIFACT_ID:
- case BOOT_STARTER_PARENT_ARTIFACT_ID:
- case BOOT_DEPENDENCIES_ARTIFACT_ID:
- updateBootVersions(newProjects, version);
- break;
- case BUILD_ARTIFACT_ID:
- case CLOUD_DEPENDENCIES_PARENT_ARTIFACT_ID:
- updateBuildVersions(newProjects, version);
- break;
- case CLOUD_ARTIFACT_ID:
- case CLOUD_DEPENDENCIES_ARTIFACT_ID:
- case CLOUD_RELEASE_ARTIFACT_ID:
- case CLOUD_STARTER_ARTIFACT_ID:
- case CLOUD_STARTER_PARENT_ARTIFACT_ID:
- case CLOUD_STARTER_BUILD_ARTIFACT_ID:
- updateSpringCloudVersions(newProjects, version);
- break;
- case STREAM_DEPS_ARTIFACT_ID:
- case STREAM_STARTER_ARTIFACT_ID:
- case STREAM_STARTER_BUILD_ARTIFACT_ID:
- case STREAM_STARTER_PARENT_ARTIFACT_ID:
- case STREAM_DOCS_ARTIFACT_ID:
- updateStreamVersions(newProjects, version);
- break;
+ case SPRING_BOOT:
+ case BOOT_STARTER_ARTIFACT_ID:
+ case BOOT_STARTER_PARENT_ARTIFACT_ID:
+ case BOOT_DEPENDENCIES_ARTIFACT_ID:
+ updateBootVersions(newProjects, version);
+ break;
+ case BUILD_ARTIFACT_ID:
+ case CLOUD_DEPENDENCIES_PARENT_ARTIFACT_ID:
+ updateBuildVersions(newProjects, version);
+ break;
+ case CLOUD_ARTIFACT_ID:
+ case CLOUD_DEPENDENCIES_ARTIFACT_ID:
+ case CLOUD_RELEASE_ARTIFACT_ID:
+ case CLOUD_STARTER_ARTIFACT_ID:
+ case CLOUD_STARTER_PARENT_ARTIFACT_ID:
+ case CLOUD_STARTER_BUILD_ARTIFACT_ID:
+ updateSpringCloudVersions(newProjects, version);
+ break;
+ case STREAM_DEPS_ARTIFACT_ID:
+ case STREAM_STARTER_ARTIFACT_ID:
+ case STREAM_STARTER_BUILD_ARTIFACT_ID:
+ case STREAM_STARTER_PARENT_ARTIFACT_ID:
+ case STREAM_DOCS_ARTIFACT_ID:
+ updateStreamVersions(newProjects, version);
+ break;
}
return newProjects;
}
diff --git a/releaser-core/pom.xml b/releaser-core/pom.xml
index 968d34e6..673be66d 100644
--- a/releaser-core/pom.xml
+++ b/releaser-core/pom.xml
@@ -10,7 +10,7 @@
org.springframework.cloud.internal
releaser-parent
- 3.0.0-SNAPSHOT
+ 2.0.0-SNAPSHOT
..
diff --git a/releaser-core/src/main/java/releaser/internal/ReleaserProperties.java b/releaser-core/src/main/java/releaser/internal/ReleaserProperties.java
index b61310be..25f7e237 100644
--- a/releaser-core/src/main/java/releaser/internal/ReleaserProperties.java
+++ b/releaser-core/src/main/java/releaser/internal/ReleaserProperties.java
@@ -27,7 +27,8 @@ import java.util.List;
import java.util.Map;
import java.util.StringJoiner;
-import jakarta.validation.constraints.NotBlank;
+import javax.validation.constraints.NotBlank;
+
import org.apache.commons.lang.SerializationUtils;
import org.springframework.boot.context.properties.ConfigurationProperties;
diff --git a/releaser-spring/pom.xml b/releaser-spring/pom.xml
index cec83d93..0e1d0499 100644
--- a/releaser-spring/pom.xml
+++ b/releaser-spring/pom.xml
@@ -10,13 +10,13 @@
org.springframework.cloud.internal
releaser-parent
- 3.0.0-SNAPSHOT
+ 2.0.0-SNAPSHOT
..
UTF-8
- 17
+ 11
diff --git a/releaser-spring/src/main/java/releaser/internal/spring/BatchConfiguration.java b/releaser-spring/src/main/java/releaser/internal/spring/BatchConfiguration.java
index f2407e9b..0bc61646 100644
--- a/releaser-spring/src/main/java/releaser/internal/spring/BatchConfiguration.java
+++ b/releaser-spring/src/main/java/releaser/internal/spring/BatchConfiguration.java
@@ -16,15 +16,24 @@
package releaser.internal.spring;
+import javax.sql.DataSource;
+
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.MapperFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import releaser.internal.ReleaserProperties;
+import org.springframework.batch.core.configuration.annotation.BatchConfigurer;
+import org.springframework.batch.core.configuration.annotation.DefaultBatchConfigurer;
+import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing;
+import org.springframework.batch.core.configuration.annotation.JobBuilderFactory;
+import org.springframework.batch.core.configuration.annotation.StepBuilderFactory;
import org.springframework.batch.core.explore.JobExplorer;
+import org.springframework.batch.core.explore.support.JobExplorerFactoryBean;
import org.springframework.batch.core.launch.JobLauncher;
import org.springframework.batch.core.repository.JobRepository;
import org.springframework.batch.core.repository.dao.Jackson2ExecutionContextStringSerializer;
+import org.springframework.batch.core.repository.support.JobRepositoryFactoryBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.Bean;
@@ -34,6 +43,7 @@ import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.transaction.PlatformTransactionManager;
@Configuration
+@EnableBatchProcessing
class BatchConfiguration {
@Bean
@@ -66,11 +76,11 @@ class BatchConfiguration {
@Bean
@ConditionalOnMissingBean
- FlowRunner flowRunner(JobRepository jobRepository, PlatformTransactionManager manager,
+ FlowRunner flowRunner(StepBuilderFactory stepBuilderFactory, JobBuilderFactory jobBuilderFactory,
ProjectsToRunFactory projectsToRunFactory, JobLauncher jobLauncher,
FlowRunnerTaskExecutorSupplier flowRunnerTaskExecutorSupplier, ConfigurableApplicationContext context,
ReleaserProperties releaserProperties, BuildReportHandler reportHandler) {
- return new SpringBatchFlowRunner(jobRepository, manager, projectsToRunFactory, jobLauncher,
+ return new SpringBatchFlowRunner(stepBuilderFactory, jobBuilderFactory, projectsToRunFactory, jobLauncher,
flowRunnerTaskExecutorSupplier, context, releaserProperties, reportHandler);
}
@@ -85,28 +95,32 @@ class BatchConfiguration {
serializer.setObjectMapper(objectMapper);
return serializer;
}
- /*
- * // Needed to add this to serialize the exceptions
- *
- * @Bean BatchConfigurer myBatchConfigurer(DataSource dataSource,
- * Jackson2ExecutionContextStringSerializer
- * myJackson2ExecutionContextStringSerializer, PlatformTransactionManager
- * transactionManager) { return new DefaultBatchConfigurer(dataSource) {
- *
- * @Override protected JobExplorer createJobExplorer() throws Exception {
- * JobExplorerFactoryBean jobExplorerFactoryBean = new JobExplorerFactoryBean();
- * jobExplorerFactoryBean.setDataSource(dataSource);
- * jobExplorerFactoryBean.setSerializer(myJackson2ExecutionContextStringSerializer);
- * jobExplorerFactoryBean.afterPropertiesSet(); return
- * jobExplorerFactoryBean.getObject(); }
- *
- * @Override protected JobRepository createJobRepository() throws Exception {
- * JobRepositoryFactoryBean jobRepositoryFactoryBean = new JobRepositoryFactoryBean();
- * jobRepositoryFactoryBean.setDataSource(dataSource);
- * jobRepositoryFactoryBean.setSerializer(myJackson2ExecutionContextStringSerializer);
- * jobRepositoryFactoryBean.setTransactionManager(transactionManager);
- * jobRepositoryFactoryBean.afterPropertiesSet(); return
- * jobRepositoryFactoryBean.getObject(); } }; }
- */
+
+ // Needed to add this to serialize the exceptions
+ @Bean
+ BatchConfigurer myBatchConfigurer(DataSource dataSource,
+ Jackson2ExecutionContextStringSerializer myJackson2ExecutionContextStringSerializer,
+ PlatformTransactionManager transactionManager) {
+ return new DefaultBatchConfigurer(dataSource) {
+ @Override
+ protected JobExplorer createJobExplorer() throws Exception {
+ JobExplorerFactoryBean jobExplorerFactoryBean = new JobExplorerFactoryBean();
+ jobExplorerFactoryBean.setDataSource(dataSource);
+ jobExplorerFactoryBean.setSerializer(myJackson2ExecutionContextStringSerializer);
+ jobExplorerFactoryBean.afterPropertiesSet();
+ return jobExplorerFactoryBean.getObject();
+ }
+
+ @Override
+ protected JobRepository createJobRepository() throws Exception {
+ JobRepositoryFactoryBean jobRepositoryFactoryBean = new JobRepositoryFactoryBean();
+ jobRepositoryFactoryBean.setDataSource(dataSource);
+ jobRepositoryFactoryBean.setSerializer(myJackson2ExecutionContextStringSerializer);
+ jobRepositoryFactoryBean.setTransactionManager(transactionManager);
+ jobRepositoryFactoryBean.afterPropertiesSet();
+ return jobRepositoryFactoryBean.getObject();
+ }
+ };
+ }
}
diff --git a/releaser-spring/src/main/java/releaser/internal/spring/SpringBatchBuildReportHandler.java b/releaser-spring/src/main/java/releaser/internal/spring/SpringBatchBuildReportHandler.java
index 62afaf1f..105776c8 100644
--- a/releaser-spring/src/main/java/releaser/internal/spring/SpringBatchBuildReportHandler.java
+++ b/releaser-spring/src/main/java/releaser/internal/spring/SpringBatchBuildReportHandler.java
@@ -16,8 +16,7 @@
package releaser.internal.spring;
-import java.time.ZoneOffset;
-import java.time.format.DateTimeFormatterBuilder;
+import java.text.SimpleDateFormat;
import java.time.temporal.ChronoUnit;
import java.util.Arrays;
import java.util.Comparator;
@@ -62,10 +61,8 @@ class SpringBatchBuildReportHandler implements BuildReportHandler {
private List buildTable(List stepContexts) {
return stepContexts.stream().map(step -> {
- String date = step.getStartTime()
- .format(new DateTimeFormatterBuilder().appendPattern("yyyy-MM-dd HH:mm:ss.SSS").toFormatter());
- long millis = ChronoUnit.MILLIS.between(step.getStartTime().toInstant(ZoneOffset.UTC),
- step.getEndTime().toInstant(ZoneOffset.UTC));
+ String date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS").format(step.getStartTime());
+ long millis = ChronoUnit.MILLIS.between(step.getStartTime().toInstant(), step.getEndTime().toInstant());
ExecutionContext context = step.getExecutionContext();
ExecutionResultReport entity = (ExecutionResultReport) context.get("entity");
if (entity == null) {
diff --git a/releaser-spring/src/main/java/releaser/internal/spring/SpringBatchFlowRunner.java b/releaser-spring/src/main/java/releaser/internal/spring/SpringBatchFlowRunner.java
index 1341beff..20652de9 100644
--- a/releaser-spring/src/main/java/releaser/internal/spring/SpringBatchFlowRunner.java
+++ b/releaser-spring/src/main/java/releaser/internal/spring/SpringBatchFlowRunner.java
@@ -50,6 +50,8 @@ import org.springframework.batch.core.Step;
import org.springframework.batch.core.StepExecution;
import org.springframework.batch.core.StepExecutionListener;
import org.springframework.batch.core.UnexpectedJobExecutionException;
+import org.springframework.batch.core.configuration.annotation.JobBuilderFactory;
+import org.springframework.batch.core.configuration.annotation.StepBuilderFactory;
import org.springframework.batch.core.job.builder.FlowBuilder;
import org.springframework.batch.core.job.builder.FlowJobBuilder;
import org.springframework.batch.core.job.builder.JobBuilder;
@@ -57,14 +59,11 @@ import org.springframework.batch.core.job.builder.JobFlowBuilder;
import org.springframework.batch.core.job.flow.Flow;
import org.springframework.batch.core.launch.JobLauncher;
import org.springframework.batch.core.listener.StepExecutionListenerSupport;
-import org.springframework.batch.core.repository.JobRepository;
-import org.springframework.batch.core.step.builder.StepBuilder;
import org.springframework.batch.repeat.RepeatStatus;
import org.springframework.beans.factory.DisposableBean;
import org.springframework.boot.SpringApplication;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.core.task.TaskExecutor;
-import org.springframework.transaction.PlatformTransactionManager;
class SpringBatchFlowRunner implements FlowRunner, Closeable {
@@ -74,9 +73,9 @@ class SpringBatchFlowRunner implements FlowRunner, Closeable {
private final ConsoleInputStepSkipper stepSkipper;
- private final JobRepository jobRepository;
+ private final StepBuilderFactory stepBuilderFactory;
- private final PlatformTransactionManager manager;
+ private final JobBuilderFactory jobBuilderFactory;
private final ProjectsToRunFactory projectsToRunFactory;
@@ -90,12 +89,12 @@ class SpringBatchFlowRunner implements FlowRunner, Closeable {
private final ReleaserProperties releaserProperties;
- SpringBatchFlowRunner(JobRepository jobRepository, PlatformTransactionManager manager,
+ SpringBatchFlowRunner(StepBuilderFactory stepBuilderFactory, JobBuilderFactory jobBuilderFactory,
ProjectsToRunFactory projectsToRunFactory, JobLauncher jobLauncher,
FlowRunnerTaskExecutorSupplier flowRunnerTaskExecutorSupplier, ConfigurableApplicationContext context,
ReleaserProperties releaserProperties, BuildReportHandler reportHandler) {
- this.jobRepository = jobRepository;
- this.manager = manager;
+ this.stepBuilderFactory = stepBuilderFactory;
+ this.jobBuilderFactory = jobBuilderFactory;
this.projectsToRunFactory = projectsToRunFactory;
this.jobLauncher = jobLauncher;
this.flowRunnerTaskExecutorSupplier = flowRunnerTaskExecutorSupplier;
@@ -111,7 +110,7 @@ class SpringBatchFlowRunner implements FlowRunner, Closeable {
}
private Step createStep(ReleaserTask releaserTask, NamedArgumentsSupplier argsSupplier) {
- return new StepBuilder(argsSupplier.projectName + "_" + releaserTask.name(), jobRepository)
+ return this.stepBuilderFactory.get(argsSupplier.projectName + "_" + releaserTask.name())
.tasklet((contribution, chunkContext) -> {
Arguments args = argsSupplier.get();
FlowRunner.Decision decision = beforeTask(args.options, args.properties, releaserTask);
@@ -139,7 +138,7 @@ class SpringBatchFlowRunner implements FlowRunner, Closeable {
log.info("Skipping step [{}]", releaserTask.name());
}
return RepeatStatus.FINISHED;
- }, this.manager).listener(releaserListener(argsSupplier, releaserTask)).build();
+ }).listener(releaserListener(argsSupplier, releaserTask)).build();
}
private List addExceptionToErrors(List errors, RuntimeException exception) {
@@ -305,7 +304,7 @@ class SpringBatchFlowRunner implements FlowRunner, Closeable {
}
private Job buildJobForFlows(Iterator flowsIterator) {
- JobBuilder release = new JobBuilder("release_" + System.currentTimeMillis(), this.jobRepository);
+ JobBuilder release = this.jobBuilderFactory.get("release_" + System.currentTimeMillis());
StuffToRun stuffToRun = flowsIterator.next();
Flow first = stuffToRun.flow;
JobFlowBuilder start = release.start(first);
@@ -363,7 +362,7 @@ class SpringBatchFlowRunner implements FlowRunner, Closeable {
log.info("No release train post release tasks to run, will do nothing");
return ExecutionResult.success();
}
- Job job = new JobBuilder(name, this.jobRepository).start(flow).build().build();
+ Job job = this.jobBuilderFactory.get(name).start(flow).build().build();
return runJob(job);
}
@@ -512,14 +511,14 @@ class ConsoleInputStepSkipper {
public boolean skipStep() {
String input = chosenOption();
switch (input.toLowerCase()) {
- case "s":
- return true;
- case "q":
- reportHandler.reportBuildSummary();
- System.exit(SpringApplication.exit(this.context, () -> 0));
- return true;
- default:
- return false;
+ case "s":
+ return true;
+ case "q":
+ reportHandler.reportBuildSummary();
+ System.exit(SpringApplication.exit(this.context, () -> 0));
+ return true;
+ default:
+ return false;
}
}
diff --git a/releaser-test/pom.xml b/releaser-test/pom.xml
index 3ed9a482..86becaf2 100644
--- a/releaser-test/pom.xml
+++ b/releaser-test/pom.xml
@@ -10,13 +10,13 @@
org.springframework.cloud.internal
releaser-parent
- 3.0.0-SNAPSHOT
+ 2.0.0-SNAPSHOT
..
UTF-8
- 17
+ 11
diff --git a/releaser-test/src/main/java/releaser/internal/spring/AbstractSpringAcceptanceTests.java b/releaser-test/src/main/java/releaser/internal/spring/AbstractSpringAcceptanceTests.java
index 62cc121f..0b73ffa8 100644
--- a/releaser-test/src/main/java/releaser/internal/spring/AbstractSpringAcceptanceTests.java
+++ b/releaser-test/src/main/java/releaser/internal/spring/AbstractSpringAcceptanceTests.java
@@ -50,14 +50,14 @@ import releaser.internal.sagan.Project;
import releaser.internal.sagan.Release;
import releaser.internal.tasks.ReleaserTask;
+import org.springframework.batch.core.configuration.annotation.JobBuilderFactory;
+import org.springframework.batch.core.configuration.annotation.StepBuilderFactory;
import org.springframework.batch.core.launch.JobLauncher;
-import org.springframework.batch.core.repository.JobRepository;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.Bean;
-import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.util.FileSystemUtils;
import static org.assertj.core.api.BDDAssertions.then;
@@ -320,11 +320,11 @@ public abstract class AbstractSpringAcceptanceTests {
public static class DefaultTestConfiguration {
@Bean
- SpringBatchFlowRunner mySpringBatchFlowRunner(JobRepository jobRepository, PlatformTransactionManager manager,
- ProjectsToRunFactory projectsToRunFactory, JobLauncher jobLauncher,
+ SpringBatchFlowRunner mySpringBatchFlowRunner(StepBuilderFactory stepBuilderFactory,
+ JobBuilderFactory jobBuilderFactory, ProjectsToRunFactory projectsToRunFactory, JobLauncher jobLauncher,
FlowRunnerTaskExecutorSupplier flowRunnerTaskExecutorSupplier, ConfigurableApplicationContext context,
ReleaserProperties releaserProperties, BuildReportHandler reportHandler) {
- return new SpringBatchFlowRunner(jobRepository, manager, projectsToRunFactory, jobLauncher,
+ return new SpringBatchFlowRunner(stepBuilderFactory, jobBuilderFactory, projectsToRunFactory, jobLauncher,
flowRunnerTaskExecutorSupplier, context, releaserProperties, reportHandler) {
@Override
Decision decide(Options options, ReleaserTask task) {