12 changed files with 72 additions and 233 deletions
-
2README.md
-
7bin/brakeman
-
109bin/bundle
-
16bin/dev
-
14bin/docker-entrypoint
-
27bin/kamal
-
34bin/oldsetup
-
8bin/rubocop
-
46bin/setup
-
5bin/thrust
-
27test/controllers/products_controller_test.rb
-
10test/test_helper.rb
@ -1,7 +0,0 @@ |
|||||
#!/usr/bin/env ruby |
|
||||
require "rubygems" |
|
||||
require "bundler/setup" |
|
||||
|
|
||||
ARGV.unshift("--ensure-latest") |
|
||||
|
|
||||
load Gem.bin_path("brakeman", "brakeman") |
|
@ -1,109 +0,0 @@ |
|||||
#!/usr/bin/env ruby |
|
||||
# frozen_string_literal: true |
|
||||
|
|
||||
# |
|
||||
# This file was generated by Bundler. |
|
||||
# |
|
||||
# The application 'bundle' is installed as part of a gem, and |
|
||||
# this file is here to facilitate running it. |
|
||||
# |
|
||||
|
|
||||
require "rubygems" |
|
||||
|
|
||||
m = Module.new do |
|
||||
module_function |
|
||||
|
|
||||
def invoked_as_script? |
|
||||
File.expand_path($0) == File.expand_path(__FILE__) |
|
||||
end |
|
||||
|
|
||||
def env_var_version |
|
||||
ENV["BUNDLER_VERSION"] |
|
||||
end |
|
||||
|
|
||||
def cli_arg_version |
|
||||
return unless invoked_as_script? # don't want to hijack other binstubs |
|
||||
return unless "update".start_with?(ARGV.first || " ") # must be running `bundle update` |
|
||||
bundler_version = nil |
|
||||
update_index = nil |
|
||||
ARGV.each_with_index do |a, i| |
|
||||
if update_index && update_index.succ == i && a.match?(Gem::Version::ANCHORED_VERSION_PATTERN) |
|
||||
bundler_version = a |
|
||||
end |
|
||||
next unless a =~ /\A--bundler(?:[= ](#{Gem::Version::VERSION_PATTERN}))?\z/ |
|
||||
bundler_version = $1 |
|
||||
update_index = i |
|
||||
end |
|
||||
bundler_version |
|
||||
end |
|
||||
|
|
||||
def gemfile |
|
||||
gemfile = ENV["BUNDLE_GEMFILE"] |
|
||||
return gemfile if gemfile && !gemfile.empty? |
|
||||
|
|
||||
File.expand_path("../Gemfile", __dir__) |
|
||||
end |
|
||||
|
|
||||
def lockfile |
|
||||
lockfile = |
|
||||
case File.basename(gemfile) |
|
||||
when "gems.rb" then gemfile.sub(/\.rb$/, ".locked") |
|
||||
else "#{gemfile}.lock" |
|
||||
end |
|
||||
File.expand_path(lockfile) |
|
||||
end |
|
||||
|
|
||||
def lockfile_version |
|
||||
return unless File.file?(lockfile) |
|
||||
lockfile_contents = File.read(lockfile) |
|
||||
return unless lockfile_contents =~ /\n\nBUNDLED WITH\n\s{2,}(#{Gem::Version::VERSION_PATTERN})\n/ |
|
||||
Regexp.last_match(1) |
|
||||
end |
|
||||
|
|
||||
def bundler_requirement |
|
||||
@bundler_requirement ||= |
|
||||
env_var_version || |
|
||||
cli_arg_version || |
|
||||
bundler_requirement_for(lockfile_version) |
|
||||
end |
|
||||
|
|
||||
def bundler_requirement_for(version) |
|
||||
return "#{Gem::Requirement.default}.a" unless version |
|
||||
|
|
||||
bundler_gem_version = Gem::Version.new(version) |
|
||||
|
|
||||
bundler_gem_version.approximate_recommendation |
|
||||
end |
|
||||
|
|
||||
def load_bundler! |
|
||||
ENV["BUNDLE_GEMFILE"] ||= gemfile |
|
||||
|
|
||||
activate_bundler |
|
||||
end |
|
||||
|
|
||||
def activate_bundler |
|
||||
gem_error = activation_error_handling do |
|
||||
gem "bundler", bundler_requirement |
|
||||
end |
|
||||
return if gem_error.nil? |
|
||||
require_error = activation_error_handling do |
|
||||
require "bundler/version" |
|
||||
end |
|
||||
return if require_error.nil? && Gem::Requirement.new(bundler_requirement).satisfied_by?(Gem::Version.new(Bundler::VERSION)) |
|
||||
warn "Activating bundler (#{bundler_requirement}) failed:\n#{gem_error.message}\n\nTo install the version of bundler this project requires, run `gem install bundler -v '#{bundler_requirement}'`" |
|
||||
exit 42 |
|
||||
end |
|
||||
|
|
||||
def activation_error_handling |
|
||||
yield |
|
||||
nil |
|
||||
rescue StandardError, LoadError => e |
|
||||
e |
|
||||
end |
|
||||
end |
|
||||
|
|
||||
m.load_bundler! |
|
||||
|
|
||||
if m.invoked_as_script? |
|
||||
load Gem.bin_path("bundler", "bundle") |
|
||||
end |
|
@ -1,16 +0,0 @@ |
|||||
#!/usr/bin/env sh |
|
||||
|
|
||||
if ! gem list foreman -i --silent; then |
|
||||
echo "Installing foreman..." |
|
||||
gem install foreman |
|
||||
fi |
|
||||
|
|
||||
# Default to port 3000 if not specified |
|
||||
export PORT="${PORT:-3000}" |
|
||||
|
|
||||
# Let the debug gem allow remote connections, |
|
||||
# but avoid loading until `debugger` is called |
|
||||
export RUBY_DEBUG_OPEN="true" |
|
||||
export RUBY_DEBUG_LAZY="true" |
|
||||
|
|
||||
exec foreman start -f Procfile.dev "$@" |
|
@ -1,14 +0,0 @@ |
|||||
#!/bin/bash -e |
|
||||
|
|
||||
# Enable jemalloc for reduced memory usage and latency. |
|
||||
if [ -z "${LD_PRELOAD+x}" ]; then |
|
||||
LD_PRELOAD=$(find /usr/lib -name libjemalloc.so.2 -print -quit) |
|
||||
export LD_PRELOAD |
|
||||
fi |
|
||||
|
|
||||
# If running the rails server then create or migrate existing database |
|
||||
if [ "${@: -2:1}" == "./bin/rails" ] && [ "${@: -1:1}" == "server" ]; then |
|
||||
./bin/rails db:prepare |
|
||||
fi |
|
||||
|
|
||||
exec "${@}" |
|
@ -1,27 +0,0 @@ |
|||||
#!/usr/bin/env ruby |
|
||||
# frozen_string_literal: true |
|
||||
|
|
||||
# |
|
||||
# This file was generated by Bundler. |
|
||||
# |
|
||||
# The application 'kamal' is installed as part of a gem, and |
|
||||
# this file is here to facilitate running it. |
|
||||
# |
|
||||
|
|
||||
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__) |
|
||||
|
|
||||
bundle_binstub = File.expand_path("bundle", __dir__) |
|
||||
|
|
||||
if File.file?(bundle_binstub) |
|
||||
if File.read(bundle_binstub, 300).include?("This file was generated by Bundler") |
|
||||
load(bundle_binstub) |
|
||||
else |
|
||||
abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run. |
|
||||
Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.") |
|
||||
end |
|
||||
end |
|
||||
|
|
||||
require "rubygems" |
|
||||
require "bundler/setup" |
|
||||
|
|
||||
load Gem.bin_path("kamal", "kamal") |
|
@ -0,0 +1,34 @@ |
|||||
|
#!/usr/bin/env ruby |
||||
|
require "fileutils" |
||||
|
|
||||
|
APP_ROOT = File.expand_path("..", __dir__) |
||||
|
|
||||
|
def system!(*args) |
||||
|
system(*args, exception: true) |
||||
|
end |
||||
|
|
||||
|
FileUtils.chdir APP_ROOT do |
||||
|
# This script is a way to set up or update your development environment automatically. |
||||
|
# This script is idempotent, so that you can run it at any time and get an expectable outcome. |
||||
|
# Add necessary setup steps to this file. |
||||
|
|
||||
|
puts "== Installing dependencies ==" |
||||
|
system("bundle check") || system!("bundle install") |
||||
|
|
||||
|
# puts "\n== Copying sample files ==" |
||||
|
# unless File.exist?("config/database.yml") |
||||
|
# FileUtils.cp "config/database.yml.sample", "config/database.yml" |
||||
|
# end |
||||
|
|
||||
|
puts "\n== Preparing database ==" |
||||
|
system! "bin/rails db:prepare" |
||||
|
|
||||
|
puts "\n== Removing old logs and tempfiles ==" |
||||
|
system! "bin/rails log:clear tmp:clear" |
||||
|
|
||||
|
unless ARGV.include?("--skip-server") |
||||
|
puts "\n== Starting development server ==" |
||||
|
STDOUT.flush # flush the output before exec(2) so that it displays |
||||
|
exec "bin/dev" |
||||
|
end |
||||
|
end |
@ -1,8 +0,0 @@ |
|||||
#!/usr/bin/env ruby |
|
||||
require "rubygems" |
|
||||
require "bundler/setup" |
|
||||
|
|
||||
# explicit rubocop config increases performance slightly while avoiding config confusion. |
|
||||
ARGV.unshift("--config", File.expand_path("../.rubocop.yml", __dir__)) |
|
||||
|
|
||||
load Gem.bin_path("rubocop", "rubocop") |
|
@ -1,34 +1,24 @@ |
|||||
#!/usr/bin/env ruby |
|
||||
require "fileutils" |
|
||||
|
#!/usr/bin/env bash |
||||
|
|
||||
APP_ROOT = File.expand_path("..", __dir__) |
|
||||
|
function idem_mise { |
||||
|
echo 'test mise' |
||||
|
} |
||||
|
|
||||
def system!(*args) |
|
||||
system(*args, exception: true) |
|
||||
end |
|
||||
|
function idem_ruby { |
||||
|
echo 'test ruby' |
||||
|
} |
||||
|
|
||||
FileUtils.chdir APP_ROOT do |
|
||||
# This script is a way to set up or update your development environment automatically. |
|
||||
# This script is idempotent, so that you can run it at any time and get an expectable outcome. |
|
||||
# Add necessary setup steps to this file. |
|
||||
|
function idem_rails { |
||||
|
echo 'test rails' |
||||
|
} |
||||
|
|
||||
puts "== Installing dependencies ==" |
|
||||
system("bundle check") || system!("bundle install") |
|
||||
|
function idem_sqlite { |
||||
|
echo 'test sqlite' |
||||
|
} |
||||
|
|
||||
# puts "\n== Copying sample files ==" |
|
||||
# unless File.exist?("config/database.yml") |
|
||||
# FileUtils.cp "config/database.yml.sample", "config/database.yml" |
|
||||
# end |
|
||||
|
# main |
||||
|
|
||||
puts "\n== Preparing database ==" |
|
||||
system! "bin/rails db:prepare" |
|
||||
|
|
||||
puts "\n== Removing old logs and tempfiles ==" |
|
||||
system! "bin/rails log:clear tmp:clear" |
|
||||
|
|
||||
unless ARGV.include?("--skip-server") |
|
||||
puts "\n== Starting development server ==" |
|
||||
STDOUT.flush # flush the output before exec(2) so that it displays |
|
||||
exec "bin/dev" |
|
||||
end |
|
||||
end |
|
||||
|
idem_mise |
||||
|
idem_ruby |
||||
|
idem_rails |
||||
|
idem_sqlite |
@ -1,5 +0,0 @@ |
|||||
#!/usr/bin/env ruby |
|
||||
require "rubygems" |
|
||||
require "bundler/setup" |
|
||||
|
|
||||
load Gem.bin_path("thruster", "thrust") |
|
Write
Preview
Loading…
Cancel
Save
Reference in new issue