aboutsummaryrefslogtreecommitdiff
path: root/bin
diff options
context:
space:
mode:
authorMax Magorsch <max@magorsch.de>2020-01-03 01:55:50 +0100
committerMax Magorsch <max@magorsch.de>2020-01-03 01:55:50 +0100
commit7de161a64e8199a1235d9c91981a68f99438cbf0 (patch)
treee82c97f8bb179f8c07c5178467457ded43ae2acb /bin
parentFix the environment variables in .travis.docker.yml (diff)
downloadpackages-5-7de161a64e8199a1235d9c91981a68f99438cbf0.tar.gz
packages-5-7de161a64e8199a1235d9c91981a68f99438cbf0.tar.bz2
packages-5-7de161a64e8199a1235d9c91981a68f99438cbf0.zip
Migrate the project from sprockets to webpacker
The asset pipeline was introduced in Rails 3.1. However, since Rails 5.1 webpacker has been available, so that it's possible to use webpack. The project has been fully migrated to use webpacker for bundeling javascripts as well as stylesheets now. This way, sprockets has been completely replaced and removed from the project. Associated gems as jquery-rails have been removed as well. Accordingly all advanced webpack functionalities are available now. The bin/first-run file as well as the Dockerfiles have been adjusted to use webpacker instead of the asset pipeline. Please note: In order to use webpacker, yarn has to be installed on the target system. Please make sure that 'yarnpkg' is in your path. Signed-off-by: Max Magorsch <max@magorsch.de>
Diffstat (limited to 'bin')
-rwxr-xr-xbin/first-run4
-rwxr-xr-xbin/test.sh5
-rwxr-xr-xbin/webpack19
-rwxr-xr-xbin/webpack-dev-server19
4 files changed, 44 insertions, 3 deletions
diff --git a/bin/first-run b/bin/first-run
index 63130ed..564adf5 100755
--- a/bin/first-run
+++ b/bin/first-run
@@ -4,8 +4,10 @@
sleep 30
bundler install
+yarn install --check-files
bundle exec rake tmp:create RAILS_ENV=${1:-development}
-bundle exec rake assets:precompile RAILS_ENV=${1:-development}
+bundle exec rake tmp:cache:clear RAILS_ENV=${1:-development}
+bundle exec rake webpacker:compile RAILS_ENV=${1:-development}
bundle exec rake kkuleomi:index:init RAILS_ENV=${1:-development}
./bin/update-all.sh ${1:-development}
diff --git a/bin/test.sh b/bin/test.sh
index e9f1792..6b7c782 100755
--- a/bin/test.sh
+++ b/bin/test.sh
@@ -3,9 +3,10 @@
# Wait for Elasticsearch to start up
sleep 30
-#bundler install
+bundler install
+yarn install --check-files
bundle exec rake tmp:create RAILS_ENV=test
-bundle exec rake assets:precompile RAILS_ENV=test
+bundle exec rake webpacker:compile RAILS_ENV=test
bundle exec rake kkuleomi:index:init RAILS_ENV=test
bundle exec rake kkuleomi:update:all RAILS_ENV=test
diff --git a/bin/webpack b/bin/webpack
new file mode 100755
index 0000000..008ecb2
--- /dev/null
+++ b/bin/webpack
@@ -0,0 +1,19 @@
+#!/usr/bin/env ruby
+
+ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development"
+ENV["NODE_ENV"] ||= "development"
+
+require "pathname"
+ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
+ Pathname.new(__FILE__).realpath)
+
+require "rubygems"
+require "bundler/setup"
+
+require "webpacker"
+require "webpacker/webpack_runner"
+
+APP_ROOT = File.expand_path("..", __dir__)
+Dir.chdir(APP_ROOT) do
+ Webpacker::WebpackRunner.run(ARGV)
+end
diff --git a/bin/webpack-dev-server b/bin/webpack-dev-server
new file mode 100755
index 0000000..a931a9b
--- /dev/null
+++ b/bin/webpack-dev-server
@@ -0,0 +1,19 @@
+#!/usr/bin/env ruby
+
+ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development"
+ENV["NODE_ENV"] ||= "development"
+
+require "pathname"
+ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
+ Pathname.new(__FILE__).realpath)
+
+require "rubygems"
+require "bundler/setup"
+
+require "webpacker"
+require "webpacker/dev_server_runner"
+
+APP_ROOT = File.expand_path("..", __dir__)
+Dir.chdir(APP_ROOT) do
+ Webpacker::DevServerRunner.run(ARGV)
+end