6 group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
7 cancel-in-progress: true
16 - name: Check out code
17 uses: actions/checkout@v4
19 uses: ruby/setup-ruby@v1
21 ruby-version: ${{ env.ruby }}
25 run: bundle exec rubocop --format fuubar
30 - name: Check out code
31 uses: actions/checkout@v4
33 uses: ruby/setup-ruby@v1
35 ruby-version: ${{ env.ruby }}
39 run: bundle exec erb_lint .
44 - name: Check out code
45 uses: actions/checkout@v4
47 uses: ruby/setup-ruby@v1
49 ruby-version: ${{ env.ruby }}
52 - name: Cache node modules
53 uses: actions/setup-node@v4
56 - name: Install node modules
57 run: bundle exec bin/yarn install
58 - name: Create dummy database configuration
59 run: cp config/example.database.yml config/database.yml
61 run: bundle exec rails eslint
66 - name: Check out code
67 uses: actions/checkout@v4
69 uses: ruby/setup-ruby@v1
71 ruby-version: ${{ env.ruby }}
75 run: bundle exec brakeman -q
79 name: Rails Annotate Models
82 - name: Check out code
83 uses: actions/checkout@v4
85 uses: ruby/setup-ruby@v1
87 ruby-version: ${{ env.ruby }}
90 - name: Setup database
92 sudo systemctl start postgresql
93 sudo -u postgres createuser -s $(id -un)
94 createdb openstreetmap
95 cp config/github.database.yml config/database.yml
96 bundle exec rails db:schema:load
97 - name: Run Annotate Models
98 run: bundle exec rails annotate_models
99 - name: Fail if model annotations are out of date
100 run: git diff --exit-code