@hubspot/cli 7.0.7-experimental.0 → 7.0.8-experimental.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -83,7 +83,7 @@ exports.handler = async (options) => {
|
|
|
83
83
|
logger.error(i18n(`${i18nKey}.errors.noBuildId`));
|
|
84
84
|
return process.exit(EXIT_CODES.ERROR);
|
|
85
85
|
}
|
|
86
|
-
const { data: deployResp } = await deployProject(derivedAccountId, projectName, buildIdToDeploy);
|
|
86
|
+
const { data: deployResp } = await deployProject(derivedAccountId, projectName, buildIdToDeploy, options.useV3);
|
|
87
87
|
if (!deployResp || deployResp.error) {
|
|
88
88
|
logger.error(i18n(`${i18nKey}.errors.deploy`, {
|
|
89
89
|
details: deployResp.error.message,
|
|
@@ -123,6 +123,11 @@ exports.builder = yargs => {
|
|
|
123
123
|
describe: i18n(`${i18nKey}.options.build.describe`),
|
|
124
124
|
type: 'number',
|
|
125
125
|
},
|
|
126
|
+
'use-v3': {
|
|
127
|
+
hidden: true,
|
|
128
|
+
type: 'boolean',
|
|
129
|
+
default: false,
|
|
130
|
+
},
|
|
126
131
|
});
|
|
127
132
|
yargs.example([
|
|
128
133
|
['$0 project deploy', i18n(`${i18nKey}.examples.default`)],
|
|
@@ -22,15 +22,15 @@ exports.handler = async (options) => {
|
|
|
22
22
|
const { forceCreate, message, derivedAccountId } = options;
|
|
23
23
|
const accountConfig = getAccountConfig(derivedAccountId);
|
|
24
24
|
const accountType = accountConfig && accountConfig.accountType;
|
|
25
|
-
trackCommandUsage('project-upload', { type: accountType }, derivedAccountId);
|
|
26
25
|
const { projectConfig, projectDir } = await getProjectConfig();
|
|
26
|
+
trackCommandUsage('project-upload', { type: accountType }, derivedAccountId);
|
|
27
27
|
validateProjectConfig(projectConfig, projectDir);
|
|
28
28
|
await ensureProjectExists(derivedAccountId, projectConfig.name, {
|
|
29
29
|
forceCreate,
|
|
30
30
|
uploadCommand: true,
|
|
31
31
|
});
|
|
32
32
|
try {
|
|
33
|
-
const { result, uploadError } = await handleProjectUpload(derivedAccountId, projectConfig, projectDir, pollProjectBuildAndDeploy, message);
|
|
33
|
+
const { result, uploadError } = await handleProjectUpload(derivedAccountId, projectConfig, projectDir, pollProjectBuildAndDeploy, message, options.translate);
|
|
34
34
|
if (uploadError) {
|
|
35
35
|
if (isSpecifiedError(uploadError, {
|
|
36
36
|
subCategory: PROJECT_ERROR_TYPES.PROJECT_LOCKED,
|
|
@@ -80,6 +80,11 @@ exports.builder = yargs => {
|
|
|
80
80
|
type: 'string',
|
|
81
81
|
default: '',
|
|
82
82
|
},
|
|
83
|
+
translate: {
|
|
84
|
+
hidden: true,
|
|
85
|
+
type: 'boolean',
|
|
86
|
+
default: false,
|
|
87
|
+
},
|
|
83
88
|
});
|
|
84
89
|
yargs.example([['$0 project upload', i18n(`${i18nKey}.examples.default`)]]);
|
|
85
90
|
addConfigOptions(yargs);
|
package/lib/projects/upload.d.ts
CHANGED
|
@@ -5,5 +5,5 @@ type ProjectUploadResult<T> = {
|
|
|
5
5
|
result?: T;
|
|
6
6
|
uploadError?: unknown;
|
|
7
7
|
};
|
|
8
|
-
export declare function handleProjectUpload<T>(accountId: number, projectConfig: ProjectConfig, projectDir: string, callbackFunc: ProjectUploadCallbackFunction<T>, uploadMessage: string): Promise<ProjectUploadResult<T>>;
|
|
8
|
+
export declare function handleProjectUpload<T>(accountId: number, projectConfig: ProjectConfig, projectDir: string, callbackFunc: ProjectUploadCallbackFunction<T>, uploadMessage: string, sendIR?: boolean): Promise<ProjectUploadResult<T>>;
|
|
9
9
|
export {};
|
package/lib/projects/upload.js
CHANGED
|
@@ -15,8 +15,11 @@ const SpinniesManager_1 = __importDefault(require("../ui/SpinniesManager"));
|
|
|
15
15
|
const ui_1 = require("../ui");
|
|
16
16
|
const lang_1 = require("../lang");
|
|
17
17
|
const exitCodes_1 = require("../enums/exitCodes");
|
|
18
|
+
const project_parsing_lib_1 = require("@hubspot/project-parsing-lib");
|
|
19
|
+
const errorHandlers_1 = require("../errorHandlers");
|
|
20
|
+
const node_util_1 = __importDefault(require("node:util"));
|
|
18
21
|
const i18nKey = 'lib.projectUpload';
|
|
19
|
-
async function uploadProjectFiles(accountId, projectName, filePath, uploadMessage, platformVersion) {
|
|
22
|
+
async function uploadProjectFiles(accountId, projectName, filePath, uploadMessage, platformVersion, intermediateRepresentation) {
|
|
20
23
|
SpinniesManager_1.default.init({});
|
|
21
24
|
const accountIdentifier = (0, ui_1.uiAccountDescription)(accountId);
|
|
22
25
|
SpinniesManager_1.default.add('upload', {
|
|
@@ -29,7 +32,7 @@ async function uploadProjectFiles(accountId, projectName, filePath, uploadMessag
|
|
|
29
32
|
let buildId;
|
|
30
33
|
let error;
|
|
31
34
|
try {
|
|
32
|
-
const { data: upload } = await (0, projects_1.uploadProject)(accountId, projectName, filePath, uploadMessage, platformVersion);
|
|
35
|
+
const { data: upload } = await (0, projects_1.uploadProject)(accountId, projectName, filePath, uploadMessage, platformVersion, intermediateRepresentation);
|
|
33
36
|
buildId = upload.buildId;
|
|
34
37
|
SpinniesManager_1.default.succeed('upload', {
|
|
35
38
|
text: (0, lang_1.i18n)(`${i18nKey}.uploadProjectFiles.succeed`, {
|
|
@@ -55,7 +58,7 @@ async function uploadProjectFiles(accountId, projectName, filePath, uploadMessag
|
|
|
55
58
|
}
|
|
56
59
|
return { buildId, error };
|
|
57
60
|
}
|
|
58
|
-
async function handleProjectUpload(accountId, projectConfig, projectDir, callbackFunc, uploadMessage) {
|
|
61
|
+
async function handleProjectUpload(accountId, projectConfig, projectDir, callbackFunc, uploadMessage, sendIR = false) {
|
|
59
62
|
const srcDir = path_1.default.resolve(projectDir, projectConfig.srcDir);
|
|
60
63
|
const filenames = fs_extra_1.default.readdirSync(srcDir);
|
|
61
64
|
if (!filenames || filenames.length === 0) {
|
|
@@ -74,7 +77,27 @@ async function handleProjectUpload(accountId, projectConfig, projectDir, callbac
|
|
|
74
77
|
logger_1.logger.debug((0, lang_1.i18n)(`${i18nKey}.handleProjectUpload.compressed`, {
|
|
75
78
|
byteCount: archive.pointer(),
|
|
76
79
|
}));
|
|
77
|
-
|
|
80
|
+
let intermediateRepresentation;
|
|
81
|
+
if (sendIR) {
|
|
82
|
+
try {
|
|
83
|
+
intermediateRepresentation = await (0, project_parsing_lib_1.translate)({
|
|
84
|
+
projectSourceDir: path_1.default.join(projectDir, projectConfig.srcDir),
|
|
85
|
+
platformVersion: projectConfig.platformVersion,
|
|
86
|
+
accountId,
|
|
87
|
+
});
|
|
88
|
+
logger_1.logger.debug(node_util_1.default.inspect(intermediateRepresentation, false, null, true));
|
|
89
|
+
}
|
|
90
|
+
catch (e) {
|
|
91
|
+
if ((0, project_parsing_lib_1.isTranslationError)(e)) {
|
|
92
|
+
logger_1.logger.error(e.toString());
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
(0, errorHandlers_1.logError)(e);
|
|
96
|
+
}
|
|
97
|
+
return process.exit(exitCodes_1.EXIT_CODES.ERROR);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
const { buildId, error } = await uploadProjectFiles(accountId, projectConfig.name, tempFile.name, uploadMessage, projectConfig.platformVersion, intermediateRepresentation);
|
|
78
101
|
if (error) {
|
|
79
102
|
resolve({ uploadError: error });
|
|
80
103
|
}
|
package/package.json
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hubspot/cli",
|
|
3
|
-
"version": "7.0.
|
|
3
|
+
"version": "7.0.8-experimental.0",
|
|
4
4
|
"description": "The official CLI for developing on HubSpot",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": "https://github.com/HubSpot/hubspot-cli",
|
|
7
7
|
"dependencies": {
|
|
8
|
-
"@hubspot/local-dev-lib": "
|
|
8
|
+
"@hubspot/local-dev-lib": "0.1.1-experimental.0",
|
|
9
|
+
"@hubspot/project-parsing-lib": "0.0.3-experimental.0",
|
|
9
10
|
"@hubspot/serverless-dev-runtime": "7.0.1",
|
|
10
11
|
"@hubspot/theme-preview-dev-server": "0.0.10",
|
|
11
|
-
"@hubspot/ui-extensions-dev-server": "0.8.
|
|
12
|
+
"@hubspot/ui-extensions-dev-server": "0.8.40",
|
|
12
13
|
"archiver": "^7.0.1",
|
|
13
14
|
"chalk": "^4.1.2",
|
|
14
15
|
"chokidar": "^3.0.1",
|