Errore S3 durante l'aggiornamento a 2.9.0.beta1

Ciao a tutti,

ho provato la ricerca e non ho trovato nulla.

Eseguiamo Discourse 2.8.0beta11 senza problemi sui nostri sistemi dev e prod in locale. Fin qui tutto bene.

Ora ho provato ad aggiornare la nostra istanza dev a 2.9.0beta1 e ottengo il seguente errore durante il processo di build del container:

...
I, [2022-02-15T09:19:20.137108 #1] INFO -- : cd /var/www/discourse & sudo -E -u discourse bundle exec rake s3:upload_assets
rake aborted!
Aws::S3::Errors::MissingContentLength: You must provide the Content-Length HTTP header.
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/aws-sdk-core-3.121.2/lib/seahorse/client/plugins/raise_response_errors.rb:17:in `call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/aws-sdk-s3-1.96.1/lib/aws-sdk-s3/plugins/sse_cpk.rb:24:in `call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/aws-sdk-s3-1.96.1/lib/aws-sdk-s3/plugins/dualstack.rb:36:in `call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/aws-sdk-s3-1.96.1/lib/aws-sdk-s3/plugins/accelerate.rb:50:in `call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/aws-sdk-core-3.121.2/lib/aws-sdk-core/plugins/jsonvalue_converter.rb:22:in `call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/aws-sdk-core-3.121.2/lib/aws-sdk-core/plugins/idempotency_token.rb:19:in `call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/aws-sdk-core-3.121.2/lib/aws-sdk-core/plugins/param_converter.rb:26:in `call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/aws-sdk-core-3.121.2/lib/seahorse/client/plugins/request_callback.rb:71:in `call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/aws-sdk-core-3.121.2/lib/aws-sdk-core/plugins/response_paging.rb:12:in `call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/aws-sdk-core-3.121.2/lib/seahorse/client/plugins/response_target.rb:24:in `call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/aws-sdk-core-3.121.2/lib/seahorse/client/request.rb:72:in `send_request'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/aws-sdk-s3-1.96.1/lib/aws-sdk-s3/client.rb:11274:in `put_object'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/aws-sdk-s3-1.96.1/lib/aws-sdk-s3/object.rb:1329:in `put'
/var/www/discourse/lib/s3_helper.rb:74:in `upload'
/var/www/discourse/lib/tasks/s3.rake:37:in `block in upload'
/var/www/discourse/lib/tasks/s3.rake:36:in `open'
/var/www/discourse/lib/tasks/s3.rake:36:in `upload'
/var/www/discourse/lib/tasks/s3.rake:192:in `block (2 levels) in <main>'
/var/www/discourse/lib/tasks/s3.rake:191:in `each'
/var/www/discourse/lib/tasks/s3.rake:191:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rake-13.0.6/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'
Tasks: TOP => s3:upload_assets
(See full trace by running task with --trace)
I, [2022-02-15T09:19:30.893646 #1] INFO -- : Installing CORS rules...
skipping
Skipping: assets/browser-detect-16ca87077aead9f656700e192992122d3a7eee8c1bb76da992127945464d4777.js
Skipping: assets/browser-detect-16ca87077aead9f656700e192992122d3a7eee8c1bb76da992127945464d4777.br.js
Skipping: assets/browser-detect-16ca87077aead9f656700e192992122d3a7eee8c1bb76da992127945464d4777.gz.js
Skipping: assets/browser-detect-16ca87077aead9f656700e192992122d3a7eee8c1bb76da992127945464d4777.js.map
Skipping: assets/browser-update-eec13eb6f8386f18f10b5dd6ebb7a3598d28421bb796e539b91a7e4a4c5d4c08.js
Skipping: assets/browser-update-eec13eb6f8386f18f10b5dd6ebb7a3598d28421bb796e539b91a7e4a4c5d4c08.br.js
Skipping: assets/browser-update-eec13eb6f8386f18f10b5dd6ebb7a3598d28421bb796e539b91a7e4a4c5d4c08.gz.js
Skipping: assets/browser-update-eec13eb6f8386f18f10b5dd6ebb7a3598d28421bb796e539b91a7e4a4c5d4c08.js.map
...

Cosa significa Aws::S3::Errors::MissingContentLength: You must provide the Content-Length HTTP header. in questo caso?

Il nostro S3 è un MinIO e funziona perfettamente per noi.

Grazie per l’aiuto.

Hai configurato MinIO come specificato in Utilizzo dello storage di oggetti per i caricamenti (S3 e cloni)? Se sì, potrebbe essere che un aggiornamento del gem S3 o di MinIO abbia interrotto la compatibilità.

Poiché solo l’S3 reale è ciò su cui ci basiamo, questo potrebbe dover essere segnalato a MinIO.

1 Mi Piace

L’immagine di base di discourse ha aggiornato la versione della gemma ruby da aws-cdk-s3 da 1.90 a 1.96… Bisogna verificare se ci sono breaking changes…

Le impostazioni che hai linkato vanno bene, come ho scritto. La build della versione 2.8.0beta11 funziona bene… Quindi nessun aggiornamento finché non trovo il problema o sono fottuto :smiley:

1 Mi Piace

Ciao @Falco, mi sono allontanato da MiniIO e funziona di nuovo! Grazie per il tuo aiuto!

1 Mi Piace

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.