Config heroku deployment
This commit is contained in:
parent
33d070e52d
commit
9f63581c61
5 changed files with 84 additions and 3 deletions
|
@ -15,6 +15,13 @@ Thanks for using! :smile:
|
|||
Before you go too far, here is the great docker repo for HackMD.
|
||||
With docker, you can deploy a server in minutes without any downtime.
|
||||
|
||||
Heroku Deployment
|
||||
---
|
||||
|
||||
You can quickly setup a sample heroku hackmd application by clicking the button below.
|
||||
|
||||
[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy)
|
||||
|
||||
[migration-to-0.4.0](https://github.com/hackmdio/migration-to-0.4.0)
|
||||
---
|
||||
|
||||
|
|
33
app.json
Normal file
33
app.json
Normal file
|
@ -0,0 +1,33 @@
|
|||
{
|
||||
"name": "HackMD",
|
||||
"description": "Realtime collaborative markdown notes on all platforms",
|
||||
"keywords": [
|
||||
"Collaborative",
|
||||
"Markdown",
|
||||
"Notes"
|
||||
],
|
||||
"website": "https://hackmd.io",
|
||||
"repository": "https://github.com/hackmdio/hackmd",
|
||||
"logo": "https://github.com/hackmdio/hackmd/raw/master/public/hackmd-icon-1024.png",
|
||||
"success_url": "/",
|
||||
"scripts": {
|
||||
"postdeploy": "./node_modules/.bin/sequelize db:migrate"
|
||||
},
|
||||
"env": {
|
||||
"BUILD_ASSETS": {
|
||||
"description": "Our build script variable",
|
||||
"value": "true"
|
||||
},
|
||||
"NPM_CONFIG_PRODUCTION": {
|
||||
"description": "Let npm also install development build tool",
|
||||
"value": "false"
|
||||
},
|
||||
"DB_TYPE": {
|
||||
"description": "Specify database type. See sequelize available databases. Default using postgres",
|
||||
"value": "postgres"
|
||||
}
|
||||
},
|
||||
"addons": [
|
||||
"heroku-postgresql"
|
||||
]
|
||||
}
|
35
bin/heroku
Executable file
35
bin/heroku
Executable file
|
@ -0,0 +1,35 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [ "$BUILD_ASSETS" = true ]; then
|
||||
BUILD_ASSETS=false npm install && npm run assets:install
|
||||
|
||||
# setup config files
|
||||
cat << EOF > .sequelizerc
|
||||
var path = require('path');
|
||||
|
||||
module.exports = {
|
||||
'config': path.resolve('config.json'),
|
||||
'migrations-path': path.resolve('lib', 'migrations'),
|
||||
'models-path': path.resolve('lib', 'models'),
|
||||
'url': process.env.DATABASE_URL,
|
||||
'dialect': process.env.DB_TYPE
|
||||
}
|
||||
|
||||
EOF
|
||||
|
||||
cat << EOF > config.json
|
||||
|
||||
{
|
||||
"production": {
|
||||
}
|
||||
}
|
||||
|
||||
EOF
|
||||
|
||||
cp public/js/config.js.example public/js/config.js
|
||||
|
||||
# build app
|
||||
npm run build
|
||||
fi
|
|
@ -2,7 +2,9 @@
|
|||
|
||||
# run command at repo root
|
||||
CURRENT_PATH=$PWD
|
||||
cd $(git rev-parse --show-toplevel)
|
||||
if [ -d .git ]; then
|
||||
cd $(git rev-parse --show-toplevel)
|
||||
fi
|
||||
|
||||
if ! type npm > /dev/null
|
||||
then
|
||||
|
@ -34,7 +36,7 @@ if [ ! -f .sequelizerc ]; then
|
|||
fi
|
||||
|
||||
echo "install npm and bower packages"
|
||||
npm install && bower install
|
||||
BUILD_ASSETS=false npm install && bower install
|
||||
|
||||
cat << EOF
|
||||
|
||||
|
|
|
@ -6,7 +6,10 @@
|
|||
"license": "MIT",
|
||||
"scripts": {
|
||||
"dev": "webpack --config webpack.config.js --progress --colors --watch",
|
||||
"build": "webpack --config webpack.production.js --progress --colors"
|
||||
"build": "webpack --config webpack.production.js --progress --colors",
|
||||
"assets:install": "bower install",
|
||||
"postinstall": "bin/heroku",
|
||||
"start": "node app.js"
|
||||
},
|
||||
"dependencies": {
|
||||
"Idle.Js": "github:shawnmclean/Idle.js",
|
||||
|
@ -121,6 +124,7 @@
|
|||
"devDependencies": {
|
||||
"babel-core": "^6.17.0",
|
||||
"babel-loader": "^6.2.5",
|
||||
"bower": "^1.7.9",
|
||||
"bower-webpack-plugin": "^0.1.9",
|
||||
"css-loader": "^0.25.0",
|
||||
"ejs-loader": "^0.3.0",
|
||||
|
|
Loading…
Reference in a new issue