@applicaster/zapplicaster-cli
Version:
CLI Tool for the zapp app and Quick Brick project
63 lines (56 loc) • 1.99 kB
JavaScript
/**
* module prepareWorkspace
* @module @applicaster/zapplicaster-cli/src/commands/prepareWorkspace
* This module contains the code which runs the prepare command of the
* zapplicaster-cli
*/
const { taskRunner } = require("../../taskRunner");
const { prerequisitesChecker } = require("./prerequisitesChecker");
const { configurator } = require("./configurator");
const { workspaceCreator } = require("./workspaceCreator");
const { configFilesRetriever } = require("./configFilesRetriever");
const { checkWorkspaceDependencies } = require("./checkWorkspaceDependencies");
const {
runtimeConfigurationUrlsCreator,
} = require("./runtimeConfigurationUrlsCreator");
const { appBootstrapper } = require("./appBootstrapper");
const prepareWorkspaceTask = {
name: "prepare workspace",
startMessage:
"We're preparing your app - you'll be happily coding in no time !",
prerequisitesChecker,
configurator,
steps: [
{
start: "Creating workspace",
run: workspaceCreator,
error: "Could not create workspace",
completion: "Workspace created !",
},
{
start: "Creating runtime URLs configuration file",
run: runtimeConfigurationUrlsCreator,
error: "Could not create runtime_configuration_urls.json",
completion: "Runtime configuration URLs file created",
},
{
start: "Retrieving configuration files",
run: configFilesRetriever,
error: "Could not retrieve configuration files",
completion: "Configuration files retrieved !",
},
{
start: "Bootstraping app project",
run: appBootstrapper,
error: "Could not bootstrap the app",
completion: "Successfully bootstrapped the app!",
},
{
start: "Checking workspace dependencies",
run: checkWorkspaceDependencies,
error: "Failed on checking app dependencies",
completion: "Your app is ready!",
},
],
};
module.exports = { prepareWorkspace: taskRunner(prepareWorkspaceTask) };