X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/efef67447ba6c097d12d89987c902526b9ab6df5..a419f8890a66e584501b831aba9d1fdcbc6894bc:/.github/workflows/tests.yml diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 2eaf153b0..c1fa68072 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -2,33 +2,30 @@ name: Tests on: - push - pull_request +concurrency: + group: ${{ github.workflow }}-{{ github.head_ref || github.ref }} + cancel-in-progress: true jobs: - tests: + test: name: Ubuntu ${{ matrix.ubuntu }}, Ruby ${{ matrix.ruby }} strategy: matrix: - ubuntu: [18.04, 20.04] - ruby: [2.5, 2.7] + ubuntu: [20.04] + ruby: [2.7, 3.0] runs-on: ubuntu-${{ matrix.ubuntu }} env: RAILS_ENV: test OPENSTREETMAP_MEMCACHE_SERVERS: 127.0.0.1 steps: - name: Checkout source - uses: actions/checkout@v1 + uses: actions/checkout@v3 - name: Setup ruby - uses: actions/setup-ruby@v1 + uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} - - name: Cache gems - uses: actions/cache@v1 - with: - path: vendor/bundle - key: bundle-ubuntu-${{ matrix.ubuntu }}-ruby-${{ matrix.ruby }}-${{ hashFiles('Gemfile.lock') }} - restore-keys: | - bundle-ubuntu-${{ matrix.ubuntu }}-ruby-${{ matrix.ruby }}- + bundler-cache: true - name: Cache node modules - uses: actions/cache@v1 + uses: actions/cache@v3 with: path: node_modules key: yarn-ubuntu-${{ matrix.ubuntu }}-${{ hashFiles('yarn.lock') }} @@ -37,12 +34,7 @@ jobs: - name: Install packages run: | sudo apt-get -yqq update - sudo apt-get -yqq install memcached - - name: Install gems - run: | - gem install bundler - bundle config set deployment true - bundle install --jobs 4 --retry 3 + sudo apt-get -yqq install memcached libvips-dev - name: Create database run: | sudo systemctl start postgresql @@ -66,4 +58,20 @@ jobs: - name: Install node modules run: bundle exec rake yarn:install - name: Run tests - run: bundle exec rake test:db + run: bundle exec rails test:all + - name: Report completion to Coveralls + uses: coverallsapp/github-action@1.1.3 + with: + github-token: ${{ secrets.github_token }} + flag-name: ubuntu-${{ matrix.ubuntu }}-ruby-${{ matrix.ruby }} + parallel: true + finish: + name: Finalise + needs: test + runs-on: ubuntu-latest + steps: + - name: Report completion to Coveralls + uses: coverallsapp/github-action@1.1.3 + with: + github-token: ${{ secrets.github_token }} + parallel-finished: true