From 2385c63edd389348d2412bab1749409303b9b22f Mon Sep 17 00:00:00 2001 From: Mathias Biilmann Christensen Date: Sat, 2 Sep 2017 14:08:54 -0700 Subject: Setup cms with netlify identity --- gulpfile.babel.js | 21 ++------------------- site/static/admin/config.yml | 38 ++++++++++++++++++++++++++++++++++++++ site/static/admin/index.html | 16 ++++++++++++++++ src/cms/config.yml | 37 ------------------------------------- src/cms/index.html | 16 ---------------- 5 files changed, 56 insertions(+), 72 deletions(-) create mode 100644 site/static/admin/config.yml create mode 100644 site/static/admin/index.html delete mode 100644 src/cms/config.yml delete mode 100644 src/cms/index.html diff --git a/gulpfile.babel.js b/gulpfile.babel.js index 77e0670..a50a03c 100644 --- a/gulpfile.babel.js +++ b/gulpfile.babel.js @@ -19,23 +19,7 @@ const defaultArgs = ["-d", "../dist", "-s", "site"]; gulp.task("hugo", (cb) => buildSite(cb)); gulp.task("hugo-preview", (cb) => buildSite(cb, ["--buildDrafts", "--buildFuture"])); - -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[:/](\S+)(\.git)?/, (_, m) => { - repo = m.replace(/\.git$/, ""); - }); - gulp.src("./src/cms/*") - .pipe(replace("<% GITHUB_REPOSITORY %>", repo)) - .pipe(gulp.dest("./dist/admin")) - .pipe(browserSync.stream()); - gulp.src(["./node_modules/netlify-cms/dist/*.*", "!./node_modules/netlify-cms/dist/*.html"]) - .pipe(gulp.dest("./dist")) - .pipe(browserSync.stream()) -}); - -gulp.task("build", ["css", "js", "hugo", "cms"]); +gulp.task("build", ["css", "js", "hugo"]); gulp.task("build-preview", ["css", "js", "hugo-preview"]); gulp.task("css", () => ( @@ -79,7 +63,7 @@ gulp.task("svg", () => { .pipe(gulp.dest("site/layouts/partials/")); }); -gulp.task("server", ["hugo", "css", "js", "svg", "cms"], () => { +gulp.task("server", ["hugo", "css", "js", "svg"], () => { browserSync.init({ server: { baseDir: "./dist" @@ -87,7 +71,6 @@ gulp.task("server", ["hugo", "css", "js", "svg", "cms"], () => { }); 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/site/static/admin/config.yml b/site/static/admin/config.yml new file mode 100644 index 0000000..12b9196 --- /dev/null +++ b/site/static/admin/config.yml @@ -0,0 +1,38 @@ +backend: + name: netlify-auth + auth_url: "/.netlify/identity" + github_proxy_url: "/.netlify/git/github" + accept_roles: ['admin', 'cms'] + +media_folder: "site/static/img" # Folder where user uploaded files should go +public_folder: "img" + +collections: # A list of collections the CMS should be able to edit + - name: "post" # Used in routes, ie.: /admin/collections/:slug/edit + label: "Post" # Used in the UI, ie.: "New Post" + folder: "site/content/post" # The path to the folder where the documents are stored + create: true # Allow users to create new documents in this collection + fields: # The fields each document in this collection have + - {label: "Title", name: "title", widget: "string"} + - {label: "Publish Date", name: "date", widget: "datetime"} + - {label: "Intro Blurb", name: "description", widget: "text"} + - {label: "Image", name: "image", widget: "image", required: false} + - {label: "Body", name: "body", widget: "markdown"} + - name: "pages" + label: "Pages" + files: + - file: "site/content/products.md" + label: "Products Page" + name: "products" + fields: + - {label: Title, name: title, widget: string} + - {label: Type, name: type, widget: hidden, default: products} + - {label: Page, name: page, widget: hidden, default: "/products.html"} + - {label: Image, name: image, widget: image} + - {label: Heading, name: heading, widget: string} + - {label: Description, name: description, widget: string} + - {label: Intro, name: intro, widget: object, fields: [{label: Heading, name: heading, widget: string}, {label: Description, name: description, widget: text}, {label: Blurbs, name: blurbs, widget: list, fields: [{label: Image, name: image, widget: image}, {label: Text, name: text, widget: text}]}]} + - {label: Main, name: main, widget: object, fields: [{label: Heading, name: heading, widget: string}, {label: Description, name: description, widget: text}, {label: Image1, name: image1, widget: object, fields: [{label: Image, name: image, widget: image}, {label: Alt, name: alt, widget: string}]}, {label: Image2, name: image2, widget: object, fields: [{label: Image, name: image, widget: image}, {label: Alt, name: alt, widget: string}]}, {label: Image3, name: image3, widget: object, fields: [{label: Image, name: image, widget: image}, {label: Alt, name: alt, widget: string}]}]} + - {label: Testimonials, name: testimonials, widget: list, fields: [{label: Quote, name: quote, widget: string}, {label: Author, name: author, widget: string}]} + - {label: Full_image, name: full_image, widget: image} + - {label: Pricing, name: pricing, widget: object, fields: [{label: Heading, name: heading, widget: string}, {label: Description, name: description, widget: string}, {label: Plans, name: plans, widget: list, fields: [{label: Plan, name: plan, widget: string}, {label: Price, name: price, widget: string}, {label: Description, name: description, widget: string}, {label: Items, name: items, widget: list}]}]} diff --git a/site/static/admin/index.html b/site/static/admin/index.html new file mode 100644 index 0000000..efa668b --- /dev/null +++ b/site/static/admin/index.html @@ -0,0 +1,16 @@ + + + + + + + Content Manager + + + + + + + + + diff --git a/src/cms/config.yml b/src/cms/config.yml deleted file mode 100644 index 89af1d6..0000000 --- a/src/cms/config.yml +++ /dev/null @@ -1,37 +0,0 @@ -backend: - name: github - repo: <% GITHUB_REPOSITORY %> # Gulp will replace this with your GitHub repository - branch: master # Branch to update (master by default) - -media_folder: "site/static/img" # Folder where user uploaded files should go -public_folder: "img" - -collections: # A list of collections the CMS should be able to edit - - name: "post" # Used in routes, ie.: /admin/collections/:slug/edit - label: "Post" # Used in the UI, ie.: "New Post" - folder: "site/content/post" # The path to the folder where the documents are stored - create: true # Allow users to create new documents in this collection - fields: # The fields each document in this collection have - - {label: "Title", name: "title", widget: "string"} - - {label: "Publish Date", name: "date", widget: "datetime"} - - {label: "Intro Blurb", name: "description", widget: "text"} - - {label: "Image", name: "image", widget: "image", required: false} - - {label: "Body", name: "body", widget: "markdown"} - - name: "pages" - label: "Pages" - files: - - file: "site/content/products.md" - label: "Products Page" - name: "products" - fields: - - {label: Title, name: title, widget: string} - - {label: Type, name: type, widget: hidden, default: products} - - {label: Page, name: page, widget: hidden, default: "/products.html"} - - {label: Image, name: image, widget: image} - - {label: Heading, name: heading, widget: string} - - {label: Description, name: description, widget: string} - - {label: Intro, name: intro, widget: object, fields: [{label: Heading, name: heading, widget: string}, {label: Description, name: description, widget: text}, {label: Blurbs, name: blurbs, widget: list, fields: [{label: Image, name: image, widget: image}, {label: Text, name: text, widget: text}]}]} - - {label: Main, name: main, widget: object, fields: [{label: Heading, name: heading, widget: string}, {label: Description, name: description, widget: text}, {label: Image1, name: image1, widget: object, fields: [{label: Image, name: image, widget: image}, {label: Alt, name: alt, widget: string}]}, {label: Image2, name: image2, widget: object, fields: [{label: Image, name: image, widget: image}, {label: Alt, name: alt, widget: string}]}, {label: Image3, name: image3, widget: object, fields: [{label: Image, name: image, widget: image}, {label: Alt, name: alt, widget: string}]}]} - - {label: Testimonials, name: testimonials, widget: list, fields: [{label: Quote, name: quote, widget: string}, {label: Author, name: author, widget: string}]} - - {label: Full_image, name: full_image, widget: image} - - {label: Pricing, name: pricing, widget: object, fields: [{label: Heading, name: heading, widget: string}, {label: Description, name: description, widget: string}, {label: Plans, name: plans, widget: list, fields: [{label: Plan, name: plan, widget: string}, {label: Price, name: price, widget: string}, {label: Description, name: description, widget: string}, {label: Items, name: items, widget: list}]}]} diff --git a/src/cms/index.html b/src/cms/index.html deleted file mode 100644 index efa668b..0000000 --- a/src/cms/index.html +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - Content Manager - - - - - - - - - -- cgit v1.3