mirror of
https://github.com/hedgedoc/hedgedoc.git
synced 2025-01-11 08:53:04 +00:00
remove all bin tools
Signed-off-by: Philip Molares <philip.molares@udo.edu>
This commit is contained in:
parent
9e13842c6b
commit
dfb4934951
3 changed files with 0 additions and 190 deletions
24
bin/heroku
24
bin/heroku
|
@ -1,24 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
EOF
|
||||
|
||||
cat << EOF > config.json
|
||||
|
||||
{
|
||||
"production": {
|
||||
}
|
||||
}
|
||||
|
||||
EOF
|
119
bin/manage_users
119
bin/manage_users
|
@ -1,119 +0,0 @@
|
|||
#!/usr/bin/env node
|
||||
|
||||
// First configure the logger so it does not spam the console
|
||||
const logger = require("../lib/logger");
|
||||
logger.transports.forEach((transport) => transport.level = "warning")
|
||||
|
||||
const models = require("../lib/models/");
|
||||
const readline = require("readline-sync");
|
||||
const minimist = require("minimist");
|
||||
|
||||
function showUsage(tips) {
|
||||
console.log(`${tips}
|
||||
|
||||
Command-line utility to create users for email-signin.
|
||||
|
||||
Usage: bin/manage_users [--pass password] (--add | --del) user-email
|
||||
Options:
|
||||
--add Add user with the specified user-email
|
||||
--del Delete user with specified user-email
|
||||
--reset Reset user password with specified user-email
|
||||
--pass Use password from cmdline rather than prompting
|
||||
`);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
function getPass(argv, action) {
|
||||
// Find whether we use cmdline or prompt password
|
||||
if(typeof argv["pass"] !== 'string') {
|
||||
return readline.question(`Password for ${argv[action]}:`, {hideEchoBack: true});
|
||||
}
|
||||
console.log("Using password from commandline...");
|
||||
return argv["pass"];
|
||||
}
|
||||
|
||||
// Using an async function to be able to use await inside
|
||||
async function createUser(argv) {
|
||||
const existing_user = await models.User.findOne({where: {email: argv["add"]}});
|
||||
// Cannot create already-existing users
|
||||
if(existing_user) {
|
||||
console.log(`User with e-mail ${existing_user.email} already exists! Aborting ...`);
|
||||
process.exit(2);
|
||||
}
|
||||
|
||||
const pass = getPass(argv, "add");
|
||||
|
||||
|
||||
// Lets try to create, and check success
|
||||
const ref = await models.User.create({email: argv["add"], password: pass});
|
||||
if(ref == undefined) {
|
||||
console.log(`Could not create user with email ${argv["add"]}`);
|
||||
process.exit(1);
|
||||
} else
|
||||
console.log(`Created user with email ${argv["add"]}`);
|
||||
}
|
||||
|
||||
// Using an async function to be able to use await inside
|
||||
async function deleteUser(argv) {
|
||||
// Cannot delete non-existing users
|
||||
const existing_user = await models.User.findOne({where: {email: argv["del"]}});
|
||||
if(!existing_user) {
|
||||
console.log(`User with e-mail ${argv["del"]} does not exist, cannot delete`);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
// Sadly .destroy() does not return any success value with all
|
||||
// backends. See sequelize #4124
|
||||
await existing_user.destroy();
|
||||
console.log(`Deleted user ${argv["del"]} ...`);
|
||||
}
|
||||
|
||||
|
||||
// Using an async function to be able to use await inside
|
||||
async function resetUser(argv) {
|
||||
const existing_user = await models.User.findOne({where: {email: argv["reset"]}});
|
||||
// Cannot reset non-existing users
|
||||
if(!existing_user) {
|
||||
console.log(`User with e-mail ${argv["reset"]} does not exist, cannot reset`);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
const pass = getPass(argv, "reset");
|
||||
|
||||
// set password and save
|
||||
existing_user.password = pass;
|
||||
await existing_user.save();
|
||||
console.log(`User with email ${argv["reset"]} password has been reset`);
|
||||
}
|
||||
|
||||
const options = {
|
||||
add: createUser,
|
||||
del: deleteUser,
|
||||
reset: resetUser,
|
||||
};
|
||||
|
||||
// Perform commandline-parsing
|
||||
const argv = minimist(process.argv.slice(2));
|
||||
|
||||
const keys = Object.keys(options);
|
||||
const opts = keys.filter((key) => argv[key] !== undefined);
|
||||
const action = opts[0];
|
||||
|
||||
// Check for options missing
|
||||
if (opts.length === 0) {
|
||||
showUsage(`You did not specify either ${keys.map((key) => `--${key}`).join(' or ')}!`);
|
||||
}
|
||||
|
||||
// Check if both are specified
|
||||
if (opts.length > 1) {
|
||||
showUsage(`You cannot ${action.join(' and ')} at the same time!`);
|
||||
}
|
||||
// Check if not string
|
||||
if (typeof argv[action] !== 'string') {
|
||||
showUsage(`You must follow an email after --${action}`);
|
||||
}
|
||||
|
||||
// Call respective processing functions
|
||||
options[action](argv).then(function() {
|
||||
process.exit(0);
|
||||
});
|
47
bin/setup
47
bin/setup
|
@ -1,47 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
# run command at repo root
|
||||
CURRENT_PATH=$PWD
|
||||
if [ -d .git ]; then
|
||||
cd "$(git rev-parse --show-toplevel)"
|
||||
fi
|
||||
|
||||
if ! type yarn > /dev/null
|
||||
then
|
||||
cat << EOF
|
||||
yarn is not installed, please install Node.js, npm and yarn.
|
||||
Read more on Node.js official website: https://nodejs.org
|
||||
And for yarn package manager at: https://yarnpkg.com/en/
|
||||
Setup will not be run
|
||||
EOF
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "copy config files"
|
||||
if [ ! -f config.json ]; then
|
||||
cp config.json.example config.json
|
||||
fi
|
||||
|
||||
if [ ! -f .sequelizerc ]; then
|
||||
cp .sequelizerc.example .sequelizerc
|
||||
fi
|
||||
|
||||
echo "install packages"
|
||||
yarn install --pure-lockfile
|
||||
yarn install --production=false --pure-lockfile
|
||||
|
||||
cat << EOF
|
||||
|
||||
|
||||
Edit the following config file to setup CodiMD server and client.
|
||||
Read more info at https://github.com/codimd/server#configuration-files
|
||||
|
||||
* config.json -- CodiMD config
|
||||
* .sequelizerc -- db config
|
||||
|
||||
EOF
|
||||
|
||||
# change directory back
|
||||
cd "$CURRENT_PATH"
|
Loading…
Reference in a new issue