Skip to content

Commit 8f08914

Browse files
authored
chore: add github actions (#41)
1 parent 8248812 commit 8f08914

File tree

7 files changed

+111
-23
lines changed

7 files changed

+111
-23
lines changed

.eslintignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,13 @@
88

99
# dependencies
1010
/bower_components/
11+
/node_modules/
1112

1213
# misc
1314
/coverage/
15+
!.*
16+
.*/
17+
.eslintcache
1418

1519
# ember-try
1620
/.node_modules.ember-try/

.eslintrc.js

Lines changed: 27 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,69 @@
1+
'use strict';
2+
13
module.exports = {
24
root: true,
35
parserOptions: {
46
ecmaVersion: 2017,
5-
sourceType: "module"
7+
sourceType: 'module'
68
},
7-
plugins: ["ember", "prettier"],
8-
extends: ["eslint:recommended", "plugin:ember/recommended", "prettier"],
9+
plugins: ['ember', 'prettier'],
10+
extends: ['eslint:recommended', 'plugin:ember/recommended', 'prettier'],
911
env: {
1012
browser: true
1113
},
1214
rules: {
13-
"ember/avoid-leaking-state-in-ember-objects": 0,
14-
"prettier/prettier": ["error", { singleQuote: true }]
15+
'ember/avoid-leaking-state-in-ember-objects': 0,
16+
'prettier/prettier': ['error', { singleQuote: true }]
1517
},
1618
overrides: [
1719
// node files
1820
{
1921
files: [
20-
".template-lintrc.js",
21-
"ember-cli-build.js",
22-
"index.js",
23-
"testem.js",
24-
"blueprints/*/index.js",
25-
"config/**/*.js",
26-
"tests/dummy/config/**/*.js"
22+
'.eslintrc.js',
23+
'.prettierrc.js',
24+
'./tests/.eslintrc.js',
25+
'.template-lintrc.js',
26+
'ember-cli-build.js',
27+
'index.js',
28+
'testem.js',
29+
'blueprints/*/index.js',
30+
'config/**/*.js',
31+
'tests/dummy/config/**/*.js'
2732
],
2833
excludedFiles: [
29-
"addon/**",
30-
"addon-test-support/**",
31-
"app/**",
32-
"tests/dummy/app/**"
34+
'addon/**',
35+
'addon-test-support/**',
36+
'app/**',
37+
'tests/dummy/app/**'
3338
],
3439
parserOptions: {
35-
sourceType: "script",
40+
sourceType: 'script',
3641
ecmaVersion: 2015
3742
},
3843
env: {
3944
browser: false,
4045
node: true
4146
},
42-
plugins: ["node"],
47+
plugins: ['node'],
4348
rules: Object.assign(
4449
{},
45-
require("eslint-plugin-node").configs.recommended.rules,
50+
require('eslint-plugin-node').configs.recommended.rules,
4651
{
4752
// add your custom rules and overrides for node files here
4853
}
4954
)
5055
},
5156
{
52-
files: ["tests/unit/**/*.js"],
57+
files: ['tests/unit/**/*.js'],
5358
env: {
5459
browser: false,
5560
node: true,
5661
mocha: true
5762
},
58-
plugins: ["node"],
63+
plugins: ['node'],
5964
rules: Object.assign(
6065
{},
61-
require("eslint-plugin-node").configs.recommended.rules,
66+
require('eslint-plugin-node').configs.recommended.rules,
6267
{
6368
// add your custom rules and overrides for node files here
6469
}

.github/workflows/ci.yml

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
pull_request:
8+
9+
env:
10+
NODE_VERSION: '12.x'
11+
12+
jobs:
13+
test:
14+
name: Tests
15+
runs-on: ubuntu-latest
16+
17+
steps:
18+
- uses: actions/checkout@v2
19+
with:
20+
fetch-depth: 1
21+
22+
- uses: actions/setup-node@v2-beta
23+
with:
24+
node-version: '${{ env.NODE_VERSION }}'
25+
26+
- name: Get package manager's global cache path
27+
id: global-cache-dir-path
28+
run: echo "::set-output name=dir::$(yarn cache dir)"
29+
30+
- name: Cache package manager's global cache and node_modules
31+
id: cache-dependencies
32+
uses: actions/cache@v2
33+
with:
34+
path: |
35+
${{ steps.global-cache-dir-path.outputs.dir }}
36+
node_modules
37+
key: v1-${{ runner.os }}-${{ matrix.node-version }}-${{
38+
hashFiles('**/yarn.lock'
39+
) }}
40+
restore-keys: |
41+
v1-${{ runner.os }}-${{ matrix.node-version }}-
42+
43+
- name: Install Dependencies
44+
run: yarn install --no-lockfile
45+
if: |
46+
steps.cache-dependencies.outputs.cache-hit != 'true'
47+
48+
- name: Test
49+
run: yarn test

.prettierignore

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# unconventional js
2+
/blueprints/*/files/
3+
/vendor/
4+
5+
# compiled output
6+
/dist/
7+
/tmp/
8+
9+
# dependencies
10+
/bower_components/
11+
/node_modules/
12+
13+
# misc
14+
/coverage/
15+
!.*
16+
.eslintcache
17+
18+
# ember-try
19+
/.node_modules.ember-try/
20+
/bower.json.ember-try
21+
/package.json.ember-try

.prettierrc.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
'use strict';
2+
3+
module.exports = {
4+
singleQuote: true
5+
};

package.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,9 @@
2121
"scripts": {
2222
"build": "ember build",
2323
"start": "ember server",
24-
"test": "yarn eslint ."
24+
"lint": "eslint .",
25+
"lint:fix": "eslint . --fix",
26+
"test": "npm run lint"
2527
},
2628
"dependencies": {
2729
"ember-cli-babel": "^6.16.0",

tests/.eslintrc.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
/*eslint-env node*/
2+
13
module.exports = {
24
env: {
35
embertest: true

0 commit comments

Comments
 (0)