Hi again 
I think I’ve got another change ready which should add support for these headers to Multi-Part Uploads.
Mind if I flick another PR over? The main change is to ensure that the CompleteMultiPartUploadInput (pkg.go.dev) includes the headers. It appears that my previous PR exposes the headers and the only change needed is to add the attribute references in CompleteMultiPartUploadInput (which doesn’t appear to need any conditional logic due to the default value)
Local branch, able to PUT successfully with MPU and with Bucket Policy enabled that requires the header
./rclone --version
rclone v1.72.0-beta.9300.83b83f776
- os/version: darwin 15.7.2 (64 bit)
- os/kernel: 24.6.0 (arm64)
- os/type: darwin
- os/arch: arm64 (ARMv8 compatible)
- go/version: go1.24.4
- go/linking: dynamic
- go/tags: none
./rclone copy
--header-upload 'If-None-Match: *'
--retries=1 --dump=headers
--s3-provider=AWS
--s3-region=us-west-2
--s3-env-auth=true --s3-upload-cutoff=1M
--s3-no-check-bucket
data/new/hyspex/vnir/251031_165226790_Camera_1.iiq
:s3:BUCKET_NAME/flight/5/blah20/hyspex/vnir/iiq-again.txt
omitting many other requests for brevity
2025/11/17 09:57:18 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 09:57:18 DEBUG : 251031_165226790_Camera_1.iiq: multipart upload wrote chunk 20 with 5242880 bytes and etag "8f4949d53e8543afb3682ebb20327896"
2025/11/17 09:57:18 DEBUG : 251031_165226790_Camera_1.iiq: multipart upload: starting chunk 22 size 3.577Mi offset 110Mi/113.577Mi
2025/11/17 09:57:18 DEBUG : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2025/11/17 09:57:18 DEBUG : HTTP REQUEST (req 0x14000b14a00)
2025/11/17 09:57:18 DEBUG : PUT /flight/5/blah20/hyspex/vnir/iiq-again.txt/251031_165226790_Camera_1.iiq?partNumber=23&uploadId=Bj729lKwu88eG7yCtpkGVwX8ObWPteOwem_EORc.tk46_xOn2A4fbQ54dSz8ZoNSIrrLwOg_UM7ApTVyHZfYDUTg1OKRE.n_TnPzG7KThK3LWctefNLPttJ2XlgYTO5qG0_mQ4E4yoK5amzWEDmhow--&x-id=UploadPart HTTP/1.1
Host: BUCKET_NAME.s3.us-west-2.amazonaws.com
User-Agent: rclone/v1.72.0-beta.9300.83b83f776
Content-Length: 3751060
Accept-Encoding: identity
Amz-Sdk-Invocation-Id: cde9c2cf-f83a-485c-bf37-ef332c346302
Amz-Sdk-Request: attempt=1; max=10
Authorization: XXXX
Content-Encoding: aws-chunked
Content-Md5: JXOuyzYy17WqrQE0lVl19g==
Content-Type: application/octet-stream
Expect: 100-continue
X-Amz-Content-Sha256: STREAMING-UNSIGNED-PAYLOAD-TRAILER
X-Amz-Date: 20251117T145718Z
X-Amz-Decoded-Content-Length: 3751014
X-Amz-Security-Token: redacted
X-Amz-Trailer: x-amz-checksum-crc32
2025/11/17 09:57:18 DEBUG : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2025/11/17 09:57:24 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 09:57:24 DEBUG : HTTP RESPONSE (req 0x14000b14a00)
2025/11/17 09:57:24 DEBUG : HTTP/1.1 200 OK
Content-Length: 0
Date: Mon, 17 Nov 2025 14:57:19 GMT
Etag: "2573aecb3632d7b5aaad0134955975f6"
Server: AmazonS3
X-Amz-Checksum-Crc32: P5gLaA==
X-Amz-Id-2: ezs5wXqORjpzNKcPP5qAjn0yaArapZV8+8c29zfL+ev/cDjjRBqbQwE7MtDqL9H05fP4XPsmXTE=
X-Amz-Request-Id: 6TKW19HZJ45R8YNA
X-Amz-Server-Side-Encryption: AES256
2025/11/17 09:57:24 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 09:57:24 DEBUG : 251031_165226790_Camera_1.iiq: multipart upload wrote chunk 23 with 3751014 bytes and etag "2573aecb3632d7b5aaad0134955975f6"
2025/11/17 09:57:28 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 09:57:28 DEBUG : HTTP RESPONSE (req 0x14000b14780)
2025/11/17 09:57:28 DEBUG : HTTP/1.1 200 OK
Content-Length: 0
Date: Mon, 17 Nov 2025 14:57:03 GMT
Etag: "7fef1c529a5560201e0318518a8cabc2"
Server: AmazonS3
X-Amz-Checksum-Crc32: Hhy0rw==
X-Amz-Id-2: k8lgncJt0S/Usd0jDpUIYBaJ0Z6Sqa7Ez+OPNxn539Tzb7uKuK+0lWTBtA0qXHNX9U7o3Eao200=
X-Amz-Request-Id: S9PTA4Z2QJ3VJ8KN
X-Amz-Server-Side-Encryption: AES256
2025/11/17 09:57:28 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 09:57:28 DEBUG : 251031_165226790_Camera_1.iiq: multipart upload wrote chunk 19 with 5242880 bytes and etag "7fef1c529a5560201e0318518a8cabc2"
2025/11/17 09:57:29 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 09:57:29 DEBUG : HTTP RESPONSE (req 0x14000898640)
2025/11/17 09:57:29 DEBUG : HTTP/1.1 200 OK
Content-Length: 0
Date: Mon, 17 Nov 2025 14:57:14 GMT
Etag: "c42083627a7fe23803426478451fa65f"
Server: AmazonS3
X-Amz-Checksum-Crc32: NYGa9A==
X-Amz-Id-2: C3qvffoXRxCgtPJnMdB0bgjVTgQtadKEnBS/t7FrTFoDR60nW8JnbJwhdEz2eMe4sWCQK7+dAAw=
X-Amz-Request-Id: J0M8SKZ34C4K22P6
X-Amz-Server-Side-Encryption: AES256
2025/11/17 09:57:29 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 09:57:29 DEBUG : 251031_165226790_Camera_1.iiq: multipart upload wrote chunk 21 with 5242880 bytes and etag "c42083627a7fe23803426478451fa65f"
2025/11/17 09:57:31 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 09:57:31 DEBUG : HTTP RESPONSE (req 0x140006b8780)
2025/11/17 09:57:31 DEBUG : HTTP/1.1 200 OK
Content-Length: 0
Date: Mon, 17 Nov 2025 14:57:14 GMT
Etag: "1b6f615f79f3516fc216552d729f096a"
Server: AmazonS3
X-Amz-Checksum-Crc32: t/bYyQ==
X-Amz-Id-2: u9C0tEI/FOWN00+9bPwS2l6ZxpV6mRnnxH+QzGwaazw0ExMFVZ1dgY97t1Nc2I/a8Xu4Nn9i/zM=
X-Amz-Request-Id: J0M30NRRJ5PKH4A3
X-Amz-Server-Side-Encryption: AES256
this PUT shows that the If-None-Match header is appearing
2025/11/17 09:57:31 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 09:57:31 DEBUG : 251031_165226790_Camera_1.iiq: multipart upload wrote chunk 22 with 5242880 bytes and etag "1b6f615f79f3516fc216552d729f096a"
2025/11/17 09:57:31 DEBUG : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2025/11/17 09:57:31 DEBUG : HTTP REQUEST (req 0x140002e17c0)
2025/11/17 09:57:31 DEBUG : POST /flight/5/blah20/hyspex/vnir/iiq-again.txt/251031_165226790_Camera_1.iiq?uploadId=Bj729lKwu88eG7yCtpkGVwX8ObWPteOwem_EORc.tk46_xOn2A4fbQ54dSz8ZoNSIrrLwOg_UM7ApTVyHZfYDUTg1OKRE.n_TnPzG7KThK3LWctefNLPttJ2XlgYTO5qG0_mQ4E4yoK5amzWEDmhow-- HTTP/1.1
Host: BUCKET_NAME.s3.us-west-2.amazonaws.com
User-Agent: rclone/v1.72.0-beta.9300.83b83f776
Content-Length: 2275
Accept-Encoding: identity
Amz-Sdk-Invocation-Id: f1c7ee13-39ec-4b19-b70d-e7fac085604e
Amz-Sdk-Request: attempt=1; max=10
Authorization: XXXX
Content-Type: application/xml
If-None-Match: *
X-Amz-Content-Sha256: 0e762c45cda66a449cec380a7ef4ddf153efe33227b2cba65c20aab82fea9127
X-Amz-Date: 20251117T145731Z
X-Amz-Security-Token: redacted
2025/11/17 09:57:31 DEBUG : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2025/11/17 09:57:31 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 09:57:31 DEBUG : HTTP RESPONSE (req 0x140002e17c0)
2025/11/17 09:57:31 DEBUG : HTTP/1.1 200 OK
Transfer-Encoding: chunked
Content-Type: application/xml
Date: Mon, 17 Nov 2025 14:57:32 GMT
Server: AmazonS3
X-Amz-Id-2: cgvH3e1Ibwm1irFCMVvtAuFmrZbXY7MXThIoINlyT7wDFZoLiJ3BRxjMwlSLuHn8++QHm5v3bhc=
X-Amz-Request-Id: 0AFFHRC8VZKHPBX2
X-Amz-Server-Side-Encryption: AES256
X-Amz-Version-Id: baSobQuA_DUjIJJFCYXStCQdDDw7gJCJ
2025/11/17 09:57:31 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 09:57:31 DEBUG : 251031_165226790_Camera_1.iiq: multipart upload "Bj729lKwu88eG7yCtpkGVwX8ObWPteOwem_EORc.tk46_xOn2A4fbQ54dSz8ZoNSIrrLwOg_UM7ApTVyHZfYDUTg1OKRE.n_TnPzG7KThK3LWctefNLPttJ2XlgYTO5qG0_mQ4E4yoK5amzWEDmhow--" finished
2025/11/17 09:57:31 DEBUG : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2025/11/17 09:57:31 DEBUG : HTTP REQUEST (req 0x14000b15180)
2025/11/17 09:57:31 DEBUG : HEAD /flight/5/blah20/hyspex/vnir/iiq-again.txt/251031_165226790_Camera_1.iiq HTTP/1.1
Host: BUCKET_NAME.s3.us-west-2.amazonaws.com
User-Agent: rclone/v1.72.0-beta.9300.83b83f776
Accept-Encoding: identity
Amz-Sdk-Invocation-Id: d7d22640-1b93-448a-9dfd-00d109c23d83
Amz-Sdk-Request: attempt=1; max=10
Authorization: XXXX
X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
X-Amz-Date: 20251117T145731Z
X-Amz-Security-Token: redacted
2025/11/17 09:57:31 DEBUG : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2025/11/17 09:57:31 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 09:57:31 DEBUG : HTTP RESPONSE (req 0x14000b15180)
2025/11/17 09:57:31 DEBUG : HTTP/1.1 200 OK
Content-Length: 119094374
Accept-Ranges: bytes
Content-Type: application/octet-stream
Date: Mon, 17 Nov 2025 14:57:32 GMT
Etag: "dea59c897a8f0dcc511b1d40da83511f-23"
Last-Modified: Mon, 17 Nov 2025 14:55:59 GMT
Server: AmazonS3
X-Amz-Id-2: GzEPmLKBnBDIoPjUG5kxZcaagCjCmICIunPYBsYKzXM9lKEbPA5dG/S5cIK4tQCM1u2t8kdR/bk=
X-Amz-Meta-Md5chksum: 3DIUhavNn/31+S0C5ctmJA==
X-Amz-Meta-Mtime: 1762963423.291793376
X-Amz-Request-Id: 0AFAWM2R4ADEXN7D
X-Amz-Server-Side-Encryption: AES256
X-Amz-Version-Id: baSobQuA_DUjIJJFCYXStCQdDDw7gJCJ
2025/11/17 09:57:31 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 09:57:31 DEBUG : 251031_165226790_Camera_1.iiq: Multipart upload Etag: dea59c897a8f0dcc511b1d40da83511f-23 OK
2025/11/17 09:57:31 DEBUG : 251031_165226790_Camera_1.iiq: size = 119094374 OK
2025/11/17 09:57:31 DEBUG : 251031_165226790_Camera_1.iiq: md5 = dc321485abcd9ffdf5f92d02e5cb6624 OK
2025/11/17 09:57:31 INFO : 251031_165226790_Camera_1.iiq: Copied (new)
2025/11/17 09:57:31 INFO :
Transferred: 113.577 MiB / 113.577 MiB, 100%, 644.024 KiB/s, ETA 0s
Transferred: 1 / 1, 100%
Elapsed time: 1m33.0s
2025/11/17 09:57:31 DEBUG : 11 go routines active
Local branch, I reset to commit 83b83f776 where I added the headers previously and get a 403 because the header is missing
git reset --hard 83b83f776
HEAD is now at 83b83f776 s3: add support for --upload-header If-Match and If-None-Match
make
fatal: No names found, cannot describe anything.
go build -v --ldflags "-s -X github.com/rclone/rclone/fs.Version=v1.72.0-beta.9300.83b83f776.original-s3-conditional-header-commit"
GitHub - rclone/rclone: "rsync for cloud storage" - Google Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Wasabi, Google Cloud Storage, Azure Blob, Azure Files, Yandex Files
mkdir -p go env GOPATH/bin/
cp -av rclonego env GOEXE go env GOPATH/bin/rclonego env GOEXE.new
rclone -> /Users/sean/go/bin/rclone.new
mv -v go env GOPATH/bin/rclonego env GOEXE.new go env GOPATH/bin/rclonego env GOEXE
/Users/sean/go/bin/rclone.new -> /Users/sean/go/bin/rclone
./rclone --version
rclone v1.72.0-beta.9300.83b83f776.original-s3-conditional-header-commit
- os/version: darwin 15.7.2 (64 bit)
- os/kernel: 24.6.0 (arm64)
- os/type: darwin
- os/arch: arm64 (ARMv8 compatible)
- go/version: go1.24.4
- go/linking: dynamic
- go/tags: none
./rclone copy
--header-upload 'If-None-Match: *'
--retries=1 --dump=headers
--s3-provider=AWS
--s3-region=us-west-2
--s3-env-auth=true --s3-upload-cutoff=1M
--s3-no-check-bucket
data/new/hyspex/vnir/251031_165226790_Camera_1.iiq
:s3:BUCKET_NAME/flight/5/blah22/hyspex/vnir/iiq-again.txt
omitting many other requests for brevity
This is the last PUT which should include the HEADER (but doesn't) and therefore 403s due to the Bucket Policy
2025/11/17 13:21:58 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 13:21:58 DEBUG : 251031_165226790_Camera_1.iiq: multipart upload wrote chunk 22 with 5242880 bytes and etag "1b6f615f79f3516fc216552d729f096a"
2025/11/17 13:21:58 DEBUG : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2025/11/17 13:21:58 DEBUG : HTTP REQUEST (req 0x1400066fcc0)
2025/11/17 13:21:58 DEBUG : POST /flight/5/blah22/hyspex/vnir/iiq-again.txt/251031_165226790_Camera_1.iiq?uploadId=jTyYmd1x92u3WeqlmHbChVCoQZdG.Uo5n.6FQH3ygXwTHnYgKMUoQ3vnYy4JLeMp53dUhrHSeLgLb6IquRWmMh5PNt65pgREAHJixi2xn0oXcBLIvehDgB4Ma8mJ4QYpJQlUvvkwhIJ_fLFQx_DfdQ-- HTTP/1.1
Host: BUCKET_NAME.s3.us-west-2.amazonaws.com
User-Agent: rclone/v1.72.0-beta.9300.83b83f776.original-s3-conditional-header-commit
Content-Length: 2275
Accept-Encoding: identity
Amz-Sdk-Invocation-Id: d0789f6b-a1c3-47c6-a4d6-0de981670aae
Amz-Sdk-Request: attempt=1; max=10
Authorization: XXXX
Content-Type: application/xml
X-Amz-Content-Sha256: 0e762c45cda66a449cec380a7ef4ddf153efe33227b2cba65c20aab82fea9127
X-Amz-Date: 20251117T182158Z
X-Amz-Security-Token: redacted
2025/11/17 13:21:58 DEBUG : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2025/11/17 13:21:58 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 13:21:58 DEBUG : HTTP RESPONSE (req 0x1400066fcc0)
2025/11/17 13:21:58 DEBUG : HTTP/1.1 403 Forbidden
Transfer-Encoding: chunked
Content-Type: application/xml
Date: Mon, 17 Nov 2025 18:21:58 GMT
Server: AmazonS3
X-Amz-Id-2: jZh1MPeTGNBnCywwvnRI0BZt256/gxNyfDkdWsTCR7YFGKkDaU1yYq5qnr4cYTQrdgEE2DZ54LM=
X-Amz-Request-Id: CRCSFD1AXVFK00S7
2025/11/17 13:21:58 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 13:21:58 DEBUG : 251031_165226790_Camera_1.iiq: Cancelling multipart upload
2025/11/17 13:21:58 DEBUG : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2025/11/17 13:21:58 DEBUG : HTTP REQUEST (req 0x1400081a640)
2025/11/17 13:21:58 DEBUG : DELETE /flight/5/blah22/hyspex/vnir/iiq-again.txt/251031_165226790_Camera_1.iiq?uploadId=jTyYmd1x92u3WeqlmHbChVCoQZdG.Uo5n.6FQH3ygXwTHnYgKMUoQ3vnYy4JLeMp53dUhrHSeLgLb6IquRWmMh5PNt65pgREAHJixi2xn0oXcBLIvehDgB4Ma8mJ4QYpJQlUvvkwhIJ_fLFQx_DfdQ--&x-id=AbortMultipartUpload HTTP/1.1
Host: BUCKET_NAME.s3.us-west-2.amazonaws.com
User-Agent: rclone/v1.72.0-beta.9300.83b83f776.original-s3-conditional-header-commit
Accept-Encoding: identity
Amz-Sdk-Invocation-Id: a5c3590c-fc1d-4f66-9273-f61fac5452cc
Amz-Sdk-Request: attempt=1; max=10
Authorization: XXXX
X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
X-Amz-Date: 20251117T182158Z
X-Amz-Security-Token: redacted
2025/11/17 13:21:58 DEBUG : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2025/11/17 13:21:58 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 13:21:58 DEBUG : HTTP RESPONSE (req 0x1400081a640)
2025/11/17 13:21:58 DEBUG : HTTP/1.1 204 No Content
Date: Mon, 17 Nov 2025 18:21:59 GMT
Server: AmazonS3
X-Amz-Id-2: 0U2+HT3mvcubAppsdhRMt0Pu+qVBVWCGtKdsUH1muV9RWVTJxkJgyru6jkxlq2Lr9WqCIYcf+ZA=
X-Amz-Request-Id: CRCV2D33FBMJC6BV
2025/11/17 13:21:58 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2025/11/17 13:21:58 DEBUG : 251031_165226790_Camera_1.iiq: multipart upload "jTyYmd1x92u3WeqlmHbChVCoQZdG.Uo5n.6FQH3ygXwTHnYgKMUoQ3vnYy4JLeMp53dUhrHSeLgLb6IquRWmMh5PNt65pgREAHJixi2xn0oXcBLIvehDgB4Ma8mJ4QYpJQlUvvkwhIJ_fLFQx_DfdQ--" aborted
2025/11/17 13:21:58 ERROR : 251031_165226790_Camera_1.iiq: Failed to copy: multipart upload: failed to finalise: failed to complete multipart upload "jTyYmd1x92u3WeqlmHbChVCoQZdG.Uo5n.6FQH3ygXwTHnYgKMUoQ3vnYy4JLeMp53dUhrHSeLgLb6IquRWmMh5PNt65pgREAHJixi2xn0oXcBLIvehDgB4Ma8mJ4QYpJQlUvvkwhIJ_fLFQx_DfdQ--": operation error S3: CompleteMultipartUpload, https response error StatusCode: 403, RequestID: CRCSFD1AXVFK00S7, HostID: jZh1MPeTGNBnCywwvnRI0BZt256/gxNyfDkdWsTCR7YFGKkDaU1yYq5qnr4cYTQrdgEE2DZ54LM=, api error AccessDenied: User: arn:aws:sts::513288716225:assumed-role/AWSReservedSSO_engineers_806de1e8b28d3806/sean.turner is not authorized to perform: s3:PutObject on resource: "arn:aws:s3:::BUCKET_NAME/flight/5/blah22/hyspex/vnir/iiq-again.txt/251031_165226790_Camera_1.iiq" with an explicit deny in a resource-based policy
2025/11/17 13:21:58 ERROR : Attempt 1/1 failed with 1 errors and: multipart upload: failed to finalise: failed to complete multipart upload "jTyYmd1x92u3WeqlmHbChVCoQZdG.Uo5n.6FQH3ygXwTHnYgKMUoQ3vnYy4JLeMp53dUhrHSeLgLb6IquRWmMh5PNt65pgREAHJixi2xn0oXcBLIvehDgB4Ma8mJ4QYpJQlUvvkwhIJ_fLFQx_DfdQ--": operation error S3: CompleteMultipartUpload, https response error StatusCode: 403, RequestID: CRCSFD1AXVFK00S7, HostID: jZh1MPeTGNBnCywwvnRI0BZt256/gxNyfDkdWsTCR7YFGKkDaU1yYq5qnr4cYTQrdgEE2DZ54LM=, api error AccessDenied: User: arn:aws:sts::513288716225:assumed-role/AWSReservedSSO_engineers_806de1e8b28d3806/sean.turner is not authorized to perform: s3:PutObject on resource: "arn:aws:s3:::BUCKET_NAME/flight/5/blah22/hyspex/vnir/iiq-again.txt/251031_165226790_Camera_1.iiq" with an explicit deny in a resource-based policy
2025/11/17 13:21:58 INFO :
Transferred: 113.577 MiB / 113.577 MiB, 100%, 686.745 KiB/s, ETA 0s
Errors: 1 (retrying may help)
Elapsed time: 1m33.1s
2025/11/17 13:21:58 DEBUG : 13 go routines active
2025/11/17 13:21:58 NOTICE: Failed to copy: multipart upload: failed to finalise: failed to complete multipart upload "jTyYmd1x92u3WeqlmHbChVCoQZdG.Uo5n.6FQH3ygXwTHnYgKMUoQ3vnYy4JLeMp53dUhrHSeLgLb6IquRWmMh5PNt65pgREAHJixi2xn0oXcBLIvehDgB4Ma8mJ4QYpJQlUvvkwhIJ_fLFQx_DfdQ--": operation error S3: CompleteMultipartUpload, https response error StatusCode: 403, RequestID: CRCSFD1AXVFK00S7, HostID: jZh1MPeTGNBnCywwvnRI0BZt256/gxNyfDkdWsTCR7YFGKkDaU1yYq5qnr4cYTQrdgEE2DZ54LM=, api error AccessDenied: User: arn:aws:sts::513288716225:assumed-role/AWSReservedSSO_engineers_806de1e8b28d3806/sean.turner is not authorized to perform: s3:PutObject on resource: "arn:aws:s3:::BUCKET_NAME/flight/5/blah22/hyspex/vnir/iiq-again.txt/251031_165226790_Camera_1.iiq" with an explicit deny in a resource-based policy