Wykres commitów

885 Commity (ed2a046c0926c268059c52d177f0b61cb40fe671)

Autor SHA1 Wiadomość Data
dependabot[bot] ed2a046c09 Bump maven-clean-plugin from 3.1.0 to 3.2.0
Bumps [maven-clean-plugin](https://github.com/apache/maven-clean-plugin) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/apache/maven-clean-plugin/releases)
- [Commits](https://github.com/apache/maven-clean-plugin/compare/maven-clean-plugin-3.1.0...maven-clean-plugin-3.2.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-clean-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-17 23:15:51 +09:00
dependabot[bot] 7dcf0a5af7 Bump junit from 4.13.1 to 4.13.2
Bumps [junit](https://github.com/junit-team/junit4) from 4.13.1 to 4.13.2.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.13.1.md)
- [Commits](https://github.com/junit-team/junit4/compare/r4.13.1...r4.13.2)

---
updated-dependencies:
- dependency-name: junit:junit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-17 23:15:40 +09:00
dependabot[bot] c38508edf6 Bump nexus-staging-maven-plugin from 1.6.8 to 1.6.13
Bumps nexus-staging-maven-plugin from 1.6.8 to 1.6.13.

---
updated-dependencies:
- dependency-name: org.sonatype.plugins:nexus-staging-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-17 23:15:25 +09:00
Ryan Faircloth d71e1e812a ci: Enhancements to CI and release
fixes #408
fixes #423

This PR makes several changes to the CI*
Adds PR lint to ensure conventional commit syntax is used for all PRs
Uses semantic-release tool to review commit log on branch and generate version numbers
Publishes containers (non pr) to ghcr.io
Publishes release containers to hub.docker.com
Completes common tags (versions, sha-1 and ref) on all branches

Notes Unable to test actually publishing containers to dockerhub however this was taken from a similar working project.
2022-07-17 22:37:01 +09:00
dependabot[bot] ba0fd6dad7 Bump aws-java-sdk-s3 from 1.12.63 to 1.12.261
Bumps [aws-java-sdk-s3](https://github.com/aws/aws-sdk-java) from 1.12.63 to 1.12.261.
- [Release notes](https://github.com/aws/aws-sdk-java/releases)
- [Changelog](https://github.com/aws/aws-sdk-java/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-java/compare/1.12.63...1.12.261)

---
updated-dependencies:
- dependency-name: com.amazonaws:aws-java-sdk-s3
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-16 06:43:18 +09:00
Christoph Kreutzer 1d450fa221 Docker entrypoint: authentication for Azure Blob
When using the s3proxy as a proxy for S3 -> Azure Blob Storage, one needs to set the authentication parameters. When running in a container, these can be exposed via environment variables, but are currently not passed through to the jclouds config.
2022-06-21 14:54:19 +09:00
Andrew Gaul 29723040b5 Minio removed its cloud gateway 2022-06-20 22:21:45 +09:00
Adrian Woodhead 7344b0c60e
Upgrade Jackson to 2.13.3
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-2421244

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2022-05-26 07:32:19 +09:00
Andrew Gaul 71541ac167 Bump to 2.0.0-SNAPSHOT 2022-04-03 20:05:29 +09:00
Andrew Gaul b5d090d9f8 S3Proxy 2.0.0 release
Fixes #410.
2022-04-03 19:55:32 +09:00
Andrew Gaul 11dc9d3121 Upgrade to Modernizer Maven Plugin 2.4.0
Release notes:

https://github.com/gaul/modernizer-maven-plugin/releases/tag/modernizer-maven-plugin-2.4.0
2022-04-01 21:46:42 +09:00
Andrew Gaul 508a43e110 Upgrade slf4j 1.7.36
Release notes:

https://www.slf4j.org/news.html
2022-04-01 21:45:23 +09:00
Andrew Gaul 058a55d931 Upgrade to Jetty 9.4.45.v20220203
Release notes:

https://www.eclipse.org/lists/jetty-announce/msg00164.html
2022-04-01 21:36:29 +09:00
Andrew Gaul 04e35b1671 Upgrade to jackson-dataformat-xml 2.13.2
Release notes:

https://github.com/FasterXML/jackson-dataformat-xml/blob/2.13/release-notes/VERSION-2.x
2022-04-01 21:34:38 +09:00
Andrew Gaul f1ba56a1a1 Upgrade to logback 1.2.11
Release notes:

https://logback.qos.ch/news.html
2022-04-01 21:33:47 +09:00
xavier.gourmandin1 2e17734dc1 fix: #412 fix NPE when creating S3ProxyExtention or S3ProxyRule with Auth type = NONE 2022-04-01 21:16:09 +09:00
Florin Peter 217308abd7
Support for transparent encryption
Co-authored-by: Florin Peter <Florin-Alexandru.Peter@t-systems.com>
2022-03-26 22:05:08 +09:00
Andrew Gaul f536835aa8 pgrade to jclouds 2.5.0
Release notes:

https://jclouds.apache.org/releasenotes/2.5.0/

Fixes #396.
2022-03-26 19:52:18 +09:00
Xavier Gourmandin 05a39cf745
Support for Junit 5 Extension mechanism
Fixes #288
2022-03-02 23:36:11 +09:00
Liam 5aec5c132c Support configurable base directory for S3Proxy 2022-02-10 09:55:19 +09:00
Liam 0c3d81feb2 Make S3Proxy compatible with ExAws by checking for parameter presence 2022-02-10 09:54:24 +09:00
Timur Alperovich 11868c22cc Use Java 11 slim image
Fixes #397
2022-02-07 13:43:18 +09:00
Andrew Gaul 2e61c38626 Configure Jetty to use legacy compliance
This prevents changing header value cases which previously caused S3
signature mismatches.  Fixes #392.
References eclipse/jetty.project#7168.
2022-01-22 19:41:04 +09:00
Tamas Cservenak 2839107c6f UT for #392
This UT reproduces issue #392:
attempts a plain simple putObject without
any "trickery", and fails with SignatureDoesNotMatch.

The trick is, to use such Content-Type header that
is cached by Jetty, as it seems all the UTs are using
content types that are not quite common, hence Jetty
cache is not pre-populated with those.
2022-01-22 19:41:04 +09:00
Tamas Cservenak 075ff7f126 Update build
In general update the ancient build plugins
around.

Changes:
* bring all maven plugins to latest versions
* update checkstyle (as pre 8.41 is not supported anymore)
* update checkstyle rules
* make checkstyle plugin not fail the build (as there are issues)
* fix maven-shade-plugin warnings about dupe resource
* fix modernizer issue as it fails the build
* make build reproducible

Added comment about parent POM: the currently used parent is
10 years old, moreover, if you look in Maven Central,
the GA is unmaintained (last release was in 2014). Better introduce
own parent POM, or just copy whatever needed into this POM
(related to staging) and stop using the ancient POM.
2022-01-22 19:07:24 +09:00
Sean C. Sullivan ab6e321964 ci: temurin jdk 2022-01-20 09:18:00 +09:00
Nicklas Ansman Giertz 245fe54aa0 Start publishing arm64
Also switch to the official docker steps in GitHub Actions.
2021-11-16 18:32:20 +09:00
Nicklas Ansman Giertz 5a34d1bc75 Ensure docker login refers to docker.io 2021-11-16 11:08:25 +09:00
Andrew Gaul 28c29bb116 Refer to Docker Hub andrewgaul/s3proxy repo
This differs in organization from the GitHub gaul/s3proxy repo.
References #388.
2021-11-16 09:30:05 +09:00
Andrew Gaul be765854be Set some bash safety options
References #384.
2021-11-16 09:09:06 +09:00
Nicklas Ansman Giertz a2dc43d23e Fix a missing variable when publishing 2021-11-16 08:57:11 +09:00
Nicklas Ansman Giertz 688af7ed00 Replace the travis scripts with GitHub Actions 2021-11-15 22:07:51 +09:00
Andrew Gaul db2cc2a0ff Cache replaceAll regex when normalizing headers 2021-11-01 19:00:28 +09:00
Andrew Gaul cb3845c1ab Reduce allocations in buildCanonicalHeaders 2021-10-31 21:09:48 +09:00
Andrew Gaul b6c2dc9b9c Re-use XmlMapper instances
These can be expensive to create:

https://stackoverflow.com/a/57671444
2021-10-31 19:31:55 +09:00
Andrew Gaul 8e2319de3c Bump to 1.9.1-SNAPSHOT 2021-10-26 20:03:40 +09:00
Andrew Gaul 70af2b8650 S3Proxy 1.9.0 release 2021-10-26 19:58:04 +09:00
Timur Alperovich 512c926b6e Fix anonymous bucket listing bug
If the bucket locator is used with anonymous access, listing a container
results in a null-pointer exception, as there are no blobstores in the
locator. In that case, we should use the globLocator structure and
return the first available blobstore.
2021-10-26 13:15:02 +09:00
Timur Alperovich 939acd950f Add information about bucket locators 2021-10-25 16:04:04 +09:00
Timur Alperovich a2e9e22719 Fix a bug in blobstore locator
558efb7b29 introduced a bug where if anonymous access is
configured, the bucket locator hits a null pointer exception. There is
an additional bug where if an incorrect identity is used with the
blobstore locator (as in, the request identity does not match the
configured bucket's blobstore identity), another null pointer exception
can be triggered.

The patch creates a new GlobBlobStoreLocator class and adds tests to it,
as it is difficult to test Main.java directly. The blobstore locator
logic is also reworked to fix the above bugs.
2021-10-24 18:20:25 +09:00
Timur Alperovich 558efb7b29 Allow differentiating blob stores by buckets
Allows differentiating the backend blob stores by configured buckets.
The commit allows using the same s3proxy credentials across the
different backends and relies on the bucket names to disambiguate them.

If no buckets are configured, the prior blob store selection algorithm
is used, which returns the first configured blob store for the specified
identity.

The patch supports the glob syntax, which allows specifying groups of
buckets more easily. However, there is no checking for overlapping
globs.

Fixes: #371
2021-10-20 16:53:48 +09:00
Timur Alperovich c055dfda9f README entry for the Alias middleware 2021-09-12 15:17:59 +09:00
Timur Alperovich 35fea54d63 Alias middleware to remap backend buckets
Alias middleware implements a way to remap backend buckets to a
configurable front-end name. The mappings are configured as:
s3proxy.alias-blobstore.<s3proxy bucket> = <backend bucket>

A single bucket cannot be mapped to multiple names.
2021-09-11 21:57:56 +09:00
Andrew Gaul 2521db999b Upgrade to jclouds 2.4.0
Release notes:

https://jclouds.apache.org/releasenotes/2.4.0/

Fixes #338.
2021-09-10 20:54:35 +09:00
Andrew Gaul 619b4170c9 Skip AwsSdkTest.testAwsV4SignatureBadCredential
This randomly fails with SocketException: Broken pipe.
2021-09-08 21:48:32 +09:00
Andrew Gaul 4b2f344599 Upgrade to aws-java-sdk-s3 1.12.63 2021-09-08 21:28:21 +09:00
Andrew Gaul 4700fb3a69 Check if Authorization header is empty
This resolves s3-tests failures that we missed due to busted CI.
Perhaps caused by a newer boto version?
2021-09-08 20:37:04 +09:00
Andrew Gaul d18d0232c8 Upgrade to error-prone 2.9.0
Release notes:

https://github.com/google/error-prone/releases/tag/v2.7.0
https://github.com/google/error-prone/releases/tag/v2.7.1
https://github.com/google/error-prone/releases/tag/v2.8.0
https://github.com/google/error-prone/releases/tag/v2.8.1
https://github.com/google/error-prone/releases/tag/v2.9.0
2021-09-02 20:44:53 +09:00
Andrew Gaul 899956f80f Fix Checkstyle violation 2021-08-21 08:13:02 +09:00
Andrew Gaul 79f12eff88 Upgrade to SpotBugs 4.2.0
Also fix new violation.  Changelog:

https://github.com/spotbugs/spotbugs/blob/4.4.0/CHANGELOG.md
2021-08-21 08:11:55 +09:00