mirror of
https://github.com/mmumshad/ansible-playable.git
synced 2025-02-15 04:42:05 +00:00
66 lines
2.4 KiB
JavaScript
66 lines
2.4 KiB
JavaScript
/**
|
|
* Populate DB with sample data on server start
|
|
* to disable, edit config/environment/index.js, and set `seedDB: false`
|
|
*/
|
|
|
|
'use strict';
|
|
import Thing from '../api/thing/thing.model';
|
|
import User from '../api/user/user.model';
|
|
import config from './environment/';
|
|
|
|
export default function seedDatabaseIfNeeded() {
|
|
if(config.seedDB) {
|
|
Thing.find({}).remove()
|
|
.then(() => {
|
|
let thing = Thing.create({
|
|
name: 'Development Tools',
|
|
info: 'Integration with popular tools such as Webpack, Gulp, Babel, TypeScript, Karma, '
|
|
+ 'Mocha, ESLint, Node Inspector, Livereload, Protractor, Pug, '
|
|
+ 'Stylus, Sass, and Less.'
|
|
}, {
|
|
name: 'Server and Client integration',
|
|
info: 'Built with a powerful and fun stack: MongoDB, Express, '
|
|
+ 'AngularJS, and Node.'
|
|
}, {
|
|
name: 'Smart Build System',
|
|
info: 'Build system ignores `spec` files, allowing you to keep '
|
|
+ 'tests alongside code. Automatic injection of scripts and '
|
|
+ 'styles into your index.html'
|
|
}, {
|
|
name: 'Modular Structure',
|
|
info: 'Best practice client and server structures allow for more '
|
|
+ 'code reusability and maximum scalability'
|
|
}, {
|
|
name: 'Optimized Build',
|
|
info: 'Build process packs up your templates as a single JavaScript '
|
|
+ 'payload, minifies your scripts/css/images, and rewrites asset '
|
|
+ 'names for caching.'
|
|
}, {
|
|
name: 'Deployment Ready',
|
|
info: 'Easily deploy your app to Heroku or Openshift with the heroku '
|
|
+ 'and openshift subgenerators'
|
|
});
|
|
return thing;
|
|
})
|
|
.then(() => console.log('finished populating things'))
|
|
.catch(err => console.log('error populating things', err));
|
|
|
|
User.find({}).remove()
|
|
.then(() => {
|
|
User.create({
|
|
provider: 'local',
|
|
name: 'Test User',
|
|
email: 'test@example.com',
|
|
password: 'test'
|
|
}, {
|
|
provider: 'local',
|
|
role: 'admin',
|
|
name: 'Admin',
|
|
email: 'admin@example.com',
|
|
password: 'admin'
|
|
})
|
|
.then(() => console.log('finished populating users'))
|
|
.catch(err => console.log('error populating users', err));
|
|
});
|
|
}
|
|
}
|