346 Commits (trunk)
 

Author SHA1 Message Date
Matt Brictson a64b2c7fed
Rename master branch to "main" 4 years ago
Matt Brictson c098e7f91e
Enable cops added in rubocop 0.85 4 years ago
Matt Brictson 2c65a9d122
No need to specify CI working dir 4 years ago
Matt Brictson 847b5631d2
Latest rack-canonical-host gem 4 years ago
Matt Brictson 8b3ad96118
Enable new cops in rubocop 0.84 4 years ago
Matt Brictson d62632ee0c
bundle check before install 4 years ago
Matt Brictson ead1abbf8e
Set up CI to test the template works (#26) 4 years ago
Matt Brictson baed6325ec
Change rubocop line length to 120 4 years ago
Matt Brictson 2768b283e6
Don't install pure development gems in CI 4 years ago
Matt Brictson 0486ed2f41
Support Bundler < 2.1 4 years ago
Matt Brictson ece964fcc3
Clarify that Bundler 2.x is required 4 years ago
Matt Brictson 2fb82a061c
Move database.yml into source control
A single database.yml checked into source control should work out of the
box for most developers. To handle edge cases people can use environment
variables to override the defaults; e.g. PGHOST, PGUSER, etc.

In production the standard approach is to set the DATABASE_URL env var.
4 years ago
Matt Brictson 714dc595bd
Allow sidekiq concurrency to be set via ENV var 4 years ago
Matt Brictson b675a46e81
Replace awesome_print with amazing_print 4 years ago
Matt Brictson 39026c744b
Latest CircleCI practices 4 years ago
Matt Brictson e7f8c238e9
Ensure eslint understands es6 4 years ago
Matt Brictson cc55cea264
Add eslint and prettier 4 years ago
Matt Brictson 7cf70ccbb7
Makefile requires tabs, not spaces 4 years ago
Matt Brictson 7aa0d8bd6c
Remove xray-rails (doesn't work with webpacker) 4 years ago
Matt Brictson 2323444612
Remove bootstrap 4 years ago
Matt Brictson 4c6599ec1a
Replace use of deprecated Bundler.with_clean_env 4 years ago
Matt Brictson 043e92a38b
Overhaul CircleCI recommendations
- Use new executors and commands syntax
- Upgrade to PostgreSQL 12
- Install Node 12 and Yarn (needed for webpacker)
- Split static analysis, tests, and system tests into separate jobs
4 years ago
Matt Brictson a6cc2b3bcc
Bust bundler cache when ruby version changes 4 years ago
Matt Brictson 3fa89a0854
Remove simplecov 4 years ago
Matt Brictson b06fece04d
Relax rubocop rules a bit, upgrade to 0.80
And add rubocop-minitest for good measure.
4 years ago
Matt Brictson 85a438604e
Explicitly set password for postgres in CircleCI
This fixes an error reported by the latest postgres docker image:

```
Error: Database is uninitialized and superuser password is not specified.
       You must specify POSTGRES_PASSWORD for the superuser. Use
       "-e POSTGRES_PASSWORD=password" to set it in "docker run".

       You may also use POSTGRES_HOST_AUTH_METHOD=trust to allow all connections
       without a password. This is *not* recommended. See PostgreSQL
       documentation about "trust":
       https://www.postgresql.org/docs/current/auth-trust.html
```
4 years ago
Matt Brictson c08c49e21b
Happy New Year! 🥳 4 years ago
Matt Brictson 68d26300b4
Disable the Rails/RakeEnvironment cop 4 years ago
Matt Brictson 48ebb6be83
Validate Rails 6 testing options
This template assumes that test-unit and Rails system tests will be
used, so any CLI options that disable tests will cause problems. Update
our validation of these options to take account for new ones and renamed
ones in the latest versions of Rails.

Fixes #23
5 years ago
Matt Brictson 1f708debc1
New queues needed for ActiveStorage in Rails 6
https://medium.com/@dylansreile/rails-6-0-new-framework-defaults-what-they-do-and-how-to-safely-uncomment-them-586146f371e8
5 years ago
Matt Brictson 07a5512c4f
Remove marco-polo gem
Now that we are using 12-factor, the Rails environment for deployment
will always be "production", with the only differences per environment
being controlled via env vars. This means marco-polo is not helpful,
because it will always prompt "prod".
5 years ago
Matt Brictson b94c9779b6
Improve Docker support by changing HOSTNAME var (#22)
Docker containers set a HOSTNAME var by default which is not what our
`config.ru` is expecting. To avoid this conflict, change the name of the
variable we expect to RAILS_HOSTNAME. This allows a Docker container to
run the Rails app out of the box.

Fixes #21
5 years ago
Matt Brictson 25fade2abe
Remove bundle install flags in favor of config
This is anticipation of these flags being deprecated in Bundler 2.1 and
removed entirely in Bundler 3.0.
5 years ago
Matt Brictson d13dfc8b97
Install bundler version that matches lock 5 years ago
Matt Brictson c18acbad27
Add mock_redis gem so Redis is not needed in test
This allows e.g. CI to run without needing to set up a Redis instance.
5 years ago
Matt Brictson 7e629fb741
Leave force_ssl off by default
Often times an app will be deployed without SSL initially before the
final DNS/hosting setup is finalized. Leave it off by default and allow
opt-in per deployment environment.
5 years ago
Matt Brictson 53aa20f54d
Remove separate staging environment 5 years ago
Matt Brictson e7a7cee2f8
Remove capistrano 5 years ago
Matt Brictson ba57427f54
Remove JavascriptHelper; not needed for webpacker
The `javascript_include_tag` helper is not used in webpacker (which is
standard for Rails 6). This means that our JavascriptHelper is no longer
useful.
5 years ago
Matt Brictson 821fa58450
Ensure heroku local uses port 3000 for puma 5 years ago
Matt Brictson e88038dbad
Document missing env vars in README 5 years ago
Matt Brictson e32971d8cd
Create tmp directories necessary for puma to boot
Fixes a problem where `heroku local` would fail to start puma due to a
missing `tmp/pids` directory.
5 years ago
Matt Brictson 81950ceb70
Upgrade Gemfile and app config for Rails 6
* Remove bin/update, it is no longer part of Rails, as of Rails 6
* Update base.html.erb to use webpacker
5 years ago
Matt Brictson 1989d2a6e1
Remove mocha since it is not thread-safe
This means it doesn't play nicely with the new multi-threaded testing in
Rails 6.
5 years ago
Matt Brictson 4924f4c8d9
gitignore recommendations from Rails 6.0 default 5 years ago
Matt Brictson 38c626f6bd
Prepare for Rails 6
`render file:` with a template name will be deprecated in Rails 6.
Switch to the more correct `render template:`, which works in Rails 5.2
as well.
5 years ago
Matt Brictson 717a0ffaa4
Avoid race conditions in webdrivers update
By explicitly downloading chromedriver before tests are run, rather than
having webdrivers do it in a lazy fashion during the tests.
5 years ago
Matt Brictson cb3bab1252
Latest rubocop extracts rails cops to another gem 5 years ago
Matt Brictson ebb4b06295
Replace chromedriver-helper with webdrivers 5 years ago
Matt Brictson bf6bcaac2e
Set up new rubocop-performance gem 5 years ago