chore(deps): update dependency npm to v10 #1771
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
"on": | |
pull_request: null | |
push: | |
branches: | |
- main | |
schedule: | |
- cron: "0 3 * * 0 " | |
env: | |
CI: true | |
dist: ember-deep-tracked/dist | |
jobs: | |
install_dependencies: | |
name: Install Dependencies | |
timeout-minutes: 5 | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: volta-cli/action@v3 | |
- name: Cache pnpm modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.pnpm-store | |
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} | |
restore-keys: ${{ runner.os }}- | |
- uses: pnpm/[email protected] | |
with: | |
version: 7.1.2 | |
- name: Install Dependencies | |
run: pnpm install | |
eslint: | |
name: ESLint | |
needs: | |
- install_dependencies | |
timeout-minutes: 5 | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: true | |
matrix: | |
path: | |
- ./ember-deep-tracked | |
- ./test-app | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: volta-cli/action@v3 | |
- name: Cache pnpm modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.pnpm-store | |
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} | |
restore-keys: ${{ runner.os }}- | |
- uses: pnpm/[email protected] | |
with: | |
version: 7.1.2 | |
- name: Install Dependencies | |
run: pnpm install | |
- name: ESLint | |
run: cd ${{ matrix.path }} && pnpm run lint:js | |
commits: | |
name: Commit Messages | |
timeout-minutes: 5 | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- uses: volta-cli/action@v3 | |
- uses: wagoid/[email protected] | |
build: | |
name: Build Tests | |
needs: | |
- install_dependencies | |
timeout-minutes: 5 | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: volta-cli/action@v3 | |
- name: Cache pnpm modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.pnpm-store | |
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} | |
restore-keys: ${{ runner.os }}- | |
- uses: pnpm/[email protected] | |
with: | |
version: 7.1.2 | |
- name: Install Dependencies | |
run: pnpm install | |
- name: Build and Assert Output | |
run: |- | |
echo 'target: ember-deep-tracked/dist | |
setup: | |
run: pnpm build:js | |
cwd: ./ember-deep-tracked | |
expect: | | |
index.js | |
index.js.map | |
index.d.ts | |
index.d.ts.map | |
' >> assert-contents.config.yml | |
npx assert-folder-contents | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: dist | |
path: ${{ env.dist }} | |
tests: | |
name: Default Tests | |
timeout-minutes: 5 | |
runs-on: ubuntu-latest | |
needs: | |
- build | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: volta-cli/action@v3 | |
- name: Cache pnpm modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.pnpm-store | |
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} | |
restore-keys: ${{ runner.os }}- | |
- uses: pnpm/[email protected] | |
with: | |
version: 7.1.2 | |
- name: Install Dependencies | |
run: pnpm install | |
- name: Download built package from cache | |
uses: actions/download-artifact@v3 | |
with: | |
name: dist | |
path: ${{ env.dist }} | |
- run: pnpm --filter test-app run test:ember | |
floating-deps-tests: | |
name: Floating Deps Test | |
timeout-minutes: 5 | |
runs-on: ubuntu-latest | |
needs: | |
- build | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: volta-cli/action@v3 | |
- name: Cache pnpm modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.pnpm-store | |
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} | |
restore-keys: ${{ runner.os }}- | |
- uses: pnpm/[email protected] | |
with: | |
version: 7.1.2 | |
- name: Install Dependencies (without lockfile) | |
run: rm pnpm-lock.yaml && pnpm install | |
- name: Download built package from cache | |
uses: actions/download-artifact@v3 | |
with: | |
name: dist | |
path: ${{ env.dist }} | |
- run: pnpm --filter test-app run test:ember | |
try-scenarios: | |
name: ${{ matrix.ember-try-scenario }} | |
timeout-minutes: 10 | |
runs-on: ubuntu-latest | |
needs: | |
- tests | |
strategy: | |
fail-fast: true | |
matrix: | |
ember-try-scenario: | |
- ember-3.25 | |
- ember-lts-3.28 | |
- ember-lts-4.4 | |
- ember-release | |
- ember-beta | |
- ember-canary | |
- embroider-safe | |
- embroider-optimized | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: volta-cli/action@v3 | |
- name: Cache pnpm modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.pnpm-store | |
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} | |
restore-keys: ${{ runner.os }}- | |
- uses: pnpm/[email protected] | |
with: | |
version: 7.1.2 | |
- name: Install Dependencies (without lockfile) | |
run: rm pnpm-lock.yaml && pnpm install | |
- name: Download built package from cache | |
uses: actions/download-artifact@v3 | |
with: | |
name: dist | |
path: ${{ env.dist }} | |
- name: test | |
working-directory: ./test-app | |
run: >- | |
node_modules/.bin/ember try:one ${{ matrix.ember-try-scenario }} | |
--skip-cleanup | |
typescript-compatibility: | |
name: ${{ matrix.typescript-scenario }} | |
timeout-minutes: 5 | |
runs-on: ubuntu-latest | |
continue-on-error: true | |
needs: | |
- build | |
strategy: | |
fail-fast: true | |
matrix: | |
typescript-scenario: | |
- [email protected] | |
- [email protected] | |
- [email protected] | |
- typescript@next | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: volta-cli/action@v3 | |
- name: Cache pnpm modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.pnpm-store | |
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} | |
restore-keys: ${{ runner.os }}- | |
- uses: pnpm/[email protected] | |
with: | |
version: 7.1.2 | |
- name: Install Dependencies (without frozen lockfile) | |
run: pnpm install --no-frozen-lockfile | |
- name: Download built package from cache | |
uses: actions/download-artifact@v3 | |
with: | |
name: dist | |
path: ${{ env.dist }} | |
- name: Update TS Version | |
run: pnpm add --save-dev ${{ matrix.typescript-scenario }} | |
working-directory: ./test-app | |
- name: Type checking | |
run: >- | |
pnpm --filter test-app exec tsc -v; pnpm --filter test-app exec tsc | |
--build | |
release: | |
name: Release | |
timeout-minutes: 5 | |
runs-on: ubuntu-latest | |
if: github.ref == 'refs/heads/main' | |
needs: | |
- tests | |
- typescript-compatibility | |
- try-scenarios | |
- floating-deps-tests | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
persist-credentials: false | |
- uses: volta-cli/action@v3 | |
- name: Cache pnpm modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.pnpm-store | |
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} | |
restore-keys: ${{ runner.os }}- | |
- uses: pnpm/[email protected] | |
with: | |
version: 7.1.2 | |
- name: Install Dependencies | |
run: pnpm install | |
- name: Download built package from cache | |
uses: actions/download-artifact@v3 | |
with: | |
name: dist | |
path: ${{ env.dist }} | |
- name: Release | |
run: ./node_modules/.bin/semantic-release | |
working-directory: ./ember-deep-tracked | |
env: | |
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |