Socket
Socket
Sign inDemoInstall

remake

Package Overview
Dependencies
Maintainers
1
Versions
42
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

remake - npm Package Compare versions

Comparing version 1.8.0 to 1.9.0

5

CHANGELOG.md

@@ -0,1 +1,6 @@

# 1.9.0 (December 1, 2019)
- Added the `remake backup` command to backup a deployed app's data
- BUG FIX: the `/user/reset/{username}/{token}` route now works in multi-tenant mode
# 1.8.0 (November 24, 2019)

@@ -2,0 +7,0 @@

7

index.js
const program = require('commander');
const Configstore = require('configstore');
const { clean, build, deploy, serve, updateFramework, create } = require('./utils/commands');
const { clean, build, deploy, backup, updateFramework, create } = require('./utils/commands');
const { version, name } = require('./package.json');

@@ -43,4 +43,9 @@

program
.command('backup')
.description('Backup the deployed version of your app')
.action(() => backup());
module.exports = async () => {
program.parse(process.argv)
}

2

package.json
{
"name": "remake",
"version": "1.8.0",
"version": "1.9.0",
"description": "Generate a full-stack Remake web app",

@@ -5,0 +5,0 @@ "license": "MIT",

@@ -13,3 +13,11 @@ const fs = require('fs');

const { readDotRemake, writeDotRemake, generateDotRemakeContent } = require('./dot-remake');
const { registerUser, checkSubdomain, registerSubdomain, createDeploymentZip, removeDeploymentZip, pushZipToServer } = require('./helpers');
const {
registerUser,
checkSubdomain,
registerSubdomain,
createDeploymentZip,
removeDeploymentZip,
pushZipToServer,
getAppsList,
backupApp } = require('./helpers');
const { questions } = require('./inquirer-questions');

@@ -200,2 +208,17 @@ const { getSuccessMessage } = require('./get-success-message');

module.exports = { create, deploy, clean, build, updateFramework }
const backup = async () => {
await registerUser();
let appsList = await getAppsList();
if (appsList.length === 0) {
log(chalk.yellow('No apps deployed yet.'));
process.exit();
} else {
const question = questions.APP_BACKUP;
question.choices = appsList.map((app) => ({ name: app.name, value: app.id }));
const backupAnswer = await inquirer.prompt([question]);
await backupApp(backupAnswer.appId);
process.exit();
}
}
module.exports = { create, deploy, clean, build, updateFramework, backup }

@@ -168,2 +168,68 @@ const fs = require('fs');

module.exports = { checkSubdomain, registerSubdomain, registerUser, createDeploymentZip, removeDeploymentZip, pushZipToServer }
const getAppsList = async () => {
const spinner = ora('Getting your apps list.').start();
try {
const appListResponse = await axios({
method: 'get',
url: `${remakeServiceHost}/service/apps`,
headers: {
'Authorization': `Bearer ${remakeCliConfig.get('user.authToken')}`
},
});
if (appListResponse.status === 200) {
spinner.succeed();
return appListResponse.data;
} else {
spinner.fail();
return null;
}
} catch (err) {
console.log(err)
spinner.fail();
return null;
}
}
const backupApp = async (appId) => {
const spinner = ora('Generating and downlading zip.').start();
try {
const backupResponse = await axios({
method: 'get',
url: `${remakeServiceHost}/service/backup`,
responseType: 'stream',
headers: {
'Authorization': `Bearer ${remakeCliConfig.get('user.authToken')}`
},
params: {
appId,
}
})
if (backupResponse.status === 200) {
const fileName = backupResponse.headers['content-disposition'].split('=')[1].replace(/\"/g, '');
const writer = fs.createWriteStream(fileName);
backupResponse.data.pipe(writer);
return new Promise((resolve, reject) => {
writer.on('finish', () => { spinner.succeed(); resolve(); });
writer.on('error', () => { spinner.fail(); reject(); });
});
} else {
spinner.fail();
return null;
}
} catch (err) {
console.log(err)
spinner.fail();
return null;
}
}
module.exports = {
checkSubdomain,
registerSubdomain,
registerUser,
createDeploymentZip,
removeDeploymentZip,
pushZipToServer,
getAppsList,
backupApp,
}

@@ -58,2 +58,8 @@ const validateSubdomain = (subdomain) => {

type: 'confirm'
},
APP_BACKUP: {
message: 'Which app do you want to back up?',
name: 'appId',
type: 'list',
choices: []
}

@@ -60,0 +66,0 @@ }

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc