UNPKG

balena-cli

Version:

The official balena Command Line Interface

34 lines 1.42 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.BalenaPartition = void 0; exports.explorePartition = explorePartition; const imagefs = require("balena-image-fs"); const filedisk = require("file-disk"); const partitioninfo_1 = require("partitioninfo"); var BalenaPartition; (function (BalenaPartition) { BalenaPartition["BOOT"] = "boot"; BalenaPartition["ROOTA"] = "rootA"; BalenaPartition["ROOTB"] = "rootB"; BalenaPartition["STATE"] = "state"; BalenaPartition["DATA"] = "data"; })(BalenaPartition || (exports.BalenaPartition = BalenaPartition = {})); async function explorePartition(imagePath, partitionId, exploreFn) { return await filedisk.withOpenFile(imagePath, 'r', async (handle) => { const disk = new filedisk.FileDisk(handle, true, false, false); const partitionInfo = await (0, partitioninfo_1.getPartitions)(disk, { includeExtended: false, getLogical: true, }); const findResult = await imagefs.findPartition(disk, partitionInfo, [ `resin-${partitionId}`, `flash-${partitionId}`, `balena-${partitionId}`, ]); if (findResult == null) { throw new Error(`Can't find partition for ${partitionId}`); } return await imagefs.interact(disk, findResult.index, exploreFn); }); } //# sourceMappingURL=image-contents.js.map