diff options
author | Clement Ho <ClemMakesApps@gmail.com> | 2018-03-14 18:30:21 -0500 |
---|---|---|
committer | Clement Ho <ClemMakesApps@gmail.com> | 2018-03-14 18:30:21 -0500 |
commit | 7c05073dd9d7d671e01cd428839772952ed2282a (patch) | |
tree | 7fb11d0702f658ec66040ad9b77371b68bc72e36 /scripts/frontend/frontend_script_utils.js | |
parent | abefbcbeb0e4d7a1456eae14a339b35894714b7b (diff) | |
parent | 842f42f4b2de04e2257d0486d33162319297825e (diff) | |
download | gitlab-ce-7c05073dd9d7d671e01cd428839772952ed2282a.tar.gz |
Merge branch 'master' into csslab
Diffstat (limited to 'scripts/frontend/frontend_script_utils.js')
-rw-r--r-- | scripts/frontend/frontend_script_utils.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/scripts/frontend/frontend_script_utils.js b/scripts/frontend/frontend_script_utils.js new file mode 100644 index 00000000000..2c06747255c --- /dev/null +++ b/scripts/frontend/frontend_script_utils.js @@ -0,0 +1,30 @@ +/* eslint import/no-commonjs: "off" */ +const execFileSync = require('child_process').execFileSync; + +const exec = (command, args) => { + const options = { + cwd: process.cwd(), + env: process.env, + encoding: 'utf-8', + }; + return execFileSync(command, args, options); +}; + +const execGitCmd = args => + exec('git', args) + .trim() + .toString() + .split('\n'); + +module.exports = { + getStagedFiles: fileExtensionFilter => { + const gitOptions = [ + 'diff', + '--name-only', + '--cached', + '--diff-filter=ACMRTUB', + ]; + if (fileExtensionFilter) gitOptions.push(...fileExtensionFilter); + return execGitCmd(gitOptions); + }, +}; |