X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/e9e4b10473fa536cdb840303ee4afccf71c69329..e89a78fff858d5db07f6959a39dd9655dc46008e:/.github/workflows/lint.yml?ds=inline diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index e762df445..06f6ff841 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -7,18 +7,19 @@ concurrency: cancel-in-progress: true env: os: ubuntu-22.04 - ruby: '3.0' + ruby: '3.1' jobs: rubocop: name: RuboCop runs-on: ubuntu-22.04 steps: - name: Check out code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Setup ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ env.ruby }} + rubygems: 3.4.10 bundler-cache: true - name: Run rubocop run: bundle exec rubocop --format fuubar @@ -27,27 +28,29 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Check out code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Setup ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ env.ruby }} + rubygems: 3.4.10 bundler-cache: true - name: Run erblint - run: bundle exec erblint . + run: bundle exec erb_lint . eslint: name: ESLint runs-on: ubuntu-22.04 steps: - name: Check out code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Setup ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ env.ruby }} + rubygems: 3.4.10 bundler-cache: true - name: Cache node modules - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: node_modules key: yarn-${{ env.os }}-${{ hashFiles('yarn.lock') }} @@ -64,11 +67,37 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Check out code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Setup ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ env.ruby }} + rubygems: 3.4.10 bundler-cache: true - name: Run brakeman run: bundle exec brakeman -q + annotate_models: + env: + RAILS_ENV: test + name: Rails Annotate Models + runs-on: ubuntu-22.04 + steps: + - name: Check out code + uses: actions/checkout@v4 + - name: Setup ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: ${{ env.ruby }} + rubygems: 3.4.10 + bundler-cache: true + - name: Setup database + run: | + sudo systemctl start postgresql + sudo -u postgres createuser -s $(id -un) + createdb openstreetmap + cp config/github.database.yml config/database.yml + bundle exec rails db:schema:load + - name: Run Annotate Models + run: bundle exec rails annotate_models + - name: Fail if model annotations are out of date + run: git diff --exit-code