Skip to content

Commit 24e57d2

Browse files
committed
lint
1 parent e980980 commit 24e57d2

File tree

9 files changed

+635
-70
lines changed

9 files changed

+635
-70
lines changed

.eslintrc.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
module.exports = {
2+
"extends": "google",
3+
"parserOptions": {
4+
"ecmaVersion": 2017,
5+
}
6+
};

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,4 +32,4 @@ Once you build it, link to `headless_shell.tar.gz` in `chrome` dir.
3232

3333
## Article
3434

35-
[PuppeteerでHeadless Chromeを動かすコードをLambdaで実行する - sambaiz-net](https://www.sambaiz.net/article/132/)
35+
[Lambda上でPuppeteer/Headless Chromeを動かすBoilerplateを作った - sambaiz-net](https://www.sambaiz.net/article/132/)

package-lock.json

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
{
22
"scripts": {
3-
"package": "npm run package-ready && cp chrome/headless_shell.tar.gz dist && cd dist && zip -rq ../package.zip .",
4-
"package-nochrome": "npm run package-ready && zip -rq ../package.zip .",
5-
"package-ready": "npm run babel && cp -r package.json dist && cd dist && PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 npm install --production",
3+
"package": "npm run package-prepare && cp chrome/headless_shell.tar.gz dist && cd dist && zip -rq ../package.zip .",
4+
"package-nochrome": "npm run package-prepare && zip -rq ../package.zip .",
5+
"package-prepare": "npm run lint && npm run babel && cp -r package.json dist && cd dist && PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 npm install --production",
66
"babel": "rm -rf dist && mkdir dist && ./node_modules/.bin/babel src --out-dir dist",
7-
"local": "npm run babel && cp -r node_modules dist && node dist/local.js"
7+
"local": "npm run babel && cp -r node_modules dist && node dist/local.js",
8+
"lint": "./node_modules/.bin/eslint src"
89
},
910
"dependencies": {
1011
"puppeteer": "^0.10.2",
@@ -13,6 +14,8 @@
1314
"devDependencies": {
1415
"aws-sdk": "^2.111.0",
1516
"babel-cli": "^6.26.0",
16-
"babel-preset-env": "^1.6.0"
17+
"babel-preset-env": "^1.6.0",
18+
"eslint": "^4.6.1",
19+
"eslint-config-google": "^0.9.1"
1720
}
1821
}

src/config.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
exports.launchOptionForLambda = [
2-
// error when launch(); No usable sandbox! Update your kernel
3-
'--no-sandbox',
4-
// error when launch(); Failed to load libosmesa.so
5-
'--disable-gpu',
6-
// freeze when newPage()
7-
'--single-process'
8-
];
2+
// error when launch(); No usable sandbox! Update your kernel
3+
'--no-sandbox',
4+
// error when launch(); Failed to load libosmesa.so
5+
'--disable-gpu',
6+
// freeze when newPage()
7+
'--single-process',
8+
];

src/index.js

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,32 @@
1-
const puppeteer = require('puppeteer'),
2-
config = require('./config'),
3-
util = require('./util');
1+
const puppeteer = require('puppeteer');
2+
const config = require('./config');
3+
const util = require('./util');
44

55
exports.handler = async (event, context, callback) => {
66
exports.run({
77
headless: true,
8-
chromePath: await util.setupChrome()
8+
chromePath: await util.setupChrome(),
99
}).then(
10-
(result) => { callback(null, result); }
10+
(result) => callback(null, result)
1111
).catch(
12-
(err) => { callback(err); }
13-
)
14-
}
12+
(err) => callback(err)
13+
);
14+
};
1515

1616
exports.run = async (option) => {
17-
1817
const browser = await puppeteer.launch({
1918
headless: option.headless,
2019
executablePath: option.chromePath,
2120
slowMo: option.slowMoMs,
2221
args: config.launchOptionForLambda,
2322
dumpio: !!util.DEBUG,
24-
});
23+
});
24+
25+
util.debugLog(`Chrome launched, version ${await browser.version()}`);
2526

26-
util.debugLog(`Chrome launched, version ${await browser.version()}`)
27-
2827
const page = await browser.newPage();
2928
await page.goto('https://www.google.co.jp');
3029
browser.close();
3130

32-
return 'done'
33-
}
31+
return 'done';
32+
};

src/local.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ index.run({
55
slowMoMs: 250,
66
// use chrome installed by puppeteer
77
}).then(
8-
(result) => { console.log(result); }
8+
(result) => console.log(result)
99
).catch(
10-
(err) => { console.error(err); }
11-
);
10+
(err) => console.error(err)
11+
);

src/util.js

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
const CHROME_BUCKET = process.env.CHORME_BUCKET,
2-
CHROME_KEY = process.env.CHROME_KEY || 'headless_shell.tar.gz',
3-
aws = require('aws-sdk'),
4-
s3 = new aws.S3({ apiVersion: '2006-03-01' }),
5-
fs = require('fs'),
6-
tar = require('tar'),
7-
path = require('path'),
1+
const CHROME_BUCKET = process.env.CHORME_BUCKET;
2+
const CHROME_KEY = process.env.CHROME_KEY || 'headless_shell.tar.gz';
3+
const aws = require('aws-sdk');
4+
const s3 = new aws.S3({apiVersion: '2006-03-01'});
5+
const fs = require('fs');
6+
const tar = require('tar');
7+
const path = require('path');
88

9-
localChromePath = path.join('headless_shell.tar.gz'),
10-
setupChromePath = path.join(path.sep, 'tmp');
9+
const localChromePath = path.join('headless_shell.tar.gz');
10+
const setupChromePath = path.join(path.sep, 'tmp');
1111

1212
exports.DEBUG = process.env.DEBUG;
1313

@@ -17,13 +17,13 @@ exports.setupChrome = async () => {
1717
exports.debugLog('setup local chrome');
1818
await setupLocalChrome();
1919
} else {
20-
exports.debugLog('setup s3 chrome')
20+
exports.debugLog('setup s3 chrome');
2121
await setupS3Chrome();
2222
}
2323
exports.debugLog('setup done');
2424
}
2525
return executablePath;
26-
}
26+
};
2727

2828
const executablePath = path.join(
2929
setupChromePath,
@@ -34,45 +34,45 @@ const existsLocalChrome = () => {
3434
return new Promise((resolve, reject) => {
3535
fs.exists(localChromePath, (exists) => {
3636
resolve(exists);
37-
})
37+
});
3838
});
39-
}
39+
};
4040

4141
const existsExecutableChrome = () => {
4242
return new Promise((resolve, reject) => {
4343
fs.exists(executablePath, (exists) => {
4444
resolve(exists);
45-
})
45+
});
4646
});
47-
}
47+
};
4848

4949
const setupLocalChrome = () => {
5050
return new Promise((resolve, reject) => {
5151
console.log(localChromePath);
5252
fs.createReadStream(localChromePath)
53-
.on('error', err => { reject(err); })
53+
.on('error', (err) => reject(err))
5454
.pipe(tar.x({
55-
C: setupChromePath
55+
C: setupChromePath,
5656
}))
57-
.on('error', err => { reject(err); })
58-
.on('end', () => { resolve(); });
57+
.on('error', (err) => reject(err))
58+
.on('end', () => resolve());
5959
});
60-
}
61-
60+
};
61+
6262
const setupS3Chrome = () => {
6363
return new Promise((resolve, reject) => {
6464
const params = {Bucket: CHROME_BUCKET, Key: CHROME_KEY};
6565
s3.getObject(params)
6666
.createReadStream()
67-
.on('error', err => { reject(err); })
67+
.on('error', (err) => reject(err))
6868
.pipe(tar.x({
69-
C: setupChromePath
69+
C: setupChromePath,
7070
}))
71-
.on('error', err => { reject(err); })
72-
.on('end', () => { resolve(); });
71+
.on('error', (err) => reject(err))
72+
.on('end', () => resolve());
7373
});
74-
}
74+
};
7575

7676
exports.debugLog = (log) => {
77-
if(exports.DEBUG) console.log(log)
78-
}
77+
if (exports.DEBUG) console.log(log);
78+
};

0 commit comments

Comments
 (0)