X-Git-Url: https://git.r.bdr.sh/rbdr/blog/blobdiff_plain/cf6302904d61ead65e6294e7f1be406eb68ef5f9..65d379f5db381423165e0da8cc788f85112873b8:/bin/blog.js?ds=inline diff --git a/bin/blog.js b/bin/blog.js index c88a8aa..8f0ab70 100755 --- a/bin/blog.js +++ b/bin/blog.js @@ -1,13 +1,14 @@ #!/usr/bin/env node 'use strict'; +const Package = require('../package.json'); const Config = require('../config/config'); const Blog = require('..'); const Minimist = require('minimist'); const internals = { blog: new Blog(Config), - expectedKeys: ['add', 'update', 'publish'], + expectedKeys: ['add', 'generate', 'update', 'publish', 'publish-archive', 'version'], // Application entry point. Reads arguments and calls the // corresponding method from the blog lib @@ -22,6 +23,11 @@ const internals = { const value = parsedArguments[argument]; + if (argument === 'version') { + console.log(Package.version); + return; + } + if (argument === 'add') { await internals.blog.add(value); return; @@ -32,12 +38,23 @@ const internals = { return; } + if (argument === 'generate') { + await internals.blog.generate(); + return; + } + if (argument === 'publish') { - await internals.blog.update(value); + await internals.blog.publish(value); + return; + } + + if (argument === 'publish-archive') { + await internals.blog.publishArchive(value); return; } } } + console.log('Not yet implemented'); } catch (err) { @@ -75,8 +92,11 @@ const internals = { console.error('\nUsage:\n'); console.error('blog --add path/to/blog_post\t\t(creates new blog post)'); - console.error('blog --update path/to/blog_post\t(updates latest blog post)'); - console.error('blog --publish \t\t\t(publishes the blog)'); + console.error('blog --update path/to/blog_post\t\t(updates latest blog post)'); + console.error('blog --generate \t\t\t(generates the blog assets)'); + console.error('blog --publish \t\t(publishes the blog to an S3 bucket)'); + console.error('blog --publish-archive \t(publishes the archive to a remote host)'); + console.error('blog --version \t\t\t\t(print the version)'); } };