Skip to content

Commit dd9d235

Browse files
authored
Merge pull request #1 from Gaurav0/fix_ci
Fix ci and make compatible with Ember 5
2 parents 14238e0 + 80c4115 commit dd9d235

File tree

53 files changed

+5075
-8175
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+5075
-8175
lines changed

.github/workflows/ci.yml

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,10 @@ jobs:
2222
test-all-packages:
2323
name: Ember Tests
2424
runs-on: ${{ matrix.os }}
25+
timeout-minutes: 30
2526

2627
strategy:
28+
fail-fast: false
2729
matrix:
2830
node-version: [16.x, 14.x]
2931
os: [ubuntu-latest, windows-latest]
@@ -51,8 +53,10 @@ jobs:
5153
integration-tests:
5254
name: Integration Tests
5355
runs-on: ${{ matrix.os }}
56+
timeout-minutes: 30
5457

5558
strategy:
59+
fail-fast: false
5660
matrix:
5761
node-version: [16.x, 14.x]
5862
os: [ubuntu-latest, windows-latest]
@@ -73,8 +77,10 @@ jobs:
7377
test-packages:
7478
name: Test Packages
7579
runs-on: ${{ matrix.os }}
80+
timeout-minutes: 30
7681

7782
strategy:
83+
fail-fast: false
7884
matrix:
7985
node-version: [16.x, 14.x]
8086
os: [ubuntu-latest, windows-latest]
@@ -99,6 +105,7 @@ jobs:
99105
test-legacy-mocha:
100106
name: Legacy Mocha Tests - ${{ matrix.node-version }}
101107
runs-on: ubuntu-latest
108+
timeout-minutes: 30
102109

103110
strategy:
104111
fail-fast: false
@@ -109,20 +116,23 @@ jobs:
109116
- name: Checkout Code
110117
uses: actions/checkout@v2
111118
- name: Use Node.js ${{ matrix.node-version }}
112-
uses: volta-cli/action@v1
119+
uses: volta-cli/action@v4
113120
with:
114121
node-version: ${{ matrix.node-version }}
115122
- name: Yarn Install
116123
run: |
117124
yarn install --ignore-engines --frozen-lockfile
125+
- name: Precook node_modules
126+
run: |
127+
yarn workspace ember-cli-fastboot pretest:precook
118128
- name: Run Mocha Tests
119129
run: |
120130
yarn workspace ember-cli-fastboot test:mocha
121131
122132
try-scenarios:
123-
name: "ember-try for ember-cli-fastboot: ${{ matrix.ember-try-scenario }}"
133+
name: "${{ matrix.ember-try-scenario }} Scenario for ember-cli-fastboot"
124134
runs-on: ubuntu-latest
125-
timeout-minutes: 7
135+
timeout-minutes: 30
126136

127137
strategy:
128138
fail-fast: false
@@ -133,6 +143,8 @@ jobs:
133143
- ember-lts-3.24
134144
- ember-lts-3.28
135145
- ember-lts-4.4
146+
- ember-lts-4.8
147+
- ember-lts-4.12
136148
- ember-release
137149
- ember-beta
138150
- ember-canary

package.json

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,15 @@
55
"type": "git",
66
"url": "git@github.com:ember-fastboot/ember-cli-fastboot.git"
77
},
8-
"workspaces": [
9-
"packages/*",
10-
"test-packages/*"
11-
],
8+
"workspaces": {
9+
"packages": [
10+
"packages/*",
11+
"test-packages/*"
12+
],
13+
"nohoist": [
14+
"**/ember-cli-addon-tests"
15+
]
16+
},
1217
"scripts": {
1318
"test": "npm-run-all test:*",
1419
"test:ember-cli-fastboot": "yarn workspace ember-cli-fastboot test:ember",
@@ -24,6 +29,9 @@
2429
"release-it-lerna-changelog": "^3.1.0",
2530
"release-it-yarn-workspaces": "^2.0.0"
2631
},
32+
"resolutions": {
33+
"fastboot": "4.1.1"
34+
},
2735
"publishConfig": {
2836
"registry": "https://registry.npmjs.org"
2937
},

packages/ember-cli-fastboot/.eslintignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
# misc
1414
/coverage/
1515
!.*
16+
.*/
1617
.eslintcache
1718

1819
# ember-try

packages/ember-cli-fastboot/.eslintrc.js

Lines changed: 14 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -28,23 +28,15 @@ module.exports = {
2828
// node files
2929
{
3030
files: [
31-
'.eslintrc.js',
32-
'.prettierrc.js',
33-
'.template-lintrc.js',
34-
'ember-cli-build.js',
35-
'index.js',
36-
'testem.js',
37-
'blueprints/*/index.js',
38-
'config/**/*.js',
39-
'tests/dummy/config/**/*.js',
40-
'lib/**/*.js'
41-
],
42-
excludedFiles: [
43-
'app/**',
44-
'addon/**',
45-
'addon-test-support/**',
46-
'app/**',
47-
'tests/dummy/app/**',
31+
'./.eslintrc.js',
32+
'./.prettierrc.js',
33+
'./.template-lintrc.js',
34+
'./ember-cli-build.js',
35+
'./index.js',
36+
'./testem.js',
37+
'./blueprints/*/index.js',
38+
'./config/**/*.js',
39+
'./tests/dummy/config/**/*.js',
4840
],
4941
parserOptions: {
5042
sourceType: 'script',
@@ -56,5 +48,10 @@ module.exports = {
5648
plugins: ['node'],
5749
extends: ['plugin:node/recommended'],
5850
},
51+
{
52+
// Test files:
53+
files: ['tests/**/*-test.{js,ts}'],
54+
extends: ['plugin:qunit/recommended'],
55+
},
5956
],
6057
};

packages/ember-cli-fastboot/.npmignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
/testem.js
2828
/test/
2929
/tests/
30+
/yarn-error.log
3031
/yarn.lock
3132
.gitkeep
3233

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
'use strict';
22

33
module.exports = {
4-
extends: 'octane',
4+
extends: 'recommended',
55
};

packages/ember-cli-fastboot/config/ember-try.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,22 @@ module.exports = async function () {
5151
},
5252
},
5353
},
54+
{
55+
name: 'ember-lts-4.8',
56+
npm: {
57+
devDependencies: {
58+
'ember-source': '~4.8.0',
59+
},
60+
},
61+
},
62+
{
63+
name: 'ember-lts-4.12',
64+
npm: {
65+
devDependencies: {
66+
'ember-source': '~4.12.0',
67+
},
68+
},
69+
},
5470
{
5571
name: 'ember-release',
5672
npm: {
@@ -116,6 +132,15 @@ module.exports = async function () {
116132
},
117133
},
118134
},
135+
{
136+
name: 'ember-4.12-no-deprecations',
137+
npm: {
138+
devDependencies: {
139+
'ember-source': '~4.12.0',
140+
'ember-deprecation-error': '*',
141+
},
142+
},
143+
},
119144
{
120145
name: 'ember-release-no-deprecations',
121146
npm: {

packages/ember-cli-fastboot/ember-cli-build.js

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,11 @@ module.exports = function (defaults) {
1515
*/
1616

1717
const { maybeEmbroider } = require('@embroider/test-setup');
18-
return maybeEmbroider(app);
18+
return maybeEmbroider(app, {
19+
skipBabel: [
20+
{
21+
package: 'qunit',
22+
},
23+
],
24+
});
1925
};
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
function initialize(instance) {
2+
let { request } = instance.lookup('service:fastboot');
3+
if (fetch) {
4+
fetch.__fastbootRequest = request;
5+
}
6+
}
7+
8+
export default {
9+
initialize,
10+
};

packages/ember-cli-fastboot/fix-node-modules.mjs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ const __dirname = path.dirname(fileURLToPath(import.meta.url));
1212

1313
const packagesDir = path.resolve(__dirname, '../../packages');
1414
const nodeModulesDir = path.resolve(__dirname, 'node_modules');
15+
const precookedDir = path.resolve(__dirname, 'tmp', 'precooked_node_modules');
1516

1617
// eslint-disable-next-line no-undef
1718
const shouldRestore = process.argv[2];
@@ -29,18 +30,27 @@ Options:
2930
function run(shouldRestore) {
3031
['fastboot', 'fastboot-express-middleware'].forEach((packageName) => {
3132
const nodeModulesPackageDir = path.join(nodeModulesDir, packageName);
33+
const precookedPackageDir = path.join(precookedDir, packageName);
3234
const workspacesPackageDir = path.resolve(packagesDir, packageName);
3335
if (fs.existsSync(nodeModulesPackageDir)) {
3436
console.log(chalk.blue(`remove ${nodeModulesPackageDir}`));
3537
fs.removeSync(nodeModulesPackageDir);
3638
}
39+
if (fs.existsSync(precookedPackageDir)) {
40+
console.log(chalk.blue(`remove ${precookedPackageDir}`));
41+
fs.removeSync(precookedPackageDir);
42+
}
3743
if (!shouldRestore) {
3844
console.log(
3945
chalk.green(
4046
`symlink ${nodeModulesPackageDir} -> ${workspacesPackageDir}`
4147
)
4248
);
4349
fs.symlinkSync(workspacesPackageDir, nodeModulesPackageDir, 'dir');
50+
console.log(
51+
chalk.green(`symlink ${precookedPackageDir} -> ${workspacesPackageDir}`)
52+
);
53+
fs.symlinkSync(workspacesPackageDir, precookedPackageDir, 'dir');
4454
}
4555
});
4656
}

0 commit comments

Comments
 (0)