roo_on_rails 1.21.0 → 2.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.circleci/config.yml +446 -150
- data/.circleci/config.yml.erb +63 -18
- data/.codecov.yml +3 -0
- data/Appraisals +17 -11
- data/CHANGELOG.md +38 -0
- data/README.md +23 -74
- data/appraise +1 -1
- data/exe/roo_on_rails +5 -0
- data/gemfiles/rails_4.gemfile +3 -1
- data/gemfiles/rails_5.gemfile +2 -1
- data/gemfiles/rails_5_1.gemfile +2 -1
- data/gemfiles/rails_5_2.gemfile +2 -1
- data/gemfiles/{rails_3.gemfile → rails_6.gemfile} +5 -4
- data/lib/roo_on_rails.rb +0 -3
- data/lib/roo_on_rails/checks/documentation/playbook_template.md +0 -4
- data/lib/roo_on_rails/concerns/require_api_key.rb +0 -1
- data/lib/roo_on_rails/config.rb +0 -8
- data/lib/roo_on_rails/default.env +0 -13
- data/lib/roo_on_rails/rack/populate_env_from_jwt.rb +26 -4
- data/lib/roo_on_rails/railties/database.rb +11 -10
- data/lib/roo_on_rails/railties/env.rb +3 -5
- data/lib/roo_on_rails/railties/google_oauth.rb +4 -6
- data/lib/roo_on_rails/railties/http.rb +34 -32
- data/lib/roo_on_rails/railties/roo_identity.rb +12 -8
- data/lib/roo_on_rails/railties/sidekiq_integration.rb +7 -19
- data/lib/roo_on_rails/version.rb +1 -1
- data/roo_on_rails.gemspec +4 -6
- metadata +24 -68
- data/.travis.yml +0 -34
- data/README.routemaster_client.md +0 -103
- data/lib/roo_on_rails/railties/logging.rb +0 -25
- data/lib/roo_on_rails/railties/new_relic.rb +0 -32
- data/lib/roo_on_rails/railties/routemaster.rb +0 -42
- data/lib/roo_on_rails/routemaster/lifecycle_events.rb +0 -64
- data/lib/roo_on_rails/routemaster/publish_lifecycle_events.rb +0 -13
- data/lib/roo_on_rails/routemaster/publisher.rb +0 -74
- data/lib/roo_on_rails/routemaster/publishers.rb +0 -27
- data/lib/roo_on_rails/tasks/newrelic.rake +0 -25
    
        data/.circleci/config.yml.erb
    CHANGED
    
    | @@ -1,15 +1,36 @@ | |
| 1 1 | 
             
            # To update the build configuration, edit the "builds" array below and run:
         | 
| 2 2 | 
             
            # erb .circleci/config.yml.erb > .circleci/config.yml
         | 
| 3 | 
            +
             | 
| 4 | 
            +
             | 
| 5 | 
            +
            # The default Ruby containers modify the behaviour of Bundler in a way that breaks
         | 
| 6 | 
            +
            # the CI since it makes it harder to run multiple apps in a single container
         | 
| 7 | 
            +
            # See https://github.com/docker-library/docs/pull/1221/files for a summary
         | 
| 8 | 
            +
            # Unsettting these variables restores the default behaviour:-
         | 
| 9 | 
            +
            #   * BUNDLE_APP_CONFIG
         | 
| 10 | 
            +
            #   * GEM_HOME
         | 
| 11 | 
            +
            #   * BUNDLE_PATH
         | 
| 12 | 
            +
            #   * BUNDLE_BIN
         | 
| 13 | 
            +
            common_ruby_environment: &common_ruby_environment
         | 
| 14 | 
            +
              environment:
         | 
| 15 | 
            +
                RAILS_ENV: test
         | 
| 16 | 
            +
                PGHOST: 127.0.0.1
         | 
| 17 | 
            +
                PGUSER: postgres
         | 
| 18 | 
            +
                POSTGRES_HOST_AUTH_METHOD: "trust"
         | 
| 19 | 
            +
            common_pg_environment_vars: &common_pg_environment_vars
         | 
| 20 | 
            +
                POSTGRES_USER: postgres
         | 
| 21 | 
            +
                POSTGRES_DB: ror_testapp_test
         | 
| 22 | 
            +
                POSTGRES_HOST_AUTH_METHOD: "trust"
         | 
| 3 23 | 
             
            <%
         | 
| 4 24 | 
             
              builds = [
         | 
| 5 | 
            -
             | 
| 6 | 
            -
             | 
| 7 | 
            -
             | 
| 8 | 
            -
             | 
| 9 | 
            -
             | 
| 10 | 
            -
             | 
| 11 | 
            -
             | 
| 12 | 
            -
             | 
| 25 | 
            +
                ['2.4.6', 'rails_4'],
         | 
| 26 | 
            +
                ['2.4.6', 'rails_5'],
         | 
| 27 | 
            +
                ['2.4.6', 'rails_5_1'],
         | 
| 28 | 
            +
                ['2.4.6', 'rails_5_2'],
         | 
| 29 | 
            +
                ['2.5.5', 'rails_4'],
         | 
| 30 | 
            +
                ['2.5.5', 'rails_5'],
         | 
| 31 | 
            +
                ['2.5.5', 'rails_5_1'],
         | 
| 32 | 
            +
                ['2.5.5', 'rails_5_2'],
         | 
| 33 | 
            +
                ['2.6.5', 'rails_6']
         | 
| 13 34 | 
             
              ]
         | 
| 14 35 | 
             
            %>
         | 
| 15 36 | 
             
            version: 2
         | 
| @@ -17,11 +38,13 @@ jobs: | |
| 17 38 | 
             
            <% builds.each do |ruby,variant| %>
         | 
| 18 39 | 
             
              build_<%= ruby %>_<%= variant %>:
         | 
| 19 40 | 
             
                docker:
         | 
| 20 | 
            -
                  - image:  | 
| 41 | 
            +
                  - image: ruby:<%= ruby %>-alpine
         | 
| 42 | 
            +
                    <<: *common_ruby_environment
         | 
| 21 43 | 
             
                  - image: postgres:9.6-alpine
         | 
| 22 44 | 
             
                    environment:
         | 
| 23 45 | 
             
                      PGDATA: /dev/shm/pgdata
         | 
| 24 | 
            -
             | 
| 46 | 
            +
                      <<: *common_pg_environment_vars
         | 
| 47 | 
            +
                  - image: redis:4-alpine
         | 
| 25 48 | 
             
                steps:
         | 
| 26 49 | 
             
                  - checkout
         | 
| 27 50 |  | 
| @@ -33,28 +56,50 @@ jobs: | |
| 33 56 | 
             
                        ln -s /dev/shm/tmp ~/project/tmp
         | 
| 34 57 |  | 
| 35 58 | 
             
                  - run:
         | 
| 36 | 
            -
                      name:  | 
| 59 | 
            +
                      name: Setup requirements
         | 
| 60 | 
            +
                      command: |
         | 
| 61 | 
            +
                        apk add --update git bash build-base postgresql-dev sqlite-dev tzdata nodejs
         | 
| 62 | 
            +
             | 
| 63 | 
            +
                  - run:
         | 
| 64 | 
            +
                      name: Configure bundler
         | 
| 37 65 | 
             
                      command: |
         | 
| 38 | 
            -
                         | 
| 39 | 
            -
             | 
| 66 | 
            +
                        unset \
         | 
| 67 | 
            +
                          BUNDLE_APP_CONFIG \
         | 
| 68 | 
            +
                          GEM_HOME \
         | 
| 69 | 
            +
                          BUNDLE_PATH \
         | 
| 70 | 
            +
                          BUNDLE_BIN
         | 
| 40 71 | 
             
                        bundle config --local gemfile $PWD/gemfiles/<%= variant %>.gemfile
         | 
| 41 72 |  | 
| 42 73 | 
             
                  - restore_cache:
         | 
| 43 | 
            -
                      keys: | 
| 74 | 
            +
                      keys:
         | 
| 44 75 | 
             
                        - v2-bundle-<%= ruby %>-<%= variant %>-{{ .Branch }}
         | 
| 45 76 | 
             
                        - v2-bundle-<%= ruby %>-<%= variant %>
         | 
| 46 77 | 
             
                        - v2-bundle-<%= ruby %>
         | 
| 47 78 |  | 
| 48 | 
            -
                  - run: | 
| 49 | 
            -
                      name: Install  | 
| 79 | 
            +
                  - run:
         | 
| 80 | 
            +
                      name: Install bundle
         | 
| 50 81 | 
             
                      command: |
         | 
| 82 | 
            +
                        unset \
         | 
| 83 | 
            +
                          BUNDLE_APP_CONFIG \
         | 
| 84 | 
            +
                          GEM_HOME \
         | 
| 85 | 
            +
                          BUNDLE_PATH \
         | 
| 86 | 
            +
                          BUNDLE_BIN
         | 
| 51 87 | 
             
                        bundle install --jobs=3 --retry=3 --path=$PWD/vendor/bundle
         | 
| 52 88 |  | 
| 89 | 
            +
                  # The default Ruby containers modify the behaviour of Bundler in a way that breaks
         | 
| 90 | 
            +
                  # the CI since it makes it harder to run multiple apps in a single container
         | 
| 91 | 
            +
                  # See https://github.com/docker-library/docs/pull/1221/files for a summary
         | 
| 92 | 
            +
                  # Unsettting the variables restores the default behaviour
         | 
| 53 93 | 
             
                  - run:
         | 
| 54 94 | 
             
                      name: Run test suite
         | 
| 55 95 | 
             
                      command: |
         | 
| 56 | 
            -
                        unset  | 
| 57 | 
            -
             | 
| 96 | 
            +
                        unset \
         | 
| 97 | 
            +
                          RACK_ENV \
         | 
| 98 | 
            +
                          RAILS_ENV \
         | 
| 99 | 
            +
                          BUNDLE_APP_CONFIG \
         | 
| 100 | 
            +
                          GEM_HOME \
         | 
| 101 | 
            +
                          BUNDLE_PATH \
         | 
| 102 | 
            +
                          BUNDLE_BIN
         | 
| 58 103 | 
             
                        bundle exec rspec
         | 
| 59 104 |  | 
| 60 105 | 
             
                  - save_cache:
         | 
    
        data/.codecov.yml
    CHANGED
    
    
    
        data/Appraisals
    CHANGED
    
    | @@ -1,31 +1,37 @@ | |
| 1 | 
            -
            appraise 'rails-3' do
         | 
| 2 | 
            -
              gem 'rails', '~> 3.2'
         | 
| 3 | 
            -
              gem 'sqlite3'
         | 
| 4 | 
            -
              gem 'sidekiq', '< 5'
         | 
| 5 | 
            -
              gem 'pg', '~> 0.11'
         | 
| 6 | 
            -
            end
         | 
| 7 | 
            -
             | 
| 8 1 | 
             
            appraise 'rails-4' do
         | 
| 9 2 | 
             
              gem 'rails', '~> 4.2'
         | 
| 10 | 
            -
              gem 'sqlite3'
         | 
| 3 | 
            +
              gem 'sqlite3', '~> 1.3.6'
         | 
| 11 4 | 
             
              gem 'pg', '~> 0.11'
         | 
| 5 | 
            +
              gem 'sprockets', '~>3.0'
         | 
| 6 | 
            +
              gem 'rake', '13.0.1'
         | 
| 12 7 | 
             
            end
         | 
| 13 8 |  | 
| 14 9 | 
             
            appraise 'rails-5' do
         | 
| 15 10 | 
             
              gem 'rails', '~> 5.0.0'
         | 
| 16 | 
            -
              gem 'sqlite3'
         | 
| 11 | 
            +
              gem 'sqlite3', '~> 1.3.6'
         | 
| 17 12 | 
             
              gem 'pg', '~> 0.18'
         | 
| 13 | 
            +
              gem 'rake', '13.0.1'
         | 
| 18 14 | 
             
            end
         | 
| 19 15 |  | 
| 20 16 | 
             
            appraise 'rails-5-1' do
         | 
| 21 17 | 
             
              gem 'rails', '~> 5.1.0'
         | 
| 22 | 
            -
              gem 'sqlite3'
         | 
| 18 | 
            +
              gem 'sqlite3', '~> 1.3.6'
         | 
| 23 19 | 
             
              gem 'pg', '~> 0.18'
         | 
| 20 | 
            +
              gem 'rake', '13.0.1'
         | 
| 24 21 | 
             
            end
         | 
| 25 22 |  | 
| 26 23 | 
             
            appraise 'rails-5-2' do
         | 
| 27 24 | 
             
              gem 'rails', '~> 5.2.0'
         | 
| 28 25 | 
             
              gem 'bootsnap', '>= 1.1.0', require: false
         | 
| 29 | 
            -
              gem 'sqlite3'
         | 
| 26 | 
            +
              gem 'sqlite3', '~> 1.3.6'
         | 
| 27 | 
            +
              gem 'pg', '~> 0.18'
         | 
| 28 | 
            +
              gem 'rake', '13.0.1'
         | 
| 29 | 
            +
            end
         | 
| 30 | 
            +
             | 
| 31 | 
            +
            appraise 'rails-6' do
         | 
| 32 | 
            +
              gem 'rails', '~> 6.0.3'
         | 
| 33 | 
            +
              gem 'bootsnap', '>= 1.1.0', require: false
         | 
| 34 | 
            +
              gem 'sqlite3', '~> 1.4'
         | 
| 30 35 | 
             
              gem 'pg', '~> 0.18'
         | 
| 36 | 
            +
              gem 'rake', '13.0.1'
         | 
| 31 37 | 
             
            end
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -1,3 +1,41 @@ | |
| 1 | 
            +
            # v2.1.2
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            Bug fix:
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            - fixes PopulateEnvFromJWT caching issue where a key that couldn't be fetched would be cached
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            # v2.1.0
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            Features:
         | 
| 10 | 
            +
             | 
| 11 | 
            +
            - Rails 6 compatibility
         | 
| 12 | 
            +
             | 
| 13 | 
            +
            # v2.0.0-pre.2
         | 
| 14 | 
            +
             | 
| 15 | 
            +
            Features:
         | 
| 16 | 
            +
             | 
| 17 | 
            +
            - Removes routemaster
         | 
| 18 | 
            +
             | 
| 19 | 
            +
            # v2.0.0-pre.1
         | 
| 20 | 
            +
             | 
| 21 | 
            +
            Features:
         | 
| 22 | 
            +
             | 
| 23 | 
            +
            - Remove New Relic
         | 
| 24 | 
            +
             | 
| 25 | 
            +
            # v1.23.0 (2019-04-24)
         | 
| 26 | 
            +
             | 
| 27 | 
            +
            Features:
         | 
| 28 | 
            +
             | 
| 29 | 
            +
            - Setting DATABASE_STATEMENT_TIMEOUT to -1 will prevent the app setting any timeout.
         | 
| 30 | 
            +
              Setting timeouts from the app conflicts with PGBouncer and should be disabled if
         | 
| 31 | 
            +
              using one.
         | 
| 32 | 
            +
             | 
| 33 | 
            +
            # v1.22.0 (2018-08-29)
         | 
| 34 | 
            +
             | 
| 35 | 
            +
            Features:
         | 
| 36 | 
            +
             | 
| 37 | 
            +
             - Allows specifying `BASE_NEW_RELIC_APP_NAME` instead of `NEW_RELIC_APP_NAME`, which reports to New Relic per Hopper service.
         | 
| 38 | 
            +
             | 
| 1 39 | 
             
            # v1.21.0 (2018-03-27)
         | 
| 2 40 |  | 
| 3 41 | 
             
            Features:
         | 
    
        data/README.md
    CHANGED
    
    | @@ -17,17 +17,17 @@ | |
| 17 17 |  | 
| 18 18 | 
             
            - [Installation](#installation)
         | 
| 19 19 | 
             
            - [Library usage](#library-usage)
         | 
| 20 | 
            -
              - [New Relic configuration](#new-relic-configuration)
         | 
| 21 20 | 
             
              - [Rack middleware](#rack-middleware)
         | 
| 21 | 
            +
                - [Disabling SSL enforcement](#disabling-ssl-enforcement)
         | 
| 22 22 | 
             
              - [Database configuration](#database-configuration)
         | 
| 23 23 | 
             
              - [Sidekiq](#sidekiq)
         | 
| 24 | 
            -
              - [HireFire](#hirefire)
         | 
| 25 24 | 
             
              - [Logging](#logging)
         | 
| 26 25 | 
             
              - [Identity](#identity)
         | 
| 27 26 | 
             
              - [Google OAuth authentication](#google-oauth-authentication)
         | 
| 28 27 | 
             
              - [Datadog Integration](#datadog-integration)
         | 
| 29 | 
            -
             | 
| 30 | 
            -
             | 
| 28 | 
            +
                - [Heroku metrics](#heroku-metrics)
         | 
| 29 | 
            +
                - [Custom application metrics](#custom-application-metrics)
         | 
| 30 | 
            +
              - [API Authentication](#api-authentication)
         | 
| 31 31 | 
             
            - [Command features](#command-features)
         | 
| 32 32 | 
             
              - [Usage](#usage)
         | 
| 33 33 | 
             
              - [Description](#description)
         | 
| @@ -48,11 +48,6 @@ Remove the following gems from your Gemfile, as they're provided and configured | |
| 48 48 | 
             
            by `roo_on_rails`:
         | 
| 49 49 |  | 
| 50 50 | 
             
            - `dotenv`
         | 
| 51 | 
            -
            - `newrelic_rpm`
         | 
| 52 | 
            -
             | 
| 53 | 
            -
            Remove the following configuration files:
         | 
| 54 | 
            -
             | 
| 55 | 
            -
            - `newrelic.yml` or `config/newrelic.yml`
         | 
| 56 51 |  | 
| 57 52 | 
             
            Also remove any other gem-specific configuration from your repository.
         | 
| 58 53 |  | 
| @@ -62,23 +57,19 @@ And then execute: | |
| 62 57 |  | 
| 63 58 | 
             
            Then re-run your test suite to make sure everything is shipshape.
         | 
| 64 59 |  | 
| 65 | 
            -
            ##  | 
| 60 | 
            +
            ## Running specs
         | 
| 66 61 |  | 
| 67 | 
            -
             | 
| 62 | 
            +
            To run the specs locally, you will need to run the following command:
         | 
| 68 63 |  | 
| 69 | 
            -
             | 
| 64 | 
            +
            ```ruby
         | 
| 65 | 
            +
            bundle config --local gemfile $PWD/gemfiles/<%= variant %>.gemfile
         | 
| 66 | 
            +
            ```
         | 
| 67 | 
            +
             | 
| 68 | 
            +
            Where `<%= variant %>` is the Rails version you'd like to test (e.g. `rails_5_2`).
         | 
| 70 69 |  | 
| 71 | 
            -
             | 
| 72 | 
            -
               otherwise it will abort.
         | 
| 73 | 
            -
            2. No `new_relic.yml` file may be presentin your app. Overrides to New Relic settings
         | 
| 74 | 
            -
               through [environment
         | 
| 75 | 
            -
               variables](https://docs.newrelic.com/docs/agents/ruby-agent/installation-configuration/ruby-agent-configuration)
         | 
| 76 | 
            -
               is permitted.
         | 
| 77 | 
            -
            3. The `NEW_RELIC_APP_NAME` environment variable must be defined
         | 
| 78 | 
            -
               such that the app will be properly registered in New Relic.
         | 
| 70 | 
            +
            `bundle exec rspec` should then work as normal.
         | 
| 79 71 |  | 
| 80 | 
            -
             | 
| 81 | 
            -
            our standard settings.
         | 
| 72 | 
            +
            ## Library usage
         | 
| 82 73 |  | 
| 83 74 | 
             
            ### Rack middleware
         | 
| 84 75 |  | 
| @@ -104,6 +95,11 @@ To do this, you can set the `ROO_ON_RAILS_DISABLE_SSL_ENFORCEMENT` to `YES`. | |
| 104 95 | 
             
            The database statement timeout will be set to a low value by default. Use
         | 
| 105 96 | 
             
            `DATABASE_STATEMENT_TIMEOUT` (milliseconds, default 200) to customise.
         | 
| 106 97 |  | 
| 98 | 
            +
            When using a PGBouncer, setting the timeout from the application will cause
         | 
| 99 | 
            +
            inconsistent results. The timeout should always be set using the RDS parameter
         | 
| 100 | 
            +
            group in thise case. To prevent the app trying to set a timeout, set
         | 
| 101 | 
            +
            `DATABASE_STATEMENT_TIMEOUT` to -1.
         | 
| 102 | 
            +
             | 
| 107 103 | 
             
            For database creation and migration (specifically the `db:create`, `db:migrate`,
         | 
| 108 104 | 
             
            `db:migrate:down` and `db:rollback` tasks) a much higher statement timeout is
         | 
| 109 105 | 
             
            set by default. Use `MIGRATION_STATEMENT_TIMEOUT` (milliseconds, default 10000)
         | 
| @@ -138,48 +134,6 @@ NB. If you are migrating to SLA-based queue names, do not set `SIDEKIQ_ENABLED` | |
| 138 134 | 
             
            to `true` before your old queues have finished processing (this will prevent
         | 
| 139 135 | 
             
            Sidekiq from seeing the old queues at all).
         | 
| 140 136 |  | 
| 141 | 
            -
            ### HireFire
         | 
| 142 | 
            -
             | 
| 143 | 
            -
            #### For Web Dynos
         | 
| 144 | 
            -
             | 
| 145 | 
            -
            Web dynos can be autoscaled by HireFire _only_ if it has been configured to use the `Web.Logplex.Load` source and the Heroku runtime metrics lab feature has been enabled:
         | 
| 146 | 
            -
             | 
| 147 | 
            -
            ```bash
         | 
| 148 | 
            -
            $ heroku labs:enable log-runtime-metrics -a your-service-name-here
         | 
| 149 | 
            -
            ```
         | 
| 150 | 
            -
             | 
| 151 | 
            -
            You will also need a log drain for HireFire, but the RooOnRails helper below should configure this for you. You can check with
         | 
| 152 | 
            -
             | 
| 153 | 
            -
            ```bash
         | 
| 154 | 
            -
            $ heroku drains | grep hirefire
         | 
| 155 | 
            -
            https://logdrain.hirefire.io (d.00000000-0000-0000-0000-000000000000)
         | 
| 156 | 
            -
             | 
| 157 | 
            -
            # No drain? Add with:
         | 
| 158 | 
            -
            $ heroku drains:add -a your-service-name-here https://logdrain.hirefire.io
         | 
| 159 | 
            -
            ```
         | 
| 160 | 
            -
             | 
| 161 | 
            -
            ([HireFire docs for set up](https://help.hirefire.io/guides/logplex/load-logplex))
         | 
| 162 | 
            -
             | 
| 163 | 
            -
            #### For Sidekiq Workers
         | 
| 164 | 
            -
             | 
| 165 | 
            -
            When `HIREFIRE_TOKEN` is set an endpoint will be mounted at `/hirefire` that
         | 
| 166 | 
            -
            reports the required worker count as a function of queue latency. By default we
         | 
| 167 | 
            -
            add queue names in the style 'within1day', so if we notice an average latency in
         | 
| 168 | 
            -
            that queue of more than an set threshold we'll request one more worker. If we
         | 
| 169 | 
            -
            notice less than a threshold we'll request one less worker. These settings can
         | 
| 170 | 
            -
            be customised via the following ENV variables
         | 
| 171 | 
            -
             | 
| 172 | 
            -
            - `WORKER_INCREASE_THRESHOLD` (default 0.5)
         | 
| 173 | 
            -
            - `WORKER_DECREASE_THRESHOLD` (default 0.1)
         | 
| 174 | 
            -
             | 
| 175 | 
            -
            When setting the manager up in the HireFire web ui, the following settings must
         | 
| 176 | 
            -
            be used:
         | 
| 177 | 
            -
             | 
| 178 | 
            -
            - name: 'worker'
         | 
| 179 | 
            -
            - type: 'Worker.HireFire.JobQueue'
         | 
| 180 | 
            -
            - ratio: 1
         | 
| 181 | 
            -
            - decrementable: 'true'
         | 
| 182 | 
            -
             | 
| 183 137 | 
             
            ### Logging
         | 
| 184 138 |  | 
| 185 139 | 
             
            For clearer and machine-parseable log output, the Rails logger is replaced by an
         | 
| @@ -302,16 +256,6 @@ The following tags will automatically be added to all your metrics and their val | |
| 302 256 | 
             
              * `HOPPER_APP_NAME`+`HOPPER_ECS_CLUSTER_NAME` – automatically set by Hopper (e.g. `notifications-staging`);
         | 
| 303 257 | 
             
              * Defaults to `unknown`.
         | 
| 304 258 |  | 
| 305 | 
            -
            ### Routemaster Client
         | 
| 306 | 
            -
             | 
| 307 | 
            -
            When `ROUTEMASTER_ENABLED` is set to `true` we attempt to configure [`routemaster-client`](https://github.com/deliveroo/routemaster-client) on your application. In order for this to happen, set the following environment variables:
         | 
| 308 | 
            -
             | 
| 309 | 
            -
            * `ROUTEMASTER_URL` – the full URL of your Routemaster application (mandatory)
         | 
| 310 | 
            -
            * `ROUTEMASTER_UUID` – the UUID of your application, e.g. `logistics-dashboard` (mandatory)
         | 
| 311 | 
            -
            * `ROUTEMASTER_VERIFY_SSL` – set to false if your Routemaster application is not served with a valid cert. (optional)
         | 
| 312 | 
            -
             | 
| 313 | 
            -
            If you then want to enable the publishing of events onto the event bus, you need to set `ROUTEMASTER_PUBLISHING_ENABLED` to `true` and implement publishers as needed. An example of how to do this is detailed in [`README.routemaster_client.md`](README.routemaster_client.md).
         | 
| 314 | 
            -
             | 
| 315 259 | 
             
            ### API Authentication
         | 
| 316 260 |  | 
| 317 261 | 
             
            RooOnRails provides a concern which will make adding rotatable API authentication to your service a breeze:
         | 
| @@ -393,6 +337,11 @@ The command is designed to fix issues in many cases. | |
| 393 337 | 
             
            Pull requests are welcome on GitHub at
         | 
| 394 338 | 
             
            `https://github.com/deliveroo/roo_on_rails`.
         | 
| 395 339 |  | 
| 340 | 
            +
            ## Releasing
         | 
| 341 | 
            +
             | 
| 342 | 
            +
            1. Bump the version number in `lib/roo_on_rails/version.rb
         | 
| 343 | 
            +
            1. Add an entry to the changelog
         | 
| 344 | 
            +
            1. After merging to master release e.g. `bundle exec rake release`
         | 
| 396 345 |  | 
| 397 346 | 
             
            ## License
         | 
| 398 347 |  | 
    
        data/appraise
    CHANGED
    
    
    
        data/exe/roo_on_rails
    CHANGED
    
    | @@ -36,6 +36,11 @@ module RooOnRails | |
| 36 36 | 
             
                  end
         | 
| 37 37 |  | 
| 38 38 | 
             
                  def run
         | 
| 39 | 
            +
                    # Force output to be unbuffered, otherwise the CI
         | 
| 40 | 
            +
                    # tests will fail because the parent app won't see
         | 
| 41 | 
            +
                    # the log output from the test app
         | 
| 42 | 
            +
                    $stdout.sync = true
         | 
| 43 | 
            +
                    $stderr.sync = true
         | 
| 39 44 | 
             
                    _assert_argv_length(0..0)
         | 
| 40 45 | 
             
                    require 'roo_on_rails/sidekiq/loader'
         | 
| 41 46 | 
             
                    RooOnRails::Sidekiq::Loader.run
         | 
    
        data/gemfiles/rails_4.gemfile
    CHANGED
    
    
    
        data/gemfiles/rails_5.gemfile
    CHANGED
    
    
    
        data/gemfiles/rails_5_1.gemfile
    CHANGED
    
    
    
        data/gemfiles/rails_5_2.gemfile
    CHANGED
    
    
| @@ -6,9 +6,10 @@ gem "guard" | |
| 6 6 | 
             
            gem "guard-rspec"
         | 
| 7 7 | 
             
            gem "appraisal"
         | 
| 8 8 | 
             
            gem "webmock"
         | 
| 9 | 
            -
            gem "pg", "~> 0. | 
| 10 | 
            -
            gem "sqlite3"
         | 
| 11 | 
            -
            gem "rails", "~> 3 | 
| 12 | 
            -
            gem " | 
| 9 | 
            +
            gem "pg", "~> 0.18"
         | 
| 10 | 
            +
            gem "sqlite3", "~> 1.4"
         | 
| 11 | 
            +
            gem "rails", "~> 6.0.3"
         | 
| 12 | 
            +
            gem "bootsnap", ">= 1.1.0", require: false
         | 
| 13 | 
            +
            gem "rake", "13.0.1"
         | 
| 13 14 |  | 
| 14 15 | 
             
            gemspec path: "../"
         |