discourse_dev: use local bundler directory for temp install (#662)
authorDavid Taylor <david@taylorhq.com>
Tue, 3 Jan 2023 17:58:51 +0000 (17:58 +0000)
committerGitHub <noreply@github.com>
Tue, 3 Jan 2023 17:58:51 +0000 (17:58 +0000)
discourse_dev installs a temporary version of Discourse to create a pre-migrated database. Previously this was installing gems in the global bundler directory, which could lead to permissions errors. This commit makes it use a local vendor directory, just like we do in the production install of Discourse.

image/discourse_dev/postgres_dev.template.yml

index 9163805b07b89c34f4b1e0c9e50db52e0bbca95f..2092d03e81b0cc216e726362fefe1c746dcce4ef 100644 (file)
@@ -43,6 +43,7 @@ run:
 
   - exec: cd tmp && git clone https://github.com/discourse/discourse.git --depth=1
   - exec: chown -R discourse /tmp/discourse
+  - exec: cd /tmp/discourse && sudo -u discourse bundle config --local path ./vendor/bundle
   - exec: cd /tmp/discourse && sudo -u discourse bundle install
   - exec: cd /tmp/discourse && sudo -u discourse yarn install
   - exec: cd /tmp/discourse && sudo -u discourse yarn cache clean