Skip to content

Conversation

@jan-abel-inwt
Copy link
Contributor

This PR introduces support for S3-compatible object storage providers that require a custom endpoint URL, such as Hetzner Cloud

The core rsync functionality remains unchanged, but the awss3 connection and all associated methods (sendFile, listFiles, syncAllFiles, etc.) are updated to accept and utilize a new endpoint_url parameter.

Key Changes:

  • awss3() function: Now accepts an optional endpoint_url argument.
  • awscli() function: Now accepts the endpoint_url and injects it into the system call via the --endpoint-url flag, enabling communication with non-AWS S3 services.
  • Propagation: The endpoint_url is passed down to awscli() across all S3 method wrappers.

@jan-abel-inwt jan-abel-inwt self-assigned this Sep 30, 2025
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR adds support for custom S3 endpoints to enable connectivity with S3-compatible object storage providers like Hetzner Cloud. The core functionality remains unchanged while extending the AWS S3 connection system to handle custom endpoint URLs.

  • Extended awss3() function to accept an optional endpoint_url parameter
  • Updated awscli() function to inject the --endpoint-url flag into AWS CLI commands
  • Propagated the endpoint_url parameter throughout all S3 method wrappers

Reviewed Changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
man/awss3.Rd Added documentation for the new endpoint_url parameter
R/awss3.R Modified main constructor to accept and store endpoint_url parameter
R/awscli.R Enhanced CLI wrapper to handle custom endpoint URLs
R/syncAllFiles.R Updated to pass endpoint_url to AWS CLI calls
R/sendFile.R Updated to pass endpoint_url to AWS CLI calls
R/sendAllFiles.R Updated to pass endpoint_url to AWS CLI calls
R/removeFile.R Updated to pass endpoint_url to AWS CLI calls
R/listFiles.R Updated to pass endpoint_url to AWS CLI calls
R/getFile.R Updated to pass endpoint_url to AWS CLI calls
DESCRIPTION Updated RoxygenNote version

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Copy link
Contributor

@arunge arunge left a comment

Choose a reason for hiding this comment

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

@jan-abel-inwt I added a new NEWS.md file. The changes look all good. I will merge them.

@arunge arunge marked this pull request as ready for review October 2, 2025 14:41
@arunge arunge merged commit b5961f3 into main Oct 2, 2025
1 check passed
@arunge arunge deleted the feature/add-enpoint-parameter branch October 2, 2025 14:46
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