Skip to content

Add missing staging configuration for Shakapacker#14007

Closed
pacodelaluna wants to merge 3 commits intoopenfoodfoundation:masterfrom
pacodelaluna:add-missing-staging-configuration-for-shakapacker
Closed

Add missing staging configuration for Shakapacker#14007
pacodelaluna wants to merge 3 commits intoopenfoodfoundation:masterfrom
pacodelaluna:add-missing-staging-configuration-for-shakapacker

Conversation

@pacodelaluna
Copy link
Copy Markdown
Contributor

What? Why?

We are facing issues while deployment on FR_staging server.
On this deployment, you can see that the remove_transient_data task is breaking because of the Shakapacker missing configuration.

openfoodnetwork@fr-staging:~/apps/openfoodnetwork/current$ bundle exec rake ofn:data:remove_transient_data RAILS_ENV=staging
RAILS_ENV=staging environment is not defined in /home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-02-27-070826/config/shakapacker.yml, falling back to production environment

What should we test?

Just test the FR_staging deploymenet from Github

Release notes

  • Add missing staging configuration for Shakapacker

Changelog Category (reviewers may add a label for the release notes):

  • User facing changes
  • API changes (V0, V1, DFC or Webhook)
  • Technical changes only
  • Feature toggled

Copy link
Copy Markdown
Contributor Author

@pacodelaluna pacodelaluna left a comment

Choose a reason for hiding this comment

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

I have used the same configuration than from production env, tell me if any issue.

@github-project-automation github-project-automation Bot moved this to All the things 💤 in OFN Delivery board Mar 9, 2026
@sigmundpetersen sigmundpetersen moved this from All the things 💤 to Code review 🔎 in OFN Delivery board Mar 9, 2026
Comment thread config/shakapacker.yml Outdated
public_output_path: packs-test

staging:
<<: *default
Copy link
Copy Markdown
Collaborator

@rioug rioug Mar 10, 2026

Choose a reason for hiding this comment

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

can't you just do ?

Suggested change
<<: *default
<<: *production

@rioug
Copy link
Copy Markdown
Collaborator

rioug commented Mar 10, 2026

I am surprised that's causing an issue :

  • It falls back to production config, so it should still run as expected, plus ofn:data:remove_transient_data doesn't touch anything related to assests.
  • we would see similar issue with the other staging server.

To me it looks like there is a timeout, possibly because the task is taking too long to run. Did you try manually running the task on the server and trying to deploy afterwards ?

I would look at using ssh option SercerAliveInterval in the deploy workflow, to see if that helps.

@rioug rioug moved this from Code review 🔎 to In Progress ⚙ in OFN Delivery board Mar 10, 2026
@pacodelaluna
Copy link
Copy Markdown
Contributor Author

@rioug Right, the issue is not directly related to the missing configuration, I thought that the missing configuration would have helped somehow. I have tried to run the failing task, it is just giving me the warning message, and it is running quite fast, 5 sec maximum, so I was not seeing a timeout case there, but I may have missed something.
Yesterday, @AMEA-LYON succeeded in running a PR on fr-staging server after this, so the random/border timeout issue is still a better lead. I thought that 255 error code was for random reason, but it seems actually clearly dedicated to a SSH connectivity issue.

@AMEA-LYON
Copy link
Copy Markdown

I still cannot deploy any PR now, it is either failing with 255 error code, or running more than 30 minutes and I have to cancel it...

@pacodelaluna
Copy link
Copy Markdown
Contributor Author

@AMEA-LYON I am actually working on the deployment on a new VPS for FR Staging instance. Not sure at all that it will fix this issue, but I will take an other look of the problem persists after the migration.

@pacodelaluna
Copy link
Copy Markdown
Contributor Author

I have setup the FR staging on a new VPS, and I am still facing the same issue when I am trying to deploy.
But I have now a clearer output for the error:

TASK [deploy : precompile assets] *************************************************************************
[ERROR]: Task failed: Module failed: non-zero return code
Origin: /home/paco/Workspace/coopcircuits_project/ofn-install/roles/deploy/tasks/deploy.yml:120:3

118     - skip_ansible_lint
119
120 - name: precompile assets # noqa 301
      ^ column 3

fatal: [staging.coopcircuits.fr]: FAILED! => {
    "changed": true,
    "cmd": [
        "bash",
        "-lc",
        "bundle exec rake assets:precompile RAILS_ENV=staging"
    ],
    "delta": "0:00:10.866602",
    "end": "2026-04-01 05:48:48.867146",
    "rc": 1,
    "start": "2026-04-01 05:48:38.000544"
}

STDOUT:

RAILS_ENV=staging environment is not defined in /home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/config/shakapacker.yml, falling back to production environment


STDERR:

I, [2026-04-01T05:48:43.375784 #620410]  INFO -- : Writing /home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/public/assets/turbo-86b1d7db600e0ba747624c5a5fc731c31a054d4525dd5c001471d57d9fe15583.js
I, [2026-04-01T05:48:43.377066 #620410]  INFO -- : Writing /home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/public/assets/turbo-86b1d7db600e0ba747624c5a5fc731c31a054d4525dd5c001471d57d9fe15583.js.gz
I, [2026-04-01T05:48:43.411277 #620410]  INFO -- : Writing /home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/public/assets/turbo.min-48ba368abf9426d2a6f619cb849eb8d12da9a1fc37d97a7378ae58241672461a.js
I, [2026-04-01T05:48:43.411454 #620410]  INFO -- : Writing /home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/public/assets/turbo.min-48ba368abf9426d2a6f619cb849eb8d12da9a1fc37d97a7378ae58241672461a.js.gz
I, [2026-04-01T05:48:43.413094 #620410]  INFO -- : Writing /home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/public/assets/turbo.min.js-05cbca1f5e4e46ea82d562021d4206a64ec65adbf041dddbf8dfeac2d439dbaf.map
I, [2026-04-01T05:48:44.795490 #620410]  INFO -- : Writing /home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/public/assets/admin_minimal-995a62df2376171134d7ac7767562eb6512b894bb44bf8369081f656f0ee1b0d.js
I, [2026-04-01T05:48:44.795776 #620410]  INFO -- : Writing /home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/public/assets/admin_minimal-995a62df2376171134d7ac7767562eb6512b894bb44bf8369081f656f0ee1b0d.js.gz
I, [2026-04-01T05:48:46.262834 #620410]  INFO -- : Writing /home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/public/assets/web/all-1da1cc6fe6a50c600a4552a2cc1a45297623e3d517b0e95219ed51cd7f798342.js
I, [2026-04-01T05:48:46.263061 #620410]  INFO -- : Writing /home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/public/assets/web/all-1da1cc6fe6a50c600a4552a2cc1a45297623e3d517b0e95219ed51cd7f798342.js.gz
W, [2026-04-01T05:48:47.487910 #620410]  WARN -- : Removed sourceMappingURL comment for missing asset 'angular-file-upload.js.map' from /home/openfoodnetwork/.gem/ruby/3.4.0/gems/angularjs-file-upload-rails-2.4.1/app/assets/javascripts/angularjs-file-upload.js
rake aborted!
Aws::Errors::MissingRegionError: No region was provided. Configure the `:region` option or export the region name to ENV['AWS_REGION'] (Aws::Errors::MissingRegionError)

        raise Errors::MissingRegionError if region.nil? || region == ''
              ^^^^^^^^^^^^^^^^^^^^^^^^^^
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/aws-sdk-core-3.243.0/lib/aws-sdk-core/plugins/regional_endpoint.rb:84:in 'Aws::Plugins::RegionalEndpoint#after_initialize'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/aws-sdk-core-3.243.0/lib/seahorse/client/base.rb:81:in 'block in Seahorse::Client::Base#after_initialize'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/aws-sdk-core-3.243.0/lib/seahorse/client/base.rb:80:in 'Array#each'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/aws-sdk-core-3.243.0/lib/seahorse/client/base.rb:80:in 'Seahorse::Client::Base#after_initialize'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/aws-sdk-core-3.243.0/lib/seahorse/client/base.rb:23:in 'Seahorse::Client::Base#initialize'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/aws-sdk-s3-1.215.0/lib/aws-sdk-s3/client.rb:578:in 'Aws::S3::Client#initialize'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/aws-sdk-core-3.243.0/lib/seahorse/client/base.rb:102:in 'Seahorse::Client::Base.new'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/aws-sdk-s3-1.215.0/lib/aws-sdk-s3/resource.rb:28:in 'Aws::S3::Resource#initialize'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activestorage-7.1.6/lib/active_storage/service/s3_service.rb:18:in 'Class#new'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activestorage-7.1.6/lib/active_storage/service/s3_service.rb:18:in 'ActiveStorage::Service::S3Service#initialize'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activestorage-7.1.6/lib/active_storage/service.rb:63:in 'Class#new'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activestorage-7.1.6/lib/active_storage/service.rb:63:in 'ActiveStorage::Service.build'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activestorage-7.1.6/lib/active_storage/service/configurator.rb:17:in 'ActiveStorage::Service::Configurator#build'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activestorage-7.1.6/lib/active_storage/service/registry.rb:13:in 'block in ActiveStorage::Service::Registry#fetch'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activestorage-7.1.6/lib/active_storage/service/registry.rb:11:in 'Hash#fetch'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activestorage-7.1.6/lib/active_storage/service/registry.rb:11:in 'ActiveStorage::Service::Registry#fetch'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activestorage-7.1.6/lib/active_storage/engine.rb:159:in 'block (2 levels) in <class:Engine>'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activesupport-7.1.6/lib/active_support/lazy_load_hooks.rb:97:in 'Module#class_eval'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activesupport-7.1.6/lib/active_support/lazy_load_hooks.rb:97:in 'block in ActiveSupport::LazyLoadHooks#execute_hook'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activesupport-7.1.6/lib/active_support/lazy_load_hooks.rb:87:in 'ActiveSupport::LazyLoadHooks#with_execution_control'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activesupport-7.1.6/lib/active_support/lazy_load_hooks.rb:92:in 'ActiveSupport::LazyLoadHooks#execute_hook'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activesupport-7.1.6/lib/active_support/lazy_load_hooks.rb:78:in 'block in ActiveSupport::LazyLoadHooks#run_load_hooks'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activesupport-7.1.6/lib/active_support/lazy_load_hooks.rb:77:in 'Array#each'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activesupport-7.1.6/lib/active_support/lazy_load_hooks.rb:77:in 'ActiveSupport::LazyLoadHooks#run_load_hooks'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activestorage-7.1.6/app/models/active_storage/blob.rb:374:in '<main>'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bootsnap-1.23.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:33:in 'Kernel#require'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/zeitwerk-2.7.5/lib/zeitwerk/core_ext/kernel.rb:26:in 'Kernel#require'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activestorage-7.1.6/lib/active_storage/attached/model.rb:240:in 'ActiveStorage::Attached::Model::ClassMethods#validate_service_configuration'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/activestorage-7.1.6/lib/active_storage/attached/model.rb:97:in 'ActiveStorage::Attached::Model::ClassMethods#has_one_attached'
/home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/app/models/spree/image.rb:7:in '<class:Image>'
/home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/app/models/spree/image.rb:4:in '<module:Spree>'
/home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/app/models/spree/image.rb:3:in '<main>'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bootsnap-1.23.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:33:in 'Kernel#require'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/zeitwerk-2.7.5/lib/zeitwerk/core_ext/kernel.rb:26:in 'Kernel#require'
/home/openfoodnetwork/apps/openfoodnetwork/releases-old/2026-04-01-054626/app/assets/javascripts/templates/product_modal.html.haml:19:in 'Tilt::CompiledTemplates#__tilt_3152'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/tilt-2.7.0/lib/tilt/template.rb:394:in 'UnboundMethod#bind_call'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/tilt-2.7.0/lib/tilt/template.rb:394:in 'Tilt::Template#evaluate_method'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/tilt-2.7.0/lib/tilt/template.rb:266:in 'Tilt::Template#evaluate'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/tilt-2.7.0/lib/tilt/template.rb:134:in 'Tilt::Template#render'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/legacy_tilt_processor.rb:25:in 'Sprockets::LegacyTiltProcessor#call'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/processor_utils.rb:75:in 'Sprockets::ProcessorUtils#call_processor'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/processor_utils.rb:57:in 'block in Sprockets::ProcessorUtils#call_processors'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/processor_utils.rb:56:in 'Array#reverse_each'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/processor_utils.rb:56:in 'Sprockets::ProcessorUtils#call_processors'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/loader.rb:134:in 'Sprockets::Loader#load_from_unloaded'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/loader.rb:60:in 'block in Sprockets::Loader#load'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/loader.rb:317:in 'Sprockets::Loader#fetch_asset_from_dependency_cache'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/loader.rb:44:in 'Sprockets::Loader#load'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/cached_environment.rb:20:in 'block in Sprockets::CachedEnvironment#initialize'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/cached_environment.rb:47:in 'Sprockets::CachedEnvironment#load'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/bundle.rb:23:in 'block in Sprockets::Bundle.call'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/utils.rb:201:in 'Sprockets::Utils#dfs'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/bundle.rb:24:in 'Sprockets::Bundle.call'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/processor_utils.rb:75:in 'Sprockets::ProcessorUtils#call_processor'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/processor_utils.rb:57:in 'block in Sprockets::ProcessorUtils#call_processors'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/processor_utils.rb:56:in 'Array#reverse_each'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/processor_utils.rb:56:in 'Sprockets::ProcessorUtils#call_processors'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/loader.rb:134:in 'Sprockets::Loader#load_from_unloaded'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/loader.rb:60:in 'block in Sprockets::Loader#load'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/loader.rb:317:in 'Sprockets::Loader#fetch_asset_from_dependency_cache'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/loader.rb:44:in 'Sprockets::Loader#load'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/cached_environment.rb:20:in 'block in Sprockets::CachedEnvironment#initialize'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/cached_environment.rb:47:in 'Sprockets::CachedEnvironment#load'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/base.rb:66:in 'Sprockets::Base#find_asset'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/base.rb:73:in 'Sprockets::Base#find_all_linked_assets'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/manifest.rb:134:in 'block in Sprockets::Manifest#find'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/manifest.rb:133:in 'Array#each'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/manifest.rb:133:in 'Sprockets::Manifest#find'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/sprockets/manifest.rb:186:in 'Sprockets::Manifest#compile'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-rails-3.5.2/lib/sprockets/rails/task.rb:67:in 'block (3 levels) in Sprockets::Rails::Task#define'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-3.7.5/lib/rake/sprocketstask.rb:147:in 'Rake::SprocketsTask#with_logger'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/sprockets-rails-3.5.2/lib/sprockets/rails/task.rb:66:in 'block (2 levels) in Sprockets::Rails::Task#define'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bugsnag-6.29.0/lib/bugsnag/integrations/rake.rb:23:in 'Bugsnag::RakeTask#execute'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/rake-13.3.1/exe/rake:27:in '<top (required)>'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bundler-4.0.3/lib/bundler/cli/exec.rb:61:in 'Kernel.load'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bundler-4.0.3/lib/bundler/cli/exec.rb:61:in 'Bundler::CLI::Exec#kernel_load'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bundler-4.0.3/lib/bundler/cli/exec.rb:24:in 'Bundler::CLI::Exec#run'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bundler-4.0.3/lib/bundler/cli.rb:500:in 'Bundler::CLI#exec'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bundler-4.0.3/lib/bundler/vendor/thor/lib/thor/command.rb:28:in 'Bundler::Thor::Command#run'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bundler-4.0.3/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in 'Bundler::Thor::Invocation#invoke_command'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bundler-4.0.3/lib/bundler/vendor/thor/lib/thor.rb:538:in 'Bundler::Thor.dispatch'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bundler-4.0.3/lib/bundler/cli.rb:35:in 'Bundler::CLI.dispatch'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bundler-4.0.3/lib/bundler/vendor/thor/lib/thor/base.rb:584:in 'Bundler::Thor::Base::ClassMethods#start'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bundler-4.0.3/lib/bundler/cli.rb:29:in 'Bundler::CLI.start'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bundler-4.0.3/exe/bundle:28:in 'block in <top (required)>'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bundler-4.0.3/lib/bundler/friendly_errors.rb:118:in 'Bundler.with_friendly_errors'
/home/openfoodnetwork/.gem/ruby/3.4.0/gems/bundler-4.0.3/exe/bundle:20:in '<top (required)>'
/home/openfoodnetwork/.rbenv/versions/3.4.8/bin/bundle:25:in 'Kernel#load'
/home/openfoodnetwork/.rbenv/versions/3.4.8/bin/bundle:25:in '<main>'
Tasks: TOP => assets:precompile
(See full trace by running task with --trace)


MSG:

non-zero return code

The error is related to the Storage configuration. It looks like Shakapacker is keeping the initial environment to set up the whole configuration after, and the production env is missing the Storage configuration.
But we should have the same issue on the other staging instances...
I keep digging.

@pacodelaluna
Copy link
Copy Markdown
Contributor Author

Ok, the issue was related to S3_REGION var, it is missing in the env template in ofn-install. The issue is only visible when you run provision with the new S3-compatible setup, as we don't have fallback for this configuration, compared to the AWS S3 one few lines above.
I have pushed a PR on ofn-install to fix this. I am now able to deploy on FR staging instance from my local setup.

It was complicated to get information from Github as it silently failed, it seems only the STDOUT is logged there. Iit was much clearer with local configuration.

This PR can be closed.

@rioug rioug closed this Apr 6, 2026
@github-project-automation github-project-automation Bot moved this from In Progress ⚙ to Done in OFN Delivery board Apr 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants