Merge pull request #190 from Yukaii/setup-script
Setup script for getting started
This commit is contained in:
		
						commit
						4f16a26fcc
					
				
							
								
								
									
										7
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										7
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@ -15,4 +15,9 @@ tmp/
 | 
			
		||||
backups/
 | 
			
		||||
*.pid
 | 
			
		||||
*.log
 | 
			
		||||
*.sqlite
 | 
			
		||||
*.sqlite
 | 
			
		||||
 | 
			
		||||
# ignore config files
 | 
			
		||||
config.json
 | 
			
		||||
public/js/common.js
 | 
			
		||||
.sequelizerc
 | 
			
		||||
 | 
			
		||||
@ -43,7 +43,7 @@ Get started
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
1. Download a release and unzip or clone into a directory
 | 
			
		||||
2. Enter the directory and type `npm install && bower install`, which will install all the dependencies
 | 
			
		||||
2. Enter the directory and type `bin/setup`, which will install npm/bower dependencies and create configs. The setup script is written in Bash, you would need bash as a prerequisite.
 | 
			
		||||
3. Setup the configs, see more below
 | 
			
		||||
4. Setup environment variables which will overwrite the configs
 | 
			
		||||
5. Run the server as you like (node, forever, pm2)
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										52
									
								
								bin/setup
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										52
									
								
								bin/setup
									
									
									
									
									
										Executable file
									
								
							@ -0,0 +1,52 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
# run command at repo root
 | 
			
		||||
CURRENT_PATH=$PWD
 | 
			
		||||
cd $(git rev-parse --show-toplevel)
 | 
			
		||||
 | 
			
		||||
if ! type npm > /dev/null
 | 
			
		||||
then
 | 
			
		||||
  cat << EOF
 | 
			
		||||
npm is not installed, please install Node.js and npm.
 | 
			
		||||
Read more on Node.js official website: https://nodejs.org
 | 
			
		||||
Setup will not be run
 | 
			
		||||
EOF
 | 
			
		||||
  exit 0
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if ! type bower > /dev/null
 | 
			
		||||
then
 | 
			
		||||
  echo "bower is not installed, install via npm"
 | 
			
		||||
  npm install -g bower
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
echo "copy config files"
 | 
			
		||||
if [ ! -f config.json ]; then
 | 
			
		||||
  cp config.json.example config.json
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if [ ! -f publis/js/common.js ]; then
 | 
			
		||||
  cp public/js/common.js.example public/js/common.js
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if [ ! -f .sequelizerc ]; then
 | 
			
		||||
  cp .sequelizerc.example .sequelizerc
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
echo "install npm and bower packages"
 | 
			
		||||
npm install && bower install
 | 
			
		||||
 | 
			
		||||
cat << EOF
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Edit the following config file to setup hackmd server and client.
 | 
			
		||||
Read more info at https://github.com/hackmdio/hackmd#configuration-files
 | 
			
		||||
 | 
			
		||||
* config.json           -- server config
 | 
			
		||||
* public/js/common.js   -- client config
 | 
			
		||||
* .sequelizerc          -- db config
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
 | 
			
		||||
# change directory back
 | 
			
		||||
cd $CURRENT_PATH
 | 
			
		||||
@ -49,4 +49,4 @@
 | 
			
		||||
            "clientID": "change this"
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user