Skip to content

Fix the mismatch between specifier and resource identifier in attenuators policy AND allow skiping powerless packages #6647

Fix the mismatch between specifier and resource identifier in attenuators policy AND allow skiping powerless packages

Fix the mismatch between specifier and resource identifier in attenuators policy AND allow skiping powerless packages #6647

Workflow file for this run

name: CI
# run CI on pushes to master, and on all PRs (even the ones that target other
# branches)
on:
push:
branches: [master]
pull_request:
# This file has necessary redundancies since of github actions aren't supporting:
# - the definition of macros, which could be called from each job.
# - reporting the status of steps in the PR (only jobs and workflows are reported).
# Steps between "begin" and "end" should be the same in every job.
jobs:
lint:
name: lint
# begin macro
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: false
matrix:
node-version: [16.x]
platform: [ubuntu-latest]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Echo node version
run: node --version
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT
- name: Cache npm modules
uses: actions/cache@v3
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
run: yarn --frozen-lockfile
# end macro
- name: Run yarn build
run: yarn build
- name: Run yarn lint
run: yarn lint
test:
name: test
# begin macro
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: false
matrix:
node-version: [16.x]
platform: [ubuntu-latest, windows-latest]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Echo node version
run: node --version
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT
shell: bash
- name: Cache npm modules
uses: actions/cache@v3
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
run: yarn --frozen-lockfile
# end macro
- name: Run yarn build
run: yarn build
- name: Run yarn test
run: yarn test
test-async-hooks:
name: test-async-hooks
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: false
matrix:
node-version:
- '16.1' # last version before some significant promise hooks changes
- '16.5' # last version before unconditional promise fast-path
- '16.6' # first version after unconditional promise fast-path
- '18' # Active LTS
# '20.6' not viable due to https://github.com/nodejs/node/issues/49497
# '20.3' to '20.6' not viable due to https://github.com/nodejs/node/pull/49211
- '20.7' # Future LTS
platform:
- ubuntu-latest
# begin macro
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Echo node version
run: node --version
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT
- name: Cache npm modules
uses: actions/cache@v3
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
# end macro
- name: Install dependencies
run: yarn --frozen-lockfile --ignore-engines
- name: Run yarn build
run: yarn build
- name: Run yarn test (@endo/init)
working-directory: packages/init
run: yarn test
cover:
name: cover
# begin macro
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: false
matrix:
node-version: [16.x]
platform: [ubuntu-latest]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Echo node version
run: node --version
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT
- name: Cache npm modules
uses: actions/cache@v3
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
run: yarn --frozen-lockfile
# end macro
- name: Run yarn build
run: yarn build
- name: Run yarn cover
run: yarn cover
test262:
name: test262
# begin macro
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: false
matrix:
node-version: [16.x]
platform: [ubuntu-latest]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Echo node version
run: node --version
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT
- name: Cache npm modules
uses: actions/cache@v3
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
run: yarn --frozen-lockfile
# end macro
- name: Run yarn build
run: yarn build
- name: Run yarn test262
run: exit 0 # TODO remove test262 from required tests for CI
integration-test:
name: integration-test
# begin macro
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: false
matrix:
node-version: [16.x]
platform: [ubuntu-latest]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Echo node version
run: node --version
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT
- name: Cache npm modules
uses: actions/cache@v3
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
run: yarn --frozen-lockfile
# end macro
- name: Run build-pre-release-test
run: ./scripts/build-pre-release-test.sh
- name: Run yarn test:pre-release
run: cd packages/ses-integration-test && yarn test:pre-release
platform-compatibility-test:
name: platform-compatibility-test
# begin macro
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: false
matrix:
node-version: [16.x]
platform: [ubuntu-latest]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Echo node version
run: node --version
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT
- name: Cache npm modules
uses: actions/cache@v3
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
run: yarn --frozen-lockfile
# end macro
- name: 'build'
run: yarn run build
- name: 'switch to node v12'
uses: actions/setup-node@v3
with:
node-version: '12.x'
- name: Echo node version
run: node --version
- name: Run yarn test:platform-compatibility
run: cd packages/ses && yarn test:platform-compatibility
viable-release:
name: viable-release
# begin macro
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: false
matrix:
node-version: [16.x]
platform: [ubuntu-latest]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Echo node version
run: node --version
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT
- name: Cache npm modules
uses: actions/cache@v3
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
run: yarn --frozen-lockfile
# end macro
- name: build
run: yarn run build
- name: pack
# Concurrency is 1 to avoid bizarre cross-package contamination.
run: yarn run lerna exec --concurrency=1 yarn pack