.github/workflows/test.yml in cure_line-1.0.0 vs .github/workflows/test.yml in cure_line-1.0.1

- old
+ new

@@ -1,120 +1,89 @@ name: test on: push: + branches: + - master + pull_request: + types: + - opened + - synchronize + - reopened schedule: - - cron: "0 10 * * 4" # JST 19:00 (Fri) + - cron: "0 10 * * 5" # JST 19:00 (Fri) env: CI: "true" jobs: test: - runs-on: ${{ matrix.runner }} + runs-on: ubuntu-latest + container: ${{ matrix.ruby }} + strategy: fail-fast: false matrix: ruby: - - 2.5.0 - - 2.6.0 - - 2.7.0 - - 2.8.0-dev + - ruby:2.5 + - ruby:2.6 + - ruby:2.7 + - ruby:3.0 + - rubylang/ruby:master-nightly-bionic include: - - ruby: 2.5.0 - runner: ubuntu-latest - - ruby: 2.6.0 - runner: ubuntu-latest - - ruby: 2.7.0 - runner: ubuntu-latest - - ruby: 2.8.0-dev - runner: ubuntu-latest + - ruby: rubylang/ruby:master-nightly-bionic + allow_failures: "true" steps: - uses: actions/checkout@v2 - - name: Set up rbenv - uses: masa-iwasaki/setup-rbenv@1.1.0 - - name: Cache RBENV_ROOT - uses: actions/cache@v1 - id: cache_rbenv - with: - path: ~/.rbenv/versions - key: v1-rbenv-${{ runner.os }}-${{ matrix.ruby }} - if: "!endsWith(matrix.ruby, '-dev')" - - - name: Reinstall libssl-dev - run: | - set -xe - sudo apt-get remove -y libssl-dev - sudo apt-get install -y libssl-dev=1.0.2g-1ubuntu4.15 - if: matrix.runner == 'ubuntu-16.04' - - - name: Install Ruby - run: | - set -xe - eval "$(rbenv init -)" - rbenv install -s $RBENV_VERSION - - gem install bundler --no-document -v 1.17.3 || true - env: - RBENV_VERSION: ${{ matrix.ruby }} - continue-on-error: ${{ endsWith(matrix.ruby, '-dev') }} - - - name: Generate unique cache key - run: uuidgen > uuid.txt - - name: Cache vendor/bundle uses: actions/cache@v1 id: cache_gem with: path: vendor/bundle - key: v1-gem-${{ runner.os }}-${{ matrix.ruby }}-${{ hashFiles('uuid.txt') }} + key: v1-gem-${{ runner.os }}-${{ matrix.ruby }}-${{ github.sha }} restore-keys: | v1-gem-${{ runner.os }}-${{ matrix.ruby }}- - continue-on-error: ${{ endsWith(matrix.ruby, '-dev') }} + continue-on-error: ${{ matrix.allow_failures == 'true' }} - name: bundle update run: | set -xe - eval "$(rbenv init -)" bundle config path vendor/bundle bundle update --jobs $(nproc) --retry 3 - env: - RBENV_VERSION: ${{ matrix.ruby }} - continue-on-error: ${{ endsWith(matrix.ruby, '-dev') }} + continue-on-error: ${{ matrix.allow_failures == 'true' }} - name: Setup Code Climate Test Reporter uses: aktions/codeclimate-test-reporter@v1 with: codeclimate-test-reporter-id: ${{ secrets.CC_TEST_REPORTER_ID }} command: before-build - continue-on-error: ${{ endsWith(matrix.ruby, '-dev') }} + if: matrix.ruby >= 'ruby:2.4' + continue-on-error: true - name: Run test run: | set -xe - eval "$(rbenv init -)" bundle exec rspec - env: - RBENV_VERSION: ${{ matrix.ruby }} - continue-on-error: ${{ endsWith(matrix.ruby, '-dev') }} + continue-on-error: ${{ matrix.allow_failures == 'true' }} - name: Teardown Code Climate Test Reporter uses: aktions/codeclimate-test-reporter@v1 with: codeclimate-test-reporter-id: ${{ secrets.CC_TEST_REPORTER_ID }} command: after-build - if: always() - continue-on-error: ${{ endsWith(matrix.ruby, '-dev') }} + if: matrix.ruby >= 'ruby:2.4' && always() + continue-on-error: true - name: Slack Notification (not success) - uses: homoluctus/slatify@v2.0.0 + uses: lazy-actions/slatify@master if: "! success()" + continue-on-error: true with: job_name: ${{ format('*build* ({0})', matrix.ruby) }} type: ${{ job.status }} icon_emoji: ":octocat:" url: ${{ secrets.SLACK_WEBHOOK }} @@ -126,11 +95,12 @@ runs-on: ubuntu-latest steps: - name: Slack Notification (success) - uses: homoluctus/slatify@v2.0.0 + uses: lazy-actions/slatify@master if: always() + continue-on-error: true with: job_name: '*build*' type: ${{ job.status }} icon_emoji: ":octocat:" url: ${{ secrets.SLACK_WEBHOOK }}