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

Implement Alibaba Cloud OSS gateway support #5103

Merged
merged 4 commits into from Dec 19, 2017

Conversation

Projects
5 participants
@timonwong
Contributor

timonwong commented Oct 23, 2017

Motivation and Context

Implement Alibaba Cloud (Aliyun) OSS gateway support.

API Documentation (very similar to AWS S3): https://www.alibabacloud.com/help/doc-detail/31947.htm

How Has This Been Tested?

Manually & Mint

Notes about failed mint tests:

  • Since OSS doesn't support underscores("_") in custom metadata headers, so aws-sdk-php will fail. (Workaround by sed -i 's/Param_1/Param-1/' /mint/run/core/aws-sdk-php/quick-tests.php)
  • minio-dotnet failed during put objects (tons of connect failed errors, may be caused by too many file descriptors)

Besides, in order to get mint tests pass, there is a check in CompleteMultipartUpload() which iterate uploaded parts, and error out if uploadedParts except last part sizing < 5MiB.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

@timonwong timonwong changed the title from WIP: Implement Aliyun OSS gateway support to [WIP] Implement Aliyun OSS gateway support Oct 23, 2017

@codecov

This comment has been minimized.

Show comment
Hide comment
@codecov

codecov bot Oct 23, 2017

Codecov Report

Merging #5103 into master will decrease coverage by 0.83%.
The diff coverage is 19.78%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #5103      +/-   ##
==========================================
- Coverage    62.1%   61.26%   -0.84%     
==========================================
  Files         197      199       +2     
  Lines       28329    28900     +571     
==========================================
+ Hits        17593    17705     +112     
- Misses       9407     9863     +456     
- Partials     1329     1332       +3
Impacted Files Coverage Δ
cmd/gateway/oss/gateway-oss-anonymous.go 0% <0%> (ø)
cmd/gateway/oss/gateway-oss.go 20.21% <20.21%> (ø)
cmd/fs-v1-rwpool.go 64.34% <0%> (-2.61%) ⬇️
cmd/fs-v1-background-append.go 79.86% <0%> (+1.34%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 8c08571...8611d3b. Read the comment docs.

codecov bot commented Oct 23, 2017

Codecov Report

Merging #5103 into master will decrease coverage by 0.83%.
The diff coverage is 19.78%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #5103      +/-   ##
==========================================
- Coverage    62.1%   61.26%   -0.84%     
==========================================
  Files         197      199       +2     
  Lines       28329    28900     +571     
==========================================
+ Hits        17593    17705     +112     
- Misses       9407     9863     +456     
- Partials     1329     1332       +3
Impacted Files Coverage Δ
cmd/gateway/oss/gateway-oss-anonymous.go 0% <0%> (ø)
cmd/gateway/oss/gateway-oss.go 20.21% <20.21%> (ø)
cmd/fs-v1-rwpool.go 64.34% <0%> (-2.61%) ⬇️
cmd/fs-v1-background-append.go 79.86% <0%> (+1.34%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 8c08571...8611d3b. Read the comment docs.

@timonwong timonwong referenced this pull request Oct 24, 2017

Merged

Simplify gateway backend registration #5111

1 of 8 tasks complete
Show outdated Hide outdated cmd/gateway-oss.go Outdated
Show outdated Hide outdated cmd/gateway-oss.go Outdated
Show outdated Hide outdated cmd/gateway-oss.go Outdated
Show outdated Hide outdated cmd/gateway-oss.go Outdated

@timonwong timonwong changed the title from [WIP] Implement Aliyun OSS gateway support to [WIP] Implement Alibaba Cloud OSS gateway support Oct 28, 2017

@timonwong timonwong changed the title from [WIP] Implement Alibaba Cloud OSS gateway support to Implement Alibaba Cloud OSS gateway support Oct 28, 2017

@harshavardhana

This comment has been minimized.

Show comment
Hide comment
@harshavardhana

harshavardhana Dec 6, 2017

Member

@timonwong i have rebased upon your work timonwong#1 to point to latest master, made relevant changes. Please merge the PR, we can then plan on merging this PR.

Member

harshavardhana commented Dec 6, 2017

@timonwong i have rebased upon your work timonwong#1 to point to latest master, made relevant changes. Please merge the PR, we can then plan on merging this PR.

timonwong and others added some commits Oct 24, 2017

@timonwong

This comment has been minimized.

Show comment
Hide comment
@timonwong

timonwong Dec 6, 2017

Contributor

@harshavardhana Thanks :) And besides, I just did a rebase due to CI failure after merging...

Contributor

timonwong commented Dec 6, 2017

@harshavardhana Thanks :) And besides, I just did a rebase due to CI failure after merging...

@@ -0,0 +1,177 @@
package oss

This comment has been minimized.

@harshavardhana

harshavardhana Dec 6, 2017

Member

can you add license header here @timonwong ? just like other gateways?

@harshavardhana

harshavardhana Dec 6, 2017

Member

can you add license header here @timonwong ? just like other gateways?

This comment has been minimized.

@timonwong
@timonwong

timonwong Dec 6, 2017

Contributor
@@ -0,0 +1,847 @@
package oss

This comment has been minimized.

@harshavardhana

harshavardhana Dec 6, 2017

Member

license header.

@harshavardhana

harshavardhana Dec 6, 2017

Member

license header.

@harshavardhana

This comment has been minimized.

Show comment
Hide comment
@harshavardhana

harshavardhana Dec 8, 2017

Member

@timonwong would you mind running minio/mint on this? - I am going to get an account setup to test this.

$ docker run -e SERVER_ENDPOINT=local-ip:9000 -e ACCESS_KEY=aliyun_id \
             -e SECRET_KEY=aliyun_secret -e ENABLE_HTTPS=0 minio/mint:edge

?

Member

harshavardhana commented Dec 8, 2017

@timonwong would you mind running minio/mint on this? - I am going to get an account setup to test this.

$ docker run -e SERVER_ENDPOINT=local-ip:9000 -e ACCESS_KEY=aliyun_id \
             -e SECRET_KEY=aliyun_secret -e ENABLE_HTTPS=0 minio/mint:edge

?

Show outdated Hide outdated cmd/gateway-oss.go Outdated
@krishnasrinivas

except for one comment rest of the code looks good.

@timonwong

This comment has been minimized.

Show comment
Hide comment
@timonwong

timonwong Dec 11, 2017

Contributor

@harshavardhana Just found mint failed during TEST_METADATA because Aliyun OSS forbird HTTP header keys with underscore(_).

Contributor

timonwong commented Dec 11, 2017

@harshavardhana Just found mint failed during TEST_METADATA because Aliyun OSS forbird HTTP header keys with underscore(_).

@harshavardhana

This comment has been minimized.

Show comment
Hide comment
@harshavardhana

harshavardhana Dec 11, 2017

Member

@timonwong we should return an appropriate error like ErrUnsupportedMetadata in such a case take a look at gateway-azure.go for these details.

Member

harshavardhana commented Dec 11, 2017

@timonwong we should return an appropriate error like ErrUnsupportedMetadata in such a case take a look at gateway-azure.go for these details.

@harshavardhana

This comment has been minimized.

Show comment
Hide comment
@harshavardhana

harshavardhana Dec 11, 2017

Member

Also looks like the unit tests failed as well

--- FAIL: TestS3MetaToOSSOptions (0.00s)
	gateway-oss_test.go:142: Test failed, S3 metdata is not fully transformed. expeted: 8, actual: 9
FAIL
Member

harshavardhana commented Dec 11, 2017

Also looks like the unit tests failed as well

--- FAIL: TestS3MetaToOSSOptions (0.00s)
	gateway-oss_test.go:142: Test failed, S3 metdata is not fully transformed. expeted: 8, actual: 9
FAIL
@timonwong

This comment has been minimized.

Show comment
Hide comment
@timonwong

timonwong Dec 12, 2017

Contributor

After running sed: sed -i 's/Param_1/Param-1/' /mint/run/core/aws-sdk-php/quick-tests.php, now I can pass aws-sdk-php tests, but run in trouble in minio-dotnet tests.

It throws tons of "Couldn't connect to server" error messages in error.json, may be I'm running out of file descriptors (yeah I'm using macOS...)?

To get logs, run 'sudo docker cp 7ea6ee893b75:/mint/log /tmp/mint-logs'
(1/11) Running aws-sdk-go tests ... done in 1 seconds
(2/11) Running aws-sdk-php tests ... done in 1 minutes and 17 seconds
(3/11) Running aws-sdk-ruby tests ... done in 52 seconds
(4/11) Running awscli tests ... done in 3 minutes and 29 seconds
(5/11) Running mc tests ... done in 8 minutes and 37 seconds
(6/11) Running minio-dotnet tests ... ./run.sh: line 26:  1041 Aborted                 /mint/run/core/minio-dotnet/out/Minio.Functional.Tests >> "$output_log_file" 2> "$error_log_file"
FAILED in 4 minutes and 37 seconds
parse error: Invalid numeric literal at line 1, column 6
   at Minio.Functional.Tests.FunctionalTest.<PutObject_Task>d__28.MoveNext() in /mint/run/core/minio-dotnet/FunctionalTest.cs:line 630

Unhandled Exception: System.AggregateException: One or more errors occurred. (One or more errors occurred. (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. )) ---> System.AggregateException: One or more errors occurred. (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) ---> Microsoft.VisualStudio.TestTools.UnitTesting.AssertFailedException: Assert.Fail failed.
   at Microsoft.VisualStudio.TestTools.UnitTesting.Assert.HandleFail(String assertionName, String message, Object[] parameters)
   at Microsoft.VisualStudio.TestTools.UnitTesting.Assert.Fail()
   at Minio.Functional.Tests.FunctionalTest.<PutObject_Task>d__28.MoveNext() in /mint/run/core/minio-dotnet/FunctionalTest.cs:line 642
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait()
   at Minio.Functional.Tests.FunctionalTest.<RemoveObjects_Test2>d__51.MoveNext() in /mint/run/core/minio-dotnet/FunctionalTest.cs:line 1493
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait()
   at Minio.Functional.Tests.FunctionalTest.Main(String[] args) in /mint/run/core/minio-dotnet/FunctionalTest.cs:line 196

Executed 5 out of 11 tests successfully.
[Bucket]  Exception: Unsuccessful response from server without XML error: An error occurred while sending the request. Couldn't connect to server: Minio.Exceptions.InternalClientException: Minio API responded with message=Unsuccessful response from server without XML error: An error occurred while sending the request. Couldn't connect to server
   at Minio.MinioClient.ParseError(IRestResponse response)
   at Minio.MinioClient.<>c.<.ctor>b__78_0(IRestResponse response)
   at Minio.MinioClient.HandleIfErrorResponse(IRestResponse response, IEnumerable`1 handlers, DateTime startTime)
   at Minio.MinioClient.<ExecuteTaskAsync>d__81.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   at Minio.MinioClient.<PutObjectAsync>d__22.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   at Minio.MinioClient.<PutObjectAsync>d__17.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
   at Minio.Functional.Tests.FunctionalTest.<PutObject_Task>d__28.MoveNext() in /mint/run/core/minio-dotnet/FunctionalTest.cs:line 630
[Bucket]  Exception: Unsuccessful response from server without XML error: An error occurred while sending the request. Couldn't connect to server: Minio.Exceptions.InternalClientException: Minio API responded with message=Unsuccessful response from server without XML error: An error occurred while sending the request. Couldn't connect to server
   at Minio.MinioClient.ParseError(IRestResponse response)
   at Minio.MinioClient.<>c.<.ctor>b__78_0(IRestResponse response)
   at Minio.MinioClient.HandleIfErrorResponse(IRestResponse response, IEnumerable`1 handlers, DateTime startTime)
   at Minio.MinioClient.<ExecuteTaskAsync>d__81.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   at Minio.MinioClient.<PutObjectAsync>d__22.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   at Minio.MinioClient.<PutObjectAsync>d__17.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
   at Minio.Functional.Tests.FunctionalTest.<PutObject_Task>d__28.MoveNext() in /mint/run/core/minio-dotnet/FunctionalTest.cs:line 630
[Bucket]  Exception: Unsuccessful response from server without XML error: An error occurred while sending the request. Couldn't connect to server: Minio.Exceptions.InternalClientException: Minio API responded with message=Unsuccessful response from server without XML error: An error occurred while sending the request. Couldn't connect to server
   at Minio.MinioClient.ParseError(IRestResponse response)
   at Minio.MinioClient.<>c.<.ctor>b__78_0(IRestResponse response)
   at Minio.MinioClient.HandleIfErrorResponse(IRestResponse response, IEnumerable`1 handlers, DateTime startTime)
   at Minio.MinioClient.<ExecuteTaskAsync>d__81.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   at Minio.MinioClient.<PutObjectAsync>d__22.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   at Minio.MinioClient.<PutObjectAsync>d__17.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
...
Contributor

timonwong commented Dec 12, 2017

After running sed: sed -i 's/Param_1/Param-1/' /mint/run/core/aws-sdk-php/quick-tests.php, now I can pass aws-sdk-php tests, but run in trouble in minio-dotnet tests.

It throws tons of "Couldn't connect to server" error messages in error.json, may be I'm running out of file descriptors (yeah I'm using macOS...)?

To get logs, run 'sudo docker cp 7ea6ee893b75:/mint/log /tmp/mint-logs'
(1/11) Running aws-sdk-go tests ... done in 1 seconds
(2/11) Running aws-sdk-php tests ... done in 1 minutes and 17 seconds
(3/11) Running aws-sdk-ruby tests ... done in 52 seconds
(4/11) Running awscli tests ... done in 3 minutes and 29 seconds
(5/11) Running mc tests ... done in 8 minutes and 37 seconds
(6/11) Running minio-dotnet tests ... ./run.sh: line 26:  1041 Aborted                 /mint/run/core/minio-dotnet/out/Minio.Functional.Tests >> "$output_log_file" 2> "$error_log_file"
FAILED in 4 minutes and 37 seconds
parse error: Invalid numeric literal at line 1, column 6
   at Minio.Functional.Tests.FunctionalTest.<PutObject_Task>d__28.MoveNext() in /mint/run/core/minio-dotnet/FunctionalTest.cs:line 630

Unhandled Exception: System.AggregateException: One or more errors occurred. (One or more errors occurred. (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. )) ---> System.AggregateException: One or more errors occurred. (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) (Assert.Fail failed. ) ---> Microsoft.VisualStudio.TestTools.UnitTesting.AssertFailedException: Assert.Fail failed.
   at Microsoft.VisualStudio.TestTools.UnitTesting.Assert.HandleFail(String assertionName, String message, Object[] parameters)
   at Microsoft.VisualStudio.TestTools.UnitTesting.Assert.Fail()
   at Minio.Functional.Tests.FunctionalTest.<PutObject_Task>d__28.MoveNext() in /mint/run/core/minio-dotnet/FunctionalTest.cs:line 642
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait()
   at Minio.Functional.Tests.FunctionalTest.<RemoveObjects_Test2>d__51.MoveNext() in /mint/run/core/minio-dotnet/FunctionalTest.cs:line 1493
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait()
   at Minio.Functional.Tests.FunctionalTest.Main(String[] args) in /mint/run/core/minio-dotnet/FunctionalTest.cs:line 196

Executed 5 out of 11 tests successfully.
[Bucket]  Exception: Unsuccessful response from server without XML error: An error occurred while sending the request. Couldn't connect to server: Minio.Exceptions.InternalClientException: Minio API responded with message=Unsuccessful response from server without XML error: An error occurred while sending the request. Couldn't connect to server
   at Minio.MinioClient.ParseError(IRestResponse response)
   at Minio.MinioClient.<>c.<.ctor>b__78_0(IRestResponse response)
   at Minio.MinioClient.HandleIfErrorResponse(IRestResponse response, IEnumerable`1 handlers, DateTime startTime)
   at Minio.MinioClient.<ExecuteTaskAsync>d__81.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   at Minio.MinioClient.<PutObjectAsync>d__22.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   at Minio.MinioClient.<PutObjectAsync>d__17.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
   at Minio.Functional.Tests.FunctionalTest.<PutObject_Task>d__28.MoveNext() in /mint/run/core/minio-dotnet/FunctionalTest.cs:line 630
[Bucket]  Exception: Unsuccessful response from server without XML error: An error occurred while sending the request. Couldn't connect to server: Minio.Exceptions.InternalClientException: Minio API responded with message=Unsuccessful response from server without XML error: An error occurred while sending the request. Couldn't connect to server
   at Minio.MinioClient.ParseError(IRestResponse response)
   at Minio.MinioClient.<>c.<.ctor>b__78_0(IRestResponse response)
   at Minio.MinioClient.HandleIfErrorResponse(IRestResponse response, IEnumerable`1 handlers, DateTime startTime)
   at Minio.MinioClient.<ExecuteTaskAsync>d__81.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   at Minio.MinioClient.<PutObjectAsync>d__22.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   at Minio.MinioClient.<PutObjectAsync>d__17.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
   at Minio.Functional.Tests.FunctionalTest.<PutObject_Task>d__28.MoveNext() in /mint/run/core/minio-dotnet/FunctionalTest.cs:line 630
[Bucket]  Exception: Unsuccessful response from server without XML error: An error occurred while sending the request. Couldn't connect to server: Minio.Exceptions.InternalClientException: Minio API responded with message=Unsuccessful response from server without XML error: An error occurred while sending the request. Couldn't connect to server
   at Minio.MinioClient.ParseError(IRestResponse response)
   at Minio.MinioClient.<>c.<.ctor>b__78_0(IRestResponse response)
   at Minio.MinioClient.HandleIfErrorResponse(IRestResponse response, IEnumerable`1 handlers, DateTime startTime)
   at Minio.MinioClient.<ExecuteTaskAsync>d__81.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   at Minio.MinioClient.<PutObjectAsync>d__22.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   at Minio.MinioClient.<PutObjectAsync>d__17.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
...
@harshavardhana

This comment has been minimized.

Show comment
Hide comment
@harshavardhana

harshavardhana Dec 12, 2017

Member

@timonwong you can run only specific tests by docker run minio/mint:edge minio-go minio-py mc minio-java aws-sdk-go aws-sdk-ruby

Member

harshavardhana commented Dec 12, 2017

@timonwong you can run only specific tests by docker run minio/mint:edge minio-go minio-py mc minio-java aws-sdk-go aws-sdk-ruby

@harshavardhana

This comment has been minimized.

Show comment
Hide comment
@harshavardhana

harshavardhana Dec 12, 2017

Member

it is okay that these fail and we can catch up in perhaps future versions, just wanted to see how ready is this support . If things are failing perhaps you can write down which all tests fail we can review and deal with this in case by case basis.

Member

harshavardhana commented Dec 12, 2017

it is okay that these fail and we can catch up in perhaps future versions, just wanted to see how ready is this support . If things are failing perhaps you can write down which all tests fail we can review and deal with this in case by case basis.

@timonwong

This comment has been minimized.

Show comment
Hide comment
@timonwong

timonwong Dec 12, 2017

Contributor

Current condition:

  • aws-sdk-php failed with custom metadata header with underscores (after patching without underscore, it passes)
  • minio-dotnet failed
  • s3cmd Failed in test_put_object, throws "MD5 Sums don't match" warnings (etag mismatch, OSS returns uppercase string, however, md5.hexdigest() in Python returns lowercase string).

All other tests passes.

(1/5) Running minio-go tests ... done in 19 minutes and 23 seconds
(2/5) Running minio-java tests ... done in 43 seconds
(3/5) Running minio-js tests ... done in 1 minutes and 28 seconds
(4/5) Running minio-py tests ... done in 2 minutes and 31 seconds
(5/5) Running s3cmd tests ... FAILED in 10 seconds
{
  "name": "s3cmd",
  "duration": "7431",
  "function": "test_put_object",
  "status": "FAIL",
  "error": "WARNING: MD5 Sums don't match!\nWARNING: Retrying upload of /mint/data/datafile-1-MB\nWARNING: MD5 Sums don't match!\nWARNING: Retrying upload of /mint/data/datafile-1-MB\nWARNING: MD5 Sums don't match!\nWARNING: Retrying upload of /mint/data/datafile-1-MB\nWARNING: MD5 Sums don't match!\nWARNING: Retrying upload of /mint/data/datafile-1-MB\nWARNING: MD5 Sums don't match!\nWARNING: Retrying upload of /mint/data/datafile-1-MB\nWARNING: MD5 Sums don't match!\nWARNING: Too many failures. Giving up on '/mint/data/datafile-1-MB'\nERROR: Upload of '/mint/data/datafile-1-MB' failed too many times (Last reason: )"
}
Contributor

timonwong commented Dec 12, 2017

Current condition:

  • aws-sdk-php failed with custom metadata header with underscores (after patching without underscore, it passes)
  • minio-dotnet failed
  • s3cmd Failed in test_put_object, throws "MD5 Sums don't match" warnings (etag mismatch, OSS returns uppercase string, however, md5.hexdigest() in Python returns lowercase string).

All other tests passes.

(1/5) Running minio-go tests ... done in 19 minutes and 23 seconds
(2/5) Running minio-java tests ... done in 43 seconds
(3/5) Running minio-js tests ... done in 1 minutes and 28 seconds
(4/5) Running minio-py tests ... done in 2 minutes and 31 seconds
(5/5) Running s3cmd tests ... FAILED in 10 seconds
{
  "name": "s3cmd",
  "duration": "7431",
  "function": "test_put_object",
  "status": "FAIL",
  "error": "WARNING: MD5 Sums don't match!\nWARNING: Retrying upload of /mint/data/datafile-1-MB\nWARNING: MD5 Sums don't match!\nWARNING: Retrying upload of /mint/data/datafile-1-MB\nWARNING: MD5 Sums don't match!\nWARNING: Retrying upload of /mint/data/datafile-1-MB\nWARNING: MD5 Sums don't match!\nWARNING: Retrying upload of /mint/data/datafile-1-MB\nWARNING: MD5 Sums don't match!\nWARNING: Retrying upload of /mint/data/datafile-1-MB\nWARNING: MD5 Sums don't match!\nWARNING: Too many failures. Giving up on '/mint/data/datafile-1-MB'\nERROR: Upload of '/mint/data/datafile-1-MB' failed too many times (Last reason: )"
}
@harshavardhana

This comment has been minimized.

Show comment
Hide comment
@harshavardhana

harshavardhana Dec 12, 2017

Member

For md5 you can simply add -1 at the end here . We do that with all gateways which do not support direct md5sum.

Member

harshavardhana commented Dec 12, 2017

For md5 you can simply add -1 at the end here . We do that with all gateways which do not support direct md5sum.

@timonwong

This comment has been minimized.

Show comment
Hide comment
@timonwong

timonwong Dec 12, 2017

Contributor

For md5 you can simply add -1 at the end here . We do that with all gateways which do not support direct md5sum.

Actually OSS did have MD5 Etag, but it's upper-cased.
In s3cmd, it calculate md5 hash of uploaded content itself (https://github.com/s3tools/s3cmd/blob/6d8e621738f4b37a4bbc0b5b28d1c0717264f7d8/S3/S3.py#L1548).

So I should just use minio.ToS3ETag?

Contributor

timonwong commented Dec 12, 2017

For md5 you can simply add -1 at the end here . We do that with all gateways which do not support direct md5sum.

Actually OSS did have MD5 Etag, but it's upper-cased.
In s3cmd, it calculate md5 hash of uploaded content itself (https://github.com/s3tools/s3cmd/blob/6d8e621738f4b37a4bbc0b5b28d1c0717264f7d8/S3/S3.py#L1548).

So I should just use minio.ToS3ETag?

@harshavardhana

This comment has been minimized.

Show comment
Hide comment
@harshavardhana

harshavardhana Dec 12, 2017

Member

Yes @timonwong just use that .it should be fine

Member

harshavardhana commented Dec 12, 2017

Yes @timonwong just use that .it should be fine

@timonwong

This comment has been minimized.

Show comment
Hide comment
@timonwong

timonwong Dec 12, 2017

Contributor

Ok, so now s3cmd passes :)

Contributor

timonwong commented Dec 12, 2017

Ok, so now s3cmd passes :)

@harshavardhana

This comment has been minimized.

Show comment
Hide comment
@harshavardhana

harshavardhana Dec 12, 2017

Member

Ok, so now s3cmd passes :)

So other than aws-sdk-php all tests pass?? @timonwong

Member

harshavardhana commented Dec 12, 2017

Ok, so now s3cmd passes :)

So other than aws-sdk-php all tests pass?? @timonwong

@timonwong

This comment has been minimized.

Show comment
Hide comment
@timonwong

timonwong Dec 12, 2017

Contributor

So other than aws-sdk-php all tests pass?? @timonwong

@harshavardhana And minio-dotnet failed due to tons of "Couldn't connect to server" errors.

Contributor

timonwong commented Dec 12, 2017

So other than aws-sdk-php all tests pass?? @timonwong

@harshavardhana And minio-dotnet failed due to tons of "Couldn't connect to server" errors.

@harshavardhana

This comment has been minimized.

Show comment
Hide comment
@harshavardhana

harshavardhana Dec 12, 2017

Member

@harshavardhana And minio-dotnet failed due to tons of "Couldn't connect to server" errors.

That is nice to know @timonwong LGTM we can take this change in.

Member

harshavardhana commented Dec 12, 2017

@harshavardhana And minio-dotnet failed due to tons of "Couldn't connect to server" errors.

That is nice to know @timonwong LGTM we can take this change in.

@timonwong

This comment has been minimized.

Show comment
Hide comment
@timonwong

timonwong Dec 13, 2017

Contributor

Please just wait for a moment, I need to investigate some weird behavior in CompleteMultipartUpload

Contributor

timonwong commented Dec 13, 2017

Please just wait for a moment, I need to investigate some weird behavior in CompleteMultipartUpload

@timonwong

This comment has been minimized.

Show comment
Hide comment
@timonwong

timonwong Dec 13, 2017

Contributor

Mint tests verified:

  • aws-sdk-go
  • aws-sdk-php
  • aws-sdk-ruby
docker run --rm -e SERVER_ENDPOINT=docker.for.mac.localhost:9000 -e ACCESS_KEY=$MINIO_ACCESS_KEY -e SECRET_KEY=$MINIO_SECRET_KEY -e ENABLE_HTTPS=0 mint2 aws-sdk-go aws-sdk-php aws-sdk-ruby
Running with
SERVER_ENDPOINT: docker.for.mac.localhost:9000
ACCESS_KEY:      ***REDACTED***
SECRET_KEY:      ***REDACTED***
ENABLE_HTTPS:    0
SERVER_REGION:   us-east-1
MINT_DATA_DIR:   /mint/data
MINT_MODE:       core

To get logs, run 'sudo docker cp f16f3755d3d3:/mint/log /tmp/mint-logs'
(1/3) Running aws-sdk-go tests ... done in 5 seconds
(2/3) Running aws-sdk-php tests ... done in 1 minutes and 9 seconds
(3/3) Running aws-sdk-ruby tests ... done in 48 seconds

All tests ran successfully
  • minio-java
  • minio-js
  • minio-py
docker run --rm -e SERVER_ENDPOINT=docker.for.mac.localhost:9000 -e ACCESS_KEY=$MINIO_ACCESS_KEY -e SECRET_KEY=$MINIO_SECRET_KEY -e ENABLE_HTTPS=0 mint2 minio-java minio-js minio-py
Running with
SERVER_ENDPOINT: docker.for.mac.localhost:9000
ACCESS_KEY:      ***REDACTED***
SECRET_KEY:      ***REDACTED***
ENABLE_HTTPS:    0
SERVER_REGION:   us-east-1
MINT_DATA_DIR:   /mint/data
MINT_MODE:       core

To get logs, run 'sudo docker cp 0552eda8334a:/mint/log /tmp/mint-logs'
(1/3) Running minio-java tests ... done in 56 seconds
(2/3) Running minio-js tests ... done in 2 minutes and 16 seconds
(3/3) Running minio-py tests ... done in 3 minutes and 52 seconds

All tests ran successfully
  • s3cmd
docker run --rm -e SERVER_ENDPOINT=docker.for.mac.localhost:9000 -e ACCESS_KEY=$MINIO_ACCESS_KEY -e SECRET_KEY=$MINIO_SECRET_KEY -e ENABLE_HTTPS=0 mint2 s3cmd
Running with
SERVER_ENDPOINT: docker.for.mac.localhost:9000
ACCESS_KEY:      ***REDACTED***
SECRET_KEY:      ***REDACTED***
ENABLE_HTTPS:    0
SERVER_REGION:   us-east-1
MINT_DATA_DIR:   /mint/data
MINT_MODE:       core

To get logs, run 'sudo docker cp 28a6e865a68b:/mint/log /tmp/mint-logs'
(1/1) Running s3cmd tests ... done in 7 minutes and 33 seconds

All tests ran successfully
  • awscli
  • mc
docker run --rm -e SERVER_ENDPOINT=docker.for.mac.localhost:9000 -e ACCESS_KEY=$MINIO_ACCESS_KEY -e SECRET_KEY=$MINIO_SECRET_KEY -e ENABLE_HTTPS=0 mint2 awscli mc
Running with
SERVER_ENDPOINT: docker.for.mac.localhost:9000
ACCESS_KEY:      ***REDACTED***
SECRET_KEY:      ***REDACTED***
ENABLE_HTTPS:    0
SERVER_REGION:   us-east-1
MINT_DATA_DIR:   /mint/data
MINT_MODE:       core

To get logs, run 'sudo docker cp fbe4a313d265:/mint/log /tmp/mint-logs'
(1/2) Running awscli tests ... done in 4 minutes and 49 seconds
(2/2) Running mc tests ... done in 11 minutes and 3 seconds

All tests ran successfully
Contributor

timonwong commented Dec 13, 2017

Mint tests verified:

  • aws-sdk-go
  • aws-sdk-php
  • aws-sdk-ruby
docker run --rm -e SERVER_ENDPOINT=docker.for.mac.localhost:9000 -e ACCESS_KEY=$MINIO_ACCESS_KEY -e SECRET_KEY=$MINIO_SECRET_KEY -e ENABLE_HTTPS=0 mint2 aws-sdk-go aws-sdk-php aws-sdk-ruby
Running with
SERVER_ENDPOINT: docker.for.mac.localhost:9000
ACCESS_KEY:      ***REDACTED***
SECRET_KEY:      ***REDACTED***
ENABLE_HTTPS:    0
SERVER_REGION:   us-east-1
MINT_DATA_DIR:   /mint/data
MINT_MODE:       core

To get logs, run 'sudo docker cp f16f3755d3d3:/mint/log /tmp/mint-logs'
(1/3) Running aws-sdk-go tests ... done in 5 seconds
(2/3) Running aws-sdk-php tests ... done in 1 minutes and 9 seconds
(3/3) Running aws-sdk-ruby tests ... done in 48 seconds

All tests ran successfully
  • minio-java
  • minio-js
  • minio-py
docker run --rm -e SERVER_ENDPOINT=docker.for.mac.localhost:9000 -e ACCESS_KEY=$MINIO_ACCESS_KEY -e SECRET_KEY=$MINIO_SECRET_KEY -e ENABLE_HTTPS=0 mint2 minio-java minio-js minio-py
Running with
SERVER_ENDPOINT: docker.for.mac.localhost:9000
ACCESS_KEY:      ***REDACTED***
SECRET_KEY:      ***REDACTED***
ENABLE_HTTPS:    0
SERVER_REGION:   us-east-1
MINT_DATA_DIR:   /mint/data
MINT_MODE:       core

To get logs, run 'sudo docker cp 0552eda8334a:/mint/log /tmp/mint-logs'
(1/3) Running minio-java tests ... done in 56 seconds
(2/3) Running minio-js tests ... done in 2 minutes and 16 seconds
(3/3) Running minio-py tests ... done in 3 minutes and 52 seconds

All tests ran successfully
  • s3cmd
docker run --rm -e SERVER_ENDPOINT=docker.for.mac.localhost:9000 -e ACCESS_KEY=$MINIO_ACCESS_KEY -e SECRET_KEY=$MINIO_SECRET_KEY -e ENABLE_HTTPS=0 mint2 s3cmd
Running with
SERVER_ENDPOINT: docker.for.mac.localhost:9000
ACCESS_KEY:      ***REDACTED***
SECRET_KEY:      ***REDACTED***
ENABLE_HTTPS:    0
SERVER_REGION:   us-east-1
MINT_DATA_DIR:   /mint/data
MINT_MODE:       core

To get logs, run 'sudo docker cp 28a6e865a68b:/mint/log /tmp/mint-logs'
(1/1) Running s3cmd tests ... done in 7 minutes and 33 seconds

All tests ran successfully
  • awscli
  • mc
docker run --rm -e SERVER_ENDPOINT=docker.for.mac.localhost:9000 -e ACCESS_KEY=$MINIO_ACCESS_KEY -e SECRET_KEY=$MINIO_SECRET_KEY -e ENABLE_HTTPS=0 mint2 awscli mc
Running with
SERVER_ENDPOINT: docker.for.mac.localhost:9000
ACCESS_KEY:      ***REDACTED***
SECRET_KEY:      ***REDACTED***
ENABLE_HTTPS:    0
SERVER_REGION:   us-east-1
MINT_DATA_DIR:   /mint/data
MINT_MODE:       core

To get logs, run 'sudo docker cp fbe4a313d265:/mint/log /tmp/mint-logs'
(1/2) Running awscli tests ... done in 4 minutes and 49 seconds
(2/2) Running mc tests ... done in 11 minutes and 3 seconds

All tests ran successfully
@krishnasrinivas

Did not test it as I don't have alibaba account details. I had reviewed the code which looks good. If the mint is passing then it should be good to go.

@nitisht nitisht merged commit 84fc78d into minio:master Dec 19, 2017

2 of 4 checks passed

codecov/patch 19.78% of diff hit (target 62.1%)
Details
codecov/project 61.26% (-0.84%) compared to 8c08571
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details

Convert gateway into packages automation moved this from In progress to Done Dec 19, 2017

@timonwong timonwong deleted the timonwong:add-aliyun-oss branch Dec 19, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment