Skip to content

Commit

Permalink
CHG: ci: update & merge ci config
Browse files Browse the repository at this point in the history
  • Loading branch information
dr-js committed Dec 26, 2023
1 parent 86cab30 commit db7c110
Show file tree
Hide file tree
Showing 4 changed files with 50 additions and 58 deletions.
12 changes: 10 additions & 2 deletions .github/ci-patch.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,17 @@ const { runInfoPatchCombo } = require('@dr-js/dev/library/ci.js')
runKit(async (kit) => {
runInfoPatchCombo(kit)

kit.padLog('Patch npm cache path') // set cache path to `~/.npm/` for all platform (only win32 for now)
kit.RUN_SUDO_NPM([ 'config', '--global', 'set', 'cache', kit.fromHome('.npm/') ])
// kit.padLog('Patch npm cache path') // set cache path to `~/.npm/` for all platform (only win32 for now)
// kit.RUN_SUDO_NPM([ 'config', '--global', 'set', 'cache', kit.fromHome('.npm/') ])

// kit.padLog('Patch install "@dr-js/core" & "@dr-js/dev" & "@min-pack/npm" globally')
// kit.RUN_SUDO_NPM('install --no-fund --no-audit --global @dr-js/core@0.5 @dr-js/dev@0.5 @min-pack/npm@0.1')

if (parseInt(process.versions.node) <= 14) { // TODO: wait for npm@7 adoption and try npm install + cache for faster puppeteer install
kit.RUN('npm i -g @min-pack/npm@0.1')
kit.RUN('npm8 ci --omit=optional')
return
}

kit.RUN('npm ci --omit=optional')
}, { title: 'ci-patch' })
40 changes: 40 additions & 0 deletions .github/workflows/ci-test-2312.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: "ci-test-2312"
on: { push: { branches: [ "**" ], tags: [ "v*" ] } } # use `v0.0.0` tag pattern # https://docs.github.com/en/free-pro-team@latest/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestbranchestags
env: { "IS_CI": true }
jobs:
"test-base": # job id
strategy:
matrix: { OS: [ "ubuntu-latest", "windows-latest", "macos-latest" ], NODE: [ "20.x" ] } # LTS version
fail-fast: false # allow all test to run to the end
runs-on: "${{ matrix.OS }}"
timeout-minutes: 15
steps:
- { uses: "actions/checkout@v4" } # https://github.com/actions/checkout
- { uses: "actions/setup-node@v4", with: { node-version: "${{ matrix.NODE }}" } } # https://github.com/actions/setup-node
- run: npx @dr-js/dev@0.5 -eI .github/ci-patch.js
- run: npm test

"test-extra": # job id
if: "github.ref_type == 'tag'" # only run on git tag push
strategy:
matrix: { OS: [ "ubuntu-latest", "windows-latest", "macos-latest" ], NODE: [ "21.x" ], include: [ { OS: "ubuntu-latest", NODE: "14.x" } ] } # latest version + min-support version
fail-fast: false # allow all test to run to the end
runs-on: "${{ matrix.OS }}"
timeout-minutes: 15
steps:
- { uses: "actions/checkout@v4" } # https://github.com/actions/checkout
- { uses: "actions/setup-node@v4", with: { node-version: "${{ matrix.NODE }}" } } # https://github.com/actions/setup-node
- run: npm i -g @dr-js/core@0.5 @dr-js/dev@0.5 && dr-dev -eI .github/ci-patch.js # TODO: wait for npm fix # - run: npx @dr-js/dev@0.5 -eI .github/ci-patch.js
- run: npm test

"publish-tag": # job id
if: "github.ref_type == 'tag'" # only run on git tag push
needs: [ "test-base", "test-extra" ] # https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idneeds
runs-on: "ubuntu-latest"
timeout-minutes: 15
steps:
- { uses: "actions/checkout@v4" } # https://github.com/actions/checkout
- { uses: "actions/setup-node@v4", with: { node-version: "20.x" } } # LTS version # https://github.com/actions/setup-node
- run: npx @dr-js/dev@0.5 -eI .github/ci-patch.js
- run: echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_AUTH_TOKEN_DR_JS }}" > .npmrc
- run: npm run script-publish
21 changes: 0 additions & 21 deletions .github/workflows/ci-test-push.yml

This file was deleted.

35 changes: 0 additions & 35 deletions .github/workflows/ci-test-tag.yml

This file was deleted.

0 comments on commit db7c110

Please sign in to comment.