From 8af9212837bb3cbf7f54e93046b67eb5a3cd5c74 Mon Sep 17 00:00:00 2001 From: NGPixel Date: Sat, 11 Feb 2017 22:54:27 -0500 Subject: [PATCH] Added offline mode (no remote git sync) --- CHANGELOG.md | 2 ++ controllers/pages.js | 1 + libs/git.js | 17 +++++++++++++++-- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bcb89eb5..663ea02f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,8 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/). ## [Unreleased] +### Added +- Offline mode (no remote git sync) can now be enabled by setting `git: false` in config.yml ## [v1.0-beta.4] - 2017-02-11 ### Fixed diff --git a/controllers/pages.js b/controllers/pages.js index 36733f19..558f1f68 100644 --- a/controllers/pages.js +++ b/controllers/pages.js @@ -186,6 +186,7 @@ router.get('/*', (req, res, next) => { newpath: safePath }) } + return true }).catch((err) => { res.render('error', { message: err.message, diff --git a/libs/git.js b/libs/git.js index d2bd7d42..e8bdce9c 100644 --- a/libs/git.js +++ b/libs/git.js @@ -51,8 +51,10 @@ module.exports = { // Define signature - self._signature.name = appconfig.git.signature.name || 'Wiki' - self._signature.email = appconfig.git.signature.email || 'user@example.com' + if (appconfig.git) { + self._signature.name = appconfig.git.signature.name || 'Wiki' + self._signature.email = appconfig.git.signature.email || 'user@example.com' + } return self }, @@ -86,6 +88,11 @@ module.exports = { self._repo.exists = false }) }).then(() => { + if (appconfig.git === false) { + winston.info('[' + PROCNAME + '][GIT] Remote syncing is disabled. Not recommended!') + return Promise.resolve(true) + } + // Initialize remote let urlObj = URL.parse(appconfig.git.url) @@ -144,6 +151,12 @@ module.exports = { resync () { let self = this + // Is git remote disabled? + + if (appconfig.git === false) { + return Promise.resolve(true) + } + // Fetch winston.info('[' + PROCNAME + '][GIT] Performing pull from remote repository...')