Improve devcontainer for running tests (#22277)
* Improve devcontainer for running tests - Pull devcontainer post-create out into its own script - Add asset precompilation - Add test-mode asset precompilation (needed to run tests without error) * Document Gemfile.lock re-checkout in devcontainer
This commit is contained in:
parent
726c7dea31
commit
8a56587d62
|
@ -20,7 +20,7 @@
|
||||||
"forwardPorts": [3000, 4000],
|
"forwardPorts": [3000, 4000],
|
||||||
|
|
||||||
// Use 'postCreateCommand' to run commands after the container is created.
|
// Use 'postCreateCommand' to run commands after the container is created.
|
||||||
"postCreateCommand": "bundle install --path vendor/bundle && yarn install && git checkout -- Gemfile.lock && ./bin/rails db:setup",
|
"postCreateCommand": ".devcontainer/post-create.sh",
|
||||||
|
|
||||||
// Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
|
// Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
|
||||||
"remoteUser": "vscode"
|
"remoteUser": "vscode"
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e # Fail the whole script on first error
|
||||||
|
|
||||||
|
# Fetch Ruby gem dependencies
|
||||||
|
bundle install --path vendor/bundle --with='development test'
|
||||||
|
|
||||||
|
# Fetch Javascript dependencies
|
||||||
|
yarn install
|
||||||
|
|
||||||
|
# Make Gemfile.lock pristine again
|
||||||
|
git checkout -- Gemfile.lock
|
||||||
|
|
||||||
|
# [re]create, migrate, and seed the test database
|
||||||
|
RAILS_ENV=test ./bin/rails db:setup
|
||||||
|
|
||||||
|
# Precompile assets for development
|
||||||
|
RAILS_ENV=development ./bin/rails assets:precompile
|
||||||
|
|
||||||
|
# Precompile assets for test
|
||||||
|
RAILS_ENV=test NODE_ENV=tests ./bin/rails assets:precompile
|
Reference in New Issue