]> git.openstreetmap.org Git - rails.git/blobdiff - .github/workflows/lint.yml
Use rails to migrate database for vagrant
[rails.git] / .github / workflows / lint.yml
index f452d8445b511983db52d8e072a3c2778fc6c3be..8dd3d69a5754616214868ae8cd493cdeea18fbc1 100644 (file)
@@ -2,32 +2,24 @@ name: Lint
 on:
   - push
   - pull_request
 on:
   - push
   - pull_request
+concurrency:
+  group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
+  cancel-in-progress: true
 env:
   os: ubuntu-20.04
 env:
   os: ubuntu-20.04
-  ruby: 2.7
+  ruby: '2.7'
 jobs:
   rubocop:
     name: RuboCop
     runs-on: ubuntu-20.04
     steps:
     - name: Check out code
 jobs:
   rubocop:
     name: RuboCop
     runs-on: ubuntu-20.04
     steps:
     - name: Check out code
-      uses: actions/checkout@v2.3.4
+      uses: actions/checkout@v3
     - name: Setup ruby
     - name: Setup ruby
-      uses: actions/setup-ruby@v1.1.3
+      uses: ruby/setup-ruby@v1
       with:
         ruby-version: ${{ env.ruby }}
       with:
         ruby-version: ${{ env.ruby }}
-    - name: Cache gems
-      uses: actions/cache@v2.1.5
-      with:
-        path: vendor/bundle
-        key: bundle-${{ env.os }}-${{ env.ruby }}-${{ hashFiles('Gemfile.lock') }}
-        restore-keys: |
-          bundle-${{ env.os }}-${{ env.ruby }}-
-    - name: Install gems
-      run: |
-        gem install bundler
-        bundle config set deployment true
-        bundle install --jobs 4 --retry 3
+        bundler-cache: true
     - name: Run rubocop
       run: bundle exec rubocop --format fuubar
   erblint:
     - name: Run rubocop
       run: bundle exec rubocop --format fuubar
   erblint:
@@ -35,23 +27,12 @@ jobs:
     runs-on: ubuntu-20.04
     steps:
     - name: Check out code
     runs-on: ubuntu-20.04
     steps:
     - name: Check out code
-      uses: actions/checkout@v2.3.4
+      uses: actions/checkout@v3
     - name: Setup ruby
     - name: Setup ruby
-      uses: actions/setup-ruby@v1.1.3
+      uses: ruby/setup-ruby@v1
       with:
         ruby-version: ${{ env.ruby }}
       with:
         ruby-version: ${{ env.ruby }}
-    - name: Cache gems
-      uses: actions/cache@v2.1.5
-      with:
-        path: vendor/bundle
-        key: bundle-${{ env.os }}-${{ env.ruby }}-${{ hashFiles('Gemfile.lock') }}
-        restore-keys: |
-          bundle-${{ env.os }}-${{ env.ruby }}-
-    - name: Install gems
-      run: |
-        gem install bundler
-        bundle config set deployment true
-        bundle install --jobs 4 --retry 3
+        bundler-cache: true
     - name: Run erblint
       run: bundle exec erblint .
   eslint:
     - name: Run erblint
       run: bundle exec erblint .
   eslint:
@@ -59,57 +40,35 @@ jobs:
     runs-on: ubuntu-20.04
     steps:
     - name: Check out code
     runs-on: ubuntu-20.04
     steps:
     - name: Check out code
-      uses: actions/checkout@v2.3.4
+      uses: actions/checkout@v3
     - name: Setup ruby
     - name: Setup ruby
-      uses: actions/setup-ruby@v1.1.3
+      uses: ruby/setup-ruby@v1
       with:
         ruby-version: ${{ env.ruby }}
       with:
         ruby-version: ${{ env.ruby }}
-    - name: Cache gems
-      uses: actions/cache@v2.1.5
-      with:
-        path: vendor/bundle
-        key: bundle-${{ env.os }}-${{ env.ruby }}-${{ hashFiles('Gemfile.lock') }}
-        restore-keys: |
-          bundle-${{ env.os }}-${{ env.ruby }}-
+        bundler-cache: true
     - name: Cache node modules
     - name: Cache node modules
-      uses: actions/cache@v2.1.5
+      uses: actions/cache@v3
       with:
         path: node_modules
         key: yarn-${{ env.os }}-${{ hashFiles('yarn.lock') }}
         restore-keys: |
           yarn-${{ env.os }}-
       with:
         path: node_modules
         key: yarn-${{ env.os }}-${{ hashFiles('yarn.lock') }}
         restore-keys: |
           yarn-${{ env.os }}-
-    - name: Install gems
-      run: |
-        gem install bundler
-        bundle config set deployment true
-        bundle install --jobs 4 --retry 3
     - name: Install node modules
     - name: Install node modules
-      run: bundle exec rake yarn:install
+      run: bundle exec bin/yarn install
     - name: Create dummy database configuration
       run: cp config/example.database.yml config/database.yml
     - name: Run eslint
     - name: Create dummy database configuration
       run: cp config/example.database.yml config/database.yml
     - name: Run eslint
-      run: bundle exec rake eslint
+      run: bundle exec rails eslint
   brakeman:
     name: Brakeman
     runs-on: ubuntu-20.04
     steps:
     - name: Check out code
   brakeman:
     name: Brakeman
     runs-on: ubuntu-20.04
     steps:
     - name: Check out code
-      uses: actions/checkout@v2.3.4
+      uses: actions/checkout@v3
     - name: Setup ruby
     - name: Setup ruby
-      uses: actions/setup-ruby@v1.1.3
+      uses: ruby/setup-ruby@v1
       with:
         ruby-version: ${{ env.ruby }}
       with:
         ruby-version: ${{ env.ruby }}
-    - name: Cache gems
-      uses: actions/cache@v2.1.5
-      with:
-        path: vendor/bundle
-        key: bundle-${{ env.os }}-${{ env.ruby }}-${{ hashFiles('Gemfile.lock') }}
-        restore-keys: |
-          bundle-${{ env.os }}-${{ env.ruby }}-
-    - name: Install gems
-      run: |
-        gem install bundler
-        bundle config set deployment true
-        bundle install --jobs 4 --retry 3
+        bundler-cache: true
     - name: Run brakeman
       run: bundle exec brakeman -q
     - name: Run brakeman
       run: bundle exec brakeman -q