UNPKG

@bioneisme/greenfield-cli

Version:
70 lines (69 loc) 3.15 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.createFolder = void 0; const sdk_1 = require("../../utils/sdk"); const parse_1 = require("../../helpers/parse"); const config_1 = require("../../utils/config"); function createFolder(urlPath) { return __awaiter(this, void 0, void 0, function* () { try { // @ts-ignore const [bucketName, objectName] = (0, parse_1.parseBucketAndObject)(urlPath); if (!bucketName || !objectName) { console.error("URL is not in the correct format. Unable to parse bucket name and object name."); return; } const publicKey = String(config_1.config.get("publicKey")); if (!publicKey || publicKey === "undefined") { console.error("public key is required. Please set it in the system config"); return; } const address = String(config_1.config.get("spAddress")); if (!address || address === "undefined") { console.error("storage provider address is required. Please set it in the system config"); return; } const sp = yield sdk_1.GreenfieldClient.client.sp.getStorageProviderInfo(address); if (sp == null) { console.error("SP not found"); return; } const spInfo = { endpoint: sp.endpoint, secondarySpAddresses: [ sp.gcAddress, sp.approvalAddress, sp.operatorAddress, ], sealAddress: sp.sealAddress, primarySpAddress: sp.fundingAddress, }; const blob = new Blob([""], { type: "text/xml" }); const dummyFile = new File([blob], "dummyfile"); const msg = { bucketName: bucketName, objectName: "", creator: "ss", visibility: "VISIBILITY_TYPE_UNSPECIFIED", redundancyType: "REDUNDANCY_EC_TYPE", file: dummyFile, expectSecondarySpAddresses: [], spInfo: spInfo, }; yield sdk_1.GreenfieldClient.client.object.createFolder(msg); } catch (e) { console.error(`bucket creation failed: ${e}`); } }); } exports.createFolder = createFolder;