Skip to content

New spring-batch-s3 module #182

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 10 commits into
base: main
Choose a base branch
from

Conversation

andreacioni
Copy link

Hello everyone,

after struggling a bit with S3 and Spring Batch I want to contribute to this ecosystem with my little knowledge by proposing this PR to your attention. In the past I've followed some discussion that lead me here (mainly #3818). I had to work with S3 in the past years and I had to implement such Reader/Writer each time, moreover it's a new addition to AWS SDK the API to upload objects with unknown size (reference) from streams. Given this inputs I decided that was time for Spring Batch to have some support for S3, hope this will be welcome.

More information are in the README, please let me know if there is something missing I'd be happy to fix it.

Signed-off-by: Andrea Cioni <[email protected]>
Copy link
Collaborator

@dgray16 dgray16 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for your work!
Here are some places that could be improved from my point of view.

Copy link
Collaborator

@scordio scordio left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @andreacioni, thanks for the PR!

I suggest adding a CI job, see for example the one for Spring Batch Notion.

Also, the new module should be mentioned in the root README.

- Builders moved to a dedicated package
- project README.adoc updated;
- root README.md updated: add reference to new module;
- use org.springframework.util.unit.DataSize to express data sizes;
- removed apache-client exclusion in pom.xml to allow user to not specify an actual implementation in their dependencies
- updated spring-javaformat-checkstyle to match the latest version
- update gitignore to match the one of Spring Batch Notion
- Add Maven Wrapper executables
- Add Github Action workflow
- Removed maven-wrapper.jar
- Code cleanup

Signed-off-by: Andrea Cioni <[email protected]>
- pom.xml reformatted
- root README missing Amazon S3 link
- atLeastOnce abandoned in favor of times(x)
- minor corrections

Signed-off-by: Andrea Cioni <[email protected]>
Signed-off-by: Andrea Cioni <[email protected]>
Copy link
Collaborator

@dgray16 dgray16 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It would be nice to have a review from @fmbenhassine also.

andreacioni and others added 4 commits July 14, 2025 15:36
Co-authored-by: Volodymyr <[email protected]>
Signed-off-by: Andrea Cioni <[email protected]>
…ions/s3/S3ItemReaderTests.java

Co-authored-by: Volodymyr <[email protected]>
Signed-off-by: Andrea Cioni <[email protected]>
…ions/s3/builder/S3ItemWriterBuilder.java

Co-authored-by: Volodymyr <[email protected]>
Signed-off-by: Andrea Cioni <[email protected]>
…ions/s3/stream/Defaults.java

Co-authored-by: Volodymyr <[email protected]>
Signed-off-by: Andrea Cioni <[email protected]>
@andreacioni andreacioni requested a review from scordio July 14, 2025 14:14
@scordio scordio requested a review from fmbenhassine July 14, 2025 17:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants