Moves the most important checks into a linter. It gets executed by Lefthook as well as the docker rake task and Github actions. Doing those checks in rspec takes too long and it produces errors when the discourse:test Docker image contains old, invalid locale files.
* DEV: Update bundler in GitHub Actions CI
* DEV: Fix bundler deprecation warning
Fixes the following two deprecation warnings:
```
[DEPRECATED] The `--deployment` flag is deprecated because it relies on being remembered across bundler invocations, which bundler will no longer do in future versions. Instead please use `bundle config set deployment 'true'`, and stop using this flag
```
```
[DEPRECATED] The `--without` flag is deprecated because it relies on being remembered across bundler invocations, which bundler will no longer do in future versions. Instead please use `bundle config set without 'development'`, and stop using this flag
```
* DEV: The default `retry` value is already `3`
See https://bundler.io/v2.0/man/bundle-config.1.html:
> retry (BUNDLE_RETRY): The number of times to retry failed network requests. Defaults to 3.
* DEV: `&& \` isn't required in multiline `step.run`
Steps use the fail-fast strategy.
* DEV: Use multiline `step.run` where possible
* DEV: Update Bundler
Latest RubyGems 3.1.1 vendors bundler 2.1.0 *again*. And our base
image build system even updates it to 2.1.1.
After that it is unable to run a simple `bundle install` because of
version mismatch.
Updating bundler to the one that comes with our enforced Ruby version
solves this.
* DEV: Update bundler in CI too