diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 894e278b7..0d52410d5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,14 +24,18 @@ jobs: with: node-version: 12.x cache: yarn + - name: Install Dependencies run: yarn install --frozen-lockfile + - name: Lint Addon run: yarn lint working-directory: addon + - name: Lint Test App run: yarn lint working-directory: test-app + - name: Run Tests run: yarn test:ember working-directory: test-app @@ -47,11 +51,14 @@ jobs: with: node-version: 12.x cache: yarn + - name: Install Dependencies run: yarn install --frozen-lockfile + - name: Lint run: yarn lint working-directory: docs + - name: Run Tests run: yarn test:ember working-directory: docs @@ -67,8 +74,10 @@ jobs: with: node-version: 12.x cache: yarn + - name: Install Dependencies run: yarn install --no-lockfile + - name: Run Tests run: yarn test:ember working-directory: test-app @@ -96,8 +105,6 @@ jobs: - ember-classic - embroider-safe - embroider-optimized - - ember-modifier-2.x - - ember-modifier-3.1 steps: - uses: actions/checkout@v3 @@ -106,8 +113,44 @@ jobs: with: node-version: 12.x cache: yarn + - name: Install Dependencies run: yarn install --frozen-lockfile + - name: Run Tests run: ../node_modules/.bin/ember try:one ${{ matrix.try-scenario }} working-directory: test-app + + ember-modifier-scenarios: + name: ${{ matrix.ember-modifier-scenario }} + runs-on: ubuntu-latest + timeout-minutes: 20 + needs: 'test' + + strategy: + fail-fast: false + matrix: + ember-modifier-scenario: + - ember-modifier@2 + - ember-modifier@3.1 + - ember-modifier@3.2 + - ember-modifier@^4.0.0-beta.0 + + steps: + - uses: actions/checkout@v3 + - name: Install Node + uses: actions/setup-node@v3 + with: + node-version: 14.x # ember-modifier 4.x requires Node.js 14 + cache: yarn + + - name: Install Dependencies + run: yarn install --frozen-lockfile + + - name: Update ember-modifier version + run: yarn add -D ${{ matrix.ember-modifier-scenario }} + working-directory: addon + + - name: Run Tests + run: yarn test:ember + working-directory: test-app diff --git a/addon/package.json b/addon/package.json index 3af326542..6dc8130b3 100644 --- a/addon/package.json +++ b/addon/package.json @@ -35,7 +35,7 @@ "dependencies": { "@embroider/addon-shim": "^1.5.0", "ember-destroyable-polyfill": "^2.0.3", - "ember-modifier": "^2.1.2 || ^3.1.0", + "ember-modifier": "^2.1.2 || ^3.1.0 || ^4.0.0", "ember-modifier-manager-polyfill": "^1.2.0" }, "devDependencies": { diff --git a/test-app/config/ember-try.js b/test-app/config/ember-try.js index 2a4afccaa..ba0971bfb 100644 --- a/test-app/config/ember-try.js +++ b/test-app/config/ember-try.js @@ -5,12 +5,6 @@ const { embroiderSafe, embroiderOptimized } = require('@embroider/test-setup'); module.exports = async function () { return { - /** - * `ember-classic` scenario should not use `useWorkspaces` - * as only test-app need to get classic flags. - * Otherwise, this scenario would fail. - */ - useWorkspaces: process.argv.every((a) => !a.includes('ember-classic')), useYarn: true, scenarios: [ { @@ -125,14 +119,6 @@ module.exports = async function () { }, }, }, - { - name: 'ember-modifier-3.1', - npm: { - devDependencies: { - 'ember-modifier': '~3.1.0', - }, - }, - }, ], }; }; diff --git a/test-app/package.json b/test-app/package.json index bca104e7f..fa1b93d77 100644 --- a/test-app/package.json +++ b/test-app/package.json @@ -15,10 +15,6 @@ "doc": "doc", "test": "tests" }, - "workspaces": [ - "../addon", - "../docs" - ], "scripts": { "build": "ember build --environment=production", "lint": "npm-run-all --aggregate-output --continue-on-error --parallel \"lint:!(fix)\"", diff --git a/yarn.lock b/yarn.lock index f2e95d2e1..620634181 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5415,7 +5415,7 @@ ember-modifier-manager-polyfill@^1.2.0: ember-cli-version-checker "^2.1.2" ember-compatibility-helpers "^1.2.0" -"ember-modifier@^2.1.2 || ^3.1.0": +"ember-modifier@^2.1.2 || ^3.1.0 || ^4.0.0": version "3.2.7" resolved "https://registry.yarnpkg.com/ember-modifier/-/ember-modifier-3.2.7.tgz#f2d35b7c867cbfc549e1acd8d8903c5ecd02ea4b" integrity sha512-ezcPQhH8jUfcJQbbHji4/ZG/h0yyj1jRDknfYue/ypQS8fM8LrGcCMo0rjDZLzL1Vd11InjNs3BD7BdxFlzGoA==