Skip to content

Commit

Permalink
feat: add a reset mode
Browse files Browse the repository at this point in the history
  • Loading branch information
manekinekko committed Oct 30, 2019
1 parent 50c71db commit 0d137ff
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 20 deletions.
6 changes: 4 additions & 2 deletions src/commands/init.ts
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ module.exports = async function(options?: NitroInitOptions) {
short: "Database"
},
{
name: "Kubernetes: Configure a Kubernetes cluster",
name: "Kubernetes: Configure a Kubernetes cluster (preview)",
value: "kubernetes",
short: "Kubernetes"
}
Expand Down Expand Up @@ -62,7 +62,9 @@ module.exports = async function(options?: NitroInitOptions) {
if (shouldOverrideConfigFile.override === false) {
process.exit(0);
} else {
deleteFile("./hexa.json");
if (process.env.HEXA_RESET_MODE) {
deleteFile("./hexa.json");
}
}
}

Expand Down
11 changes: 8 additions & 3 deletions src/core/prompt.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import inquirer, { Answers, QuestionCollection } from "inquirer";
import { createDirectoryIfNotExists, fileExists, getCurrentDirectoryBase } from "./utils";
import { createDirectoryIfNotExists, fileExists } from "./utils";

export function chooseSubscription(subscriptionsList: AzureSubscription[]): Promise<Answers> {
const questions: QuestionCollection = [
Expand Down Expand Up @@ -242,11 +242,15 @@ export function askForProjectDetails(defaultProjectName: string): Promise<Answer
}

export function askIfOverrideProjectFile(): Promise<Answers> {

const forceDelete = !!process.env.HEXA_RESET_MODE;
let deletionWarning = "(File will be deleted)";

const questions: QuestionCollection = [
{
type: "confirm",
name: "override",
message: "Configuration file found. Do you want to override it? (File will be deleted)",
message: `Configuration file found. Do you want to override it? ${forceDelete && deletionWarning}`,
default: false
}
];
Expand All @@ -267,7 +271,8 @@ export function askForHostingFolder(defaultPublicFolderName: string): Promise<An
} else {
return "Please enter a public folder.";
}
}
},
when: () => !process.env.HEXA_AUTO_MODE
},
{
type: "confirm",
Expand Down
20 changes: 10 additions & 10 deletions src/features/hosting/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,18 @@ const debug = require("debug")("hosting");
module.exports = async function() {
const isForceModeEnabled = !!process.env.HEXA_FORCE_MODE;

let publicFolder = "./public";
let folder, overrideHtml, override404, overrideError;

if (isForceModeEnabled === false) {
({ folder, overrideHtml, override404, overrideError } = await askForHostingFolder(publicFolder));
debug(
`selected hosting folder=${folder}, overrideHtml=${overrideHtml}, override404=${override404}. overrideError=${overrideError}`
);
let defaultPublicFolder = "./dist";

// default values
let [folder, overrideHtml, override404, overrideError] = [defaultPublicFolder, false, false, false];

if (isForceModeEnabled) {
[folder, overrideHtml, override404, overrideError] = [defaultPublicFolder, true, true, true];
} else {
[folder, overrideHtml, override404, overrideError] = [publicFolder, true, true, true];
createDirectoryIfNotExists(publicFolder);
({ folder = defaultPublicFolder, overrideHtml, override404, overrideError } = await askForHostingFolder(defaultPublicFolder));
debug(`selected hosting folder=${folder}, overrideHtml=${overrideHtml}, override404=${override404}. overrideError=${overrideError}`);
}
createDirectoryIfNotExists(defaultPublicFolder);

if (overrideHtml || typeof overrideHtml === "undefined") {
// copy index.html
Expand Down
14 changes: 9 additions & 5 deletions src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,15 +39,16 @@ let debug: Function;
.option("login", "connect to your Azure")
.option("init", "initialize a new workspace")
.option("deploy", "deploy to Azure")
.option("-y, --yes", "answer yes to all confirmations", false)
.option("-r, --relogin", "force login", false)
.option("-c, --create", "enable manual resource creation", false)
.option("-m, --manual", "enter Manual mode", false)
.option("-d, --debug", "enable debug mode", false)
.option("-j, --just <services>", "setup or deploy only the selected services (e.g. --just functions,hosting)", false)
.option("-l, --login", "force login", false)
.option("-m, --manual", "enter Manual mode", false)
.option("-r, --reset", "reset (delete) local configuration", false)
.option("-s, --sas", "use SAS token (only: storage and database)", false)
.option("-t, --token", "generate a Storage token into a .env file", false)
.option("-j, --just <services>", "setup or deploy only the selected services (e.g. --just functions,hosting)", false)
.option("-u, --use <builder>", "use a specific build system (e.g. tsc,bazel)", 'tsc')
.option("-y, --yes", "answer yes to all confirmations", false)
.parse(process.argv);

// set confiuration
Expand All @@ -64,6 +65,9 @@ let debug: Function;
process.env.HEXA_YOLO_MODE = "1";
}

if (program.reset) {
process.env.HEXA_RESET_MODE = "1";
}

if (program.yes) {
process.env.HEXA_FORCE_MODE = "1";
Expand All @@ -74,7 +78,7 @@ let debug: Function;
if (program.create) {
process.env.HEXA_ENABLE_ADDING_NEW_RESOURCE = "1";
}
if (program.relogin) {
if (program.login) {
process.env.HEXA_FORCE_LOGIN = "1";
}
if (program.sas) {
Expand Down

0 comments on commit 0d137ff

Please sign in to comment.