diff options
| -rw-r--r-- | gulpfile.babel.js | 45 | ||||
| -rw-r--r-- | package.json | 1 | ||||
| -rw-r--r-- | src/cms/config.yml (renamed from site/static/admin/config.yml) | 2 | ||||
| -rw-r--r-- | src/cms/index.html (renamed from site/static/admin/index.html) | 0 | ||||
| -rw-r--r-- | yarn.lock | 57 |
5 files changed, 74 insertions, 31 deletions
diff --git a/gulpfile.babel.js b/gulpfile.babel.js index f297fdb..3d214b8 100644 --- a/gulpfile.babel.js +++ b/gulpfile.babel.js @@ -10,8 +10,8 @@ import webpackConfig from "./webpack.conf"; import svgstore from "gulp-svgstore"; import svgmin from "gulp-svgmin"; import inject from "gulp-inject"; +import replace from "gulp-replace"; import cssnano from "cssnano"; -import uncss from "postcss-uncss"; const browserSync = BrowserSync.create(); const hugoBin = `./bin/hugo.${process.platform === "windows" ? "exe" : process.platform}`; @@ -20,7 +20,19 @@ const defaultArgs = ["-d", "../dist", "-s", "site"]; gulp.task("hugo", (cb) => buildSite(cb)); gulp.task("hugo-preview", (cb) => buildSite(cb, ["--buildDrafts", "--buildFuture"])); -gulp.task("build", ["css", "js", "hugo"]); +gulp.task("cms", () => { + const match = process.env.REPOSITORY_URL ? process.env.REPOSITORY_URL : cp.execSync("git remote -v", {encoding: "utf-8"}); + let repo = null; + match.replace(/github.com:(.+?)\.git/, (_, m) => { + repo = m; + }); + gulp.src("./src/cms/*") + .pipe(replace("<% GITHUB_REPOSITORY %>", repo)) + .pipe(gulp.dest("./dist/admin")) + .pipe(browserSync.stream()); +}); + +gulp.task("build", ["css", "js", "hugo", "cms"]); gulp.task("build-preview", ["css", "js", "hugo-preview"]); gulp.task("css", () => ( @@ -29,7 +41,6 @@ gulp.task("css", () => ( cssImport({from: "./src/css/main.css"}), cssnext(), cssnano(), - // uncss({ html: ['./site/**/*.html']}) ])) .pipe(gulp.dest("./dist/css")) .pipe(browserSync.stream()) @@ -49,24 +60,23 @@ gulp.task("js", (cb) => { }); }); -gulp.task('svg', () => { - const svgs = gulp - .src('site/static/img/icons/*.svg') - .pipe(svgmin()) - .pipe(svgstore({ inlineSvg: true })); +gulp.task("svg", () => { + const svgs = gulp + .src("site/static/img/icons/*.svg") + .pipe(svgmin()) + .pipe(svgstore({inlineSvg: true})); - function fileContents(filePath, file) { - return file.contents.toString(); - } + function fileContents(filePath, file) { + return file.contents.toString(); + } - return gulp - .src('site/layouts/partials/svg.html') - .pipe(inject(svgs, { transform: fileContents })) - .pipe(gulp.dest('site/layouts/partials/')); - browserSync.reload(); + return gulp + .src("site/layouts/partials/svg.html") + .pipe(inject(svgs, {transform: fileContents})) + .pipe(gulp.dest("site/layouts/partials/")); }); -gulp.task("server", ["hugo", "css", "js", "svg"], () => { +gulp.task("server", ["hugo", "css", "js", "svg", "cms"], () => { browserSync.init({ server: { baseDir: "./dist" @@ -74,6 +84,7 @@ gulp.task("server", ["hugo", "css", "js", "svg"], () => { }); gulp.watch("./src/js/**/*.js", ["js"]); gulp.watch("./src/css/**/*.css", ["css"]); + gulp.watch("./src/cms/*", ["cms"]); gulp.watch("./site/static/img/icons/*.svg", ["svg"]); gulp.watch("./site/**/*", ["hugo"]); }); diff --git a/package.json b/package.json index 9deda57..3fb4e88 100644 --- a/package.json +++ b/package.json @@ -34,6 +34,7 @@ "gulp": "^3.9.1", "gulp-babel": "^6.1.2", "gulp-postcss": "^6.1.1", + "gulp-replace": "^0.5.4", "gulp-util": "^3.0.7", "imports-loader": "^0.6.5", "netlify-cms": "^0.3.9", diff --git a/site/static/admin/config.yml b/src/cms/config.yml index 9ecf53b..3b209aa 100644 --- a/site/static/admin/config.yml +++ b/src/cms/config.yml @@ -1,6 +1,6 @@ backend: name: github - repo: netlify-templates/kaldi-hugo-cms-template # Path to your Github repository + repo: <% GITHUB_REPOSITORY %> # Gulp will replace this with your GitHub repository branch: master # Branch to update (master by default) media_folder: "dist/img" # Folder where user uploaded files should go diff --git a/site/static/admin/index.html b/src/cms/index.html index baa6e33..baa6e33 100644 --- a/site/static/admin/index.html +++ b/src/cms/index.html @@ -1158,6 +1158,10 @@ binary-extensions@^1.0.0: version "1.8.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.8.0.tgz#48ec8d16df4377eae5fa5884682480af4d95c774" +binaryextensions@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/binaryextensions/-/binaryextensions-1.0.1.tgz#1e637488b35b58bda5f4774bf96a5212a8c90755" + bl@^1.0.0, bl@~1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/bl/-/bl-1.0.3.tgz#fc5421a28fd4226036c3b3891a66a25bc64d226e" @@ -2106,14 +2110,14 @@ domain-browser@^1.1.1: version "1.1.7" resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc" -domelementtype@1, domelementtype@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2" - -domelementtype@~1.1.1: +domelementtype@1, domelementtype@~1.1.1: version "1.1.3" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" +domelementtype@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2" + domhandler@2.3, domhandler@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.3.0.tgz#2de59a0822d5027fabff6f032c2b25a2a8abe738" @@ -2380,7 +2384,7 @@ escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" -escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: +escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.3, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" @@ -3218,6 +3222,14 @@ gulp-postcss@^6.1.1: postcss-load-config "^1.1.0" vinyl-sourcemaps-apply "^0.2.1" +gulp-replace@^0.5.4: + version "0.5.4" + resolved "https://registry.yarnpkg.com/gulp-replace/-/gulp-replace-0.5.4.tgz#69a67914bbd13c562bff14f504a403796aa0daa9" + dependencies: + istextorbinary "1.0.2" + readable-stream "^2.0.1" + replacestream "^4.0.0" + gulp-svgmin@^1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/gulp-svgmin/-/gulp-svgmin-1.2.3.tgz#88947b132e15b2de43d1dbccb30455319c5e50b5" @@ -3943,6 +3955,13 @@ istanbul@^0.4.5: which "^1.1.1" wordwrap "^1.0.0" +istextorbinary@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/istextorbinary/-/istextorbinary-1.0.2.tgz#ace19354d1a9a0173efeb1084ce0f87b0ad7decf" + dependencies: + binaryextensions "~1.0.0" + textextensions "~1.0.0" + jest-changed-files@^17.0.2: version "17.0.2" resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-17.0.2.tgz#f5657758736996f590a51b87e5c9369d904ba7b7" @@ -5040,9 +5059,9 @@ netlify-auth-js@^0.5.5: dependencies: micro-api-client "^2.0.0" -netlify-cms@^0.3.8: - version "0.3.8" - resolved "https://registry.yarnpkg.com/netlify-cms/-/netlify-cms-0.3.8.tgz#77d09d66afb9e5be5a5cf3ce937b738a9d67d581" +netlify-cms@^0.3.9: + version "0.3.9" + resolved "https://registry.yarnpkg.com/netlify-cms/-/netlify-cms-0.3.9.tgz#972b22527b5f33303cdd2ee9d9cea2cfd274d1aa" dependencies: "@kadira/storybook" "^1.36.0" autoprefixer "^6.3.3" @@ -6301,11 +6320,11 @@ qs@6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.0.tgz#3b7848c03c2dece69a9522b0fae8c4126d745f3b" -qs@6.2.1, qs@^6.1.0: +qs@6.2.1: version "6.2.1" resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.1.tgz#ce03c5ff0935bc1d9d69a9f14cbd18e568d67625" -"qs@>= 0.4.0", qs@^6.2.0, qs@~6.3.0: +"qs@>= 0.4.0", qs@^6.1.0, qs@^6.2.0, qs@~6.3.0: version "6.3.1" resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.1.tgz#918c0b3bcd36679772baf135b1acb4c1651ed79d" @@ -6831,13 +6850,21 @@ replace-ext@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" +replacestream@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/replacestream/-/replacestream-4.0.2.tgz#0c4140707e4f0323f50de044851708cf58bc37bd" + dependencies: + escape-string-regexp "^1.0.3" + object-assign "^4.0.1" + readable-stream "^2.0.2" + request-progress@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/request-progress/-/request-progress-2.0.1.tgz#5d36bb57961c673aa5b788dbc8141fdf23b44e08" dependencies: throttleit "^1.0.0" -request@2.78.0: +request@2.78.0, request@^2.67.0: version "2.78.0" resolved "https://registry.yarnpkg.com/request/-/request-2.78.0.tgz#e1c8dec346e1c81923b24acdb337f11decabe9cc" dependencies: @@ -6862,7 +6889,7 @@ request@2.78.0: tough-cookie "~2.3.0" tunnel-agent "~0.4.1" -request@^2.58.0, request@^2.67.0, request@^2.74.0, request@^2.79.0, request@~2.79.0: +request@^2.58.0, request@^2.74.0, request@^2.79.0, request@~2.79.0: version "2.79.0" resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" dependencies: @@ -7674,6 +7701,10 @@ textarea-caret-position@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/textarea-caret-position/-/textarea-caret-position-0.1.1.tgz#34372aa755008b1a8451b8a1bb8f07795270fd70" +textextensions@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/textextensions/-/textextensions-1.0.2.tgz#65486393ee1f2bb039a60cbba05b0b68bd9501d2" + tfunk@^3.0.1: version "3.1.0" resolved "https://registry.yarnpkg.com/tfunk/-/tfunk-3.1.0.tgz#38e4414fc64977d87afdaa72facb6d29f82f7b5b" |
