feat: Heroku support - setup
This commit is contained in:
153
npm/configs/config.docker.yml
Normal file
153
npm/configs/config.docker.yml
Normal file
@@ -0,0 +1,153 @@
|
||||
#######################################################################
|
||||
# Wiki.js - CONFIGURATION #
|
||||
#######################################################################
|
||||
# Full explanation + examples in the documentation:
|
||||
# https://docs.requarks.io/wiki/install
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Title of this site
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
title: Wiki
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Full public path to the site, without the trailing slash
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
host: http://localhost
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Port the main server should listen to (80 by default)
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
port: $(PORT)
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Data Directories
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
paths:
|
||||
repo: ./repo
|
||||
data: ./data
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Upload Limits
|
||||
# ---------------------------------------------------------------------
|
||||
# In megabytes (MB)
|
||||
|
||||
uploads:
|
||||
maxImageFileSize: 3
|
||||
maxOtherFileSize: 100
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Site Language
|
||||
# ---------------------------------------------------------------------
|
||||
# Possible values: en, de, es, fr, ko, pt or ru
|
||||
|
||||
lang: en
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Site Authentication
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
public: false
|
||||
|
||||
auth:
|
||||
defaultReadAccess: false
|
||||
local:
|
||||
enabled: true
|
||||
google:
|
||||
enabled: true
|
||||
clientId: GOOGLE_CLIENT_ID
|
||||
clientSecret: GOOGLE_CLIENT_SECRET
|
||||
microsoft:
|
||||
enabled: true
|
||||
clientId: MS_APP_ID
|
||||
clientSecret: MS_APP_SECRET
|
||||
facebook:
|
||||
enabled: false
|
||||
clientId: FACEBOOK_APP_ID
|
||||
clientSecret: FACEBOOK_APP_SECRET
|
||||
github:
|
||||
enabled: false
|
||||
clientId: GITHUB_CLIENT_ID
|
||||
clientSecret: GITHUB_CLIENT_SECRET
|
||||
slack:
|
||||
enabled: false
|
||||
clientId: SLACK_CLIENT_ID
|
||||
clientSecret: SLACK_CLIENT_SECRET
|
||||
ldap:
|
||||
enabled: false
|
||||
url: ldap://serverhost:389
|
||||
bindDn: cn='root'
|
||||
bindCredentials: BIND_PASSWORD
|
||||
searchBase: o=users,o=example.com
|
||||
searchFilter: (uid={{username}})
|
||||
tlsEnabled: false
|
||||
tlsCertPath: C:\example\root_ca_cert.crt
|
||||
azure:
|
||||
enabled: false
|
||||
clientID: APP_ID
|
||||
clientSecret: APP_SECRET_KEY
|
||||
resource: '00000002-0000-0000-c000-000000000000'
|
||||
tenant: 'YOUR_TENANT.onmicrosoft.com'
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Secret key to use when encrypting sessions
|
||||
# ---------------------------------------------------------------------
|
||||
# Use a long and unique random string (256-bit keys are perfect!)
|
||||
|
||||
sessionSecret: 1234567890abcdefghijklmnopqrstuvxyz
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Database Connection String
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
db: mongodb://mongo:27017/wiki
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Git Connection Info
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
git:
|
||||
url: https://github.com/Organization/Repo
|
||||
branch: master
|
||||
auth:
|
||||
|
||||
# Type: basic or ssh
|
||||
type: ssh
|
||||
|
||||
# Only for Basic authentication:
|
||||
username: marty
|
||||
password: MartyMcFly88
|
||||
|
||||
# Only for SSH authentication:
|
||||
privateKey: /etc/wiki/keys/git.pem
|
||||
|
||||
sslVerify: true
|
||||
|
||||
# Default email to use as commit author
|
||||
serverEmail: marty@example.com
|
||||
|
||||
# Whether to use user email as author in commits
|
||||
showUserEmail: true
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Features
|
||||
# ---------------------------------------------------------------------
|
||||
# You can enable / disable specific features below
|
||||
|
||||
features:
|
||||
mathjax: true
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# External Logging
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
externalLogging:
|
||||
bugsnag: false
|
||||
loggly: false
|
||||
papertrail: false
|
||||
rollbar: false
|
||||
sentry: false
|
||||
|
153
npm/configs/config.heroku.yml
Normal file
153
npm/configs/config.heroku.yml
Normal file
@@ -0,0 +1,153 @@
|
||||
#######################################################################
|
||||
# Wiki.js - CONFIGURATION #
|
||||
#######################################################################
|
||||
# Full explanation + examples in the documentation:
|
||||
# https://docs.requarks.io/wiki/install
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Title of this site
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
title: Wiki
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Full public path to the site, without the trailing slash
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
host: https://YOURAPP.herokuapp.com/
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Port the main server should listen to (80 by default)
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
port: $(PORT)
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Data Directories
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
paths:
|
||||
repo: ./repo
|
||||
data: ./data
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Upload Limits
|
||||
# ---------------------------------------------------------------------
|
||||
# In megabytes (MB)
|
||||
|
||||
uploads:
|
||||
maxImageFileSize: 3
|
||||
maxOtherFileSize: 100
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Site Language
|
||||
# ---------------------------------------------------------------------
|
||||
# Possible values: en, de, es, fr, ko, pt or ru
|
||||
|
||||
lang: en
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Site Authentication
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
public: false
|
||||
|
||||
auth:
|
||||
defaultReadAccess: false
|
||||
local:
|
||||
enabled: true
|
||||
google:
|
||||
enabled: true
|
||||
clientId: GOOGLE_CLIENT_ID
|
||||
clientSecret: GOOGLE_CLIENT_SECRET
|
||||
microsoft:
|
||||
enabled: true
|
||||
clientId: MS_APP_ID
|
||||
clientSecret: MS_APP_SECRET
|
||||
facebook:
|
||||
enabled: false
|
||||
clientId: FACEBOOK_APP_ID
|
||||
clientSecret: FACEBOOK_APP_SECRET
|
||||
github:
|
||||
enabled: false
|
||||
clientId: GITHUB_CLIENT_ID
|
||||
clientSecret: GITHUB_CLIENT_SECRET
|
||||
slack:
|
||||
enabled: false
|
||||
clientId: SLACK_CLIENT_ID
|
||||
clientSecret: SLACK_CLIENT_SECRET
|
||||
ldap:
|
||||
enabled: false
|
||||
url: ldap://serverhost:389
|
||||
bindDn: cn='root'
|
||||
bindCredentials: BIND_PASSWORD
|
||||
searchBase: o=users,o=example.com
|
||||
searchFilter: (uid={{username}})
|
||||
tlsEnabled: false
|
||||
tlsCertPath: C:\example\root_ca_cert.crt
|
||||
azure:
|
||||
enabled: false
|
||||
clientID: APP_ID
|
||||
clientSecret: APP_SECRET_KEY
|
||||
resource: '00000002-0000-0000-c000-000000000000'
|
||||
tenant: 'YOUR_TENANT.onmicrosoft.com'
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Secret key to use when encrypting sessions
|
||||
# ---------------------------------------------------------------------
|
||||
# Use a long and unique random string (256-bit keys are perfect!)
|
||||
|
||||
sessionSecret: 1234567890abcdefghijklmnopqrstuvxyz
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Database Connection String
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
db: $(MONGO_URI)
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Git Connection Info
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
git:
|
||||
url: https://github.com/Organization/Repo
|
||||
branch: master
|
||||
auth:
|
||||
|
||||
# Type: basic or ssh
|
||||
type: ssh
|
||||
|
||||
# Only for Basic authentication:
|
||||
username: marty
|
||||
password: MartyMcFly88
|
||||
|
||||
# Only for SSH authentication:
|
||||
privateKey: /etc/wiki/keys/git.pem
|
||||
|
||||
sslVerify: true
|
||||
|
||||
# Default email to use as commit author
|
||||
serverEmail: marty@example.com
|
||||
|
||||
# Whether to use user email as author in commits
|
||||
showUserEmail: true
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Features
|
||||
# ---------------------------------------------------------------------
|
||||
# You can enable / disable specific features below
|
||||
|
||||
features:
|
||||
mathjax: true
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# External Logging
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
externalLogging:
|
||||
bugsnag: false
|
||||
loggly: false
|
||||
papertrail: false
|
||||
rollbar: false
|
||||
sentry: false
|
||||
|
@@ -136,11 +136,13 @@ const tasks = {
|
||||
// Is New Install
|
||||
if (err.code === 'ENOENT') {
|
||||
ora.text = 'First-time install, creating a new config.yml...'
|
||||
let sourceConfigFile = 'config.sample.yml'
|
||||
if (process.env.WIKI_JS_DOCKER) {
|
||||
sourceConfigFile = 'config.docker.yml'
|
||||
let sourceConfigFile = path.join(installDir, 'config.sample.yml')
|
||||
if (process.env.IS_HEROKU) {
|
||||
sourceConfigFile = path.join(__dirname, 'configs/config.heroku.yml')
|
||||
} else if (process.env.WIKI_JS_DOCKER) {
|
||||
sourceConfigFile = path.join(__dirname, 'configs/config.docker.yml')
|
||||
}
|
||||
return fs.copyAsync(path.join(installDir, sourceConfigFile), path.join(installDir, 'config.yml')).then(() => {
|
||||
return fs.copyAsync(sourceConfigFile, path.join(installDir, 'config.yml')).then(() => {
|
||||
ora.succeed('Installation succeeded.')
|
||||
return true
|
||||
})
|
||||
@@ -200,7 +202,11 @@ const tasks = {
|
||||
})
|
||||
})
|
||||
} else {
|
||||
console.info(colors.cyan('[WARNING] Non-interactive terminal detected. You must manually start the configuration wizard using the command: node wiki configure'))
|
||||
if (!process.env.IS_HEROKU && !process.env.WIKI_JS_DOCKER) {
|
||||
console.info(colors.cyan('[WARNING] Non-interactive terminal detected. You must manually start the configuration wizard using the command: node wiki configure'))
|
||||
} else {
|
||||
console.info('Container environment detected. Skipping setup wizard auto-start. OK.')
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -217,6 +223,8 @@ if (!process.env.IS_HEROKU && !process.env.WIKI_JS_DOCKER) {
|
||||
' \\ /\\ /| | <| |_ | \\__ \\ \n' +
|
||||
' \\/ \\/ |_|_|\\_\\_(_)/ |___/ \n' +
|
||||
' |__/\n'))
|
||||
} else {
|
||||
console.info('=-=-= WIKI.JS =-=-=')
|
||||
}
|
||||
|
||||
let ora = require('ora')({ text: 'Initializing...', spinner: 'dots12' }).start()
|
||||
|
Reference in New Issue
Block a user