diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index 5fabb5e3f..5eb1b22c2 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -10,6 +10,7 @@ on: - main - master - release + - ccache pull_request: branches: - main @@ -58,172 +59,15 @@ jobs: - uses: ./.github/workflows/custom/after-install if: hashFiles('.github/workflows/custom/after-install/action.yml') != '' - - uses: ./.github/workflows/update-snapshots - if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository - - - uses: ./.github/workflows/style - if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository - - - uses: ./.github/workflows/roxygenize - if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository - - - id: commit - if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository - uses: ./.github/workflows/commit - - - uses: ./.github/workflows/check - with: - results: ${{ runner.os }}-smoke-test - - # Runs in a separate workflow, because it's using dev pkgdown - # which might bring in other dev dependencies - pkgdown: - needs: rcc-smoke - - runs-on: ubuntu-latest - - name: "pkgdown" - - # Begin custom: services - # End custom: services - - steps: - - uses: actions/checkout@v4 - with: - ref: ${{ needs.rcc-smoke.outputs.sha }} - - - uses: ./.github/workflows/rate-limit - with: - token: ${{ secrets.GITHUB_TOKEN }} - - - uses: ./.github/workflows/git-identity - if: github.event_name == 'push' - - - uses: ./.github/workflows/custom/before-install - if: hashFiles('.github/workflows/custom/before-install/action.yml') != '' - - - uses: ./.github/workflows/install - with: - token: ${{ secrets.GITHUB_TOKEN }} - install-r: false - cache-version: pkgdown-1 - needs: website - extra-packages: r-lib/pkgdown local::. - - - uses: ./.github/workflows/custom/after-install - if: hashFiles('.github/workflows/custom/after-install/action.yml') != '' - - - uses: ./.github/workflows/pkgdown-build - if: github.event_name != 'push' - - - uses: ./.github/workflows/pkgdown-deploy - if: github.event_name == 'push' - - # Windows checks can be run in parallel and independently - # when they alone take as long as the smoke and full tests combined. - # To achieve this, remove the "needs:" element below. - rcc-windows: - # Begin custom: early run - needs: rcc-smoke - # End custom: early run - - runs-on: ${{ matrix.config.os }} - - name: ${{ matrix.config.os }} (${{ matrix.config.r }}) ${{ matrix.config.desc }} - - # Begin custom: services - # End custom: services - - strategy: - fail-fast: false - matrix: - config: - - {os: windows-latest, r: 'release'} - # Use 3.6 to trigger usage of RTools35 - - steps: - - uses: actions/checkout@v4 - with: - ref: ${{ needs.rcc-smoke.outputs.sha }} - - - uses: ./.github/workflows/custom/before-install - if: hashFiles('.github/workflows/custom/before-install/action.yml') != '' - - - uses: ./.github/workflows/install - with: - r-version: ${{ matrix.config.r }} - cache-version: rcc-windows-1 - token: ${{ secrets.GITHUB_TOKEN }} - needs: check - - - uses: ./.github/workflows/custom/after-install - if: hashFiles('.github/workflows/custom/after-install/action.yml') != '' - - - uses: ./.github/workflows/update-snapshots - if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository - - - uses: ./.github/workflows/check + - name: Setup tmate session + uses: mxschmitt/action-tmate@v3 with: - results: ${{ runner.os }}-r${{ matrix.config.r }} - - rcc-full: - needs: rcc-smoke - - runs-on: ${{ matrix.config.os }} - - name: ${{ matrix.config.os }} (${{ matrix.config.r }}) ${{ matrix.config.desc }} - - # Begin custom: services - # End custom: services + limit-access-to-actor: true - strategy: - fail-fast: false - matrix: - config: - - {os: macos-latest, r: 'release'} - - - {os: ubuntu-20.04, r: 'release'} - - # Use older ubuntu to maximise backward compatibility - - {os: ubuntu-22.04, r: 'devel', http-user-agent: 'release'} - - {os: ubuntu-22.04, r: 'release', covr: true, desc: 'with covr'} - - {os: ubuntu-22.04, r: 'oldrel-1'} - - # Begin custom: R 3.6 - - {os: ubuntu-22.04, r: 'oldrel-2'} - # End custom: R 3.6 - - # Begin custom: R 3.5 - - {os: ubuntu-22.04, r: 'oldrel-3'} - # End custom: R 3.5 - - # Begin custom: R 3.4 - # End custom: R 3.4 - - # Begin custom: matrix elements - # End custom: matrix elements - - steps: - - uses: actions/checkout@v4 - with: - ref: ${{ needs.rcc-smoke.outputs.sha }} - - - uses: ./.github/workflows/custom/before-install - if: hashFiles('.github/workflows/custom/before-install/action.yml') != '' - - - uses: ./.github/workflows/install - with: - r-version: ${{ matrix.config.r }} - cache-version: rcc-full-1 - token: ${{ secrets.GITHUB_TOKEN }} - needs: check - - - uses: ./.github/workflows/custom/after-install - if: hashFiles('.github/workflows/custom/after-install/action.yml') != '' - - - uses: ./.github/workflows/update-snapshots + - uses: ./.github/workflows/roxygenize if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository - - uses: ./.github/workflows/check + - uses: actions/upload-artifact@v3 with: - results: ${{ runner.os }}-r${{ matrix.config.r }} + name: workdir + path: src/ # or path/to/artifact diff --git a/.github/workflows/install/action.yml b/.github/workflows/install/action.yml index 10932b885..9ca7e7c0f 100644 --- a/.github/workflows/install/action.yml +++ b/.github/workflows/install/action.yml @@ -92,10 +92,10 @@ runs: - name: Use ccache for compiling R code, and parallelize run: | mkdir -p ~/.R - echo 'CC := ccache $(CC)' >> ~/.R/Makevars - echo 'CXX := ccache $(CXX)' >> ~/.R/Makevars - echo 'CXX11 := ccache $(CXX11)' >> ~/.R/Makevars - echo 'CXX14 := ccache $(CXX14)' >> ~/.R/Makevars - echo 'CXX17 := ccache $(CXX17)' >> ~/.R/Makevars + echo 'CC := ccache debug=true $(CC)' >> ~/.R/Makevars + echo 'CXX := ccache debug=true $(CXX)' >> ~/.R/Makevars + echo 'CXX11 := ccache debug=true $(CXX11)' >> ~/.R/Makevars + echo 'CXX14 := ccache debug=true $(CXX14)' >> ~/.R/Makevars + echo 'CXX17 := ccache debug=true $(CXX17)' >> ~/.R/Makevars echo 'MAKEFLAGS = -j2' >> ~/.R/Makevars shell: bash