function getList(list, token, done) { az.listBlobsSegmentedWithPrefix(self.container, self.prefix, token, function (err, data) { if (err) throw new Error('az.listBlobsSegmented failed'); list = list.concat(data.entries); if (data.continuationToken) return getList(list, data.continuationToken, done); done(err, list); }); }
function deleteAzureDir(container, prefix, done) { function getList(list, token, done) { az.listBlobsSegmentedWithPrefix(container, prefix, token, function (err, data) { if (err) throw new Error('az.listBlobsSegmented failed'); list = list.concat(data.entries); if (data.continuationToken) return getList(list, data.continuationToken, done); done(err, list); }); } getList([], null, function (err, res) { if (!res || !res.length) return done(); let toDelete = res.length; res.forEach(function (element) { az.deleteBlob(container, element.name, function (err) { if (--toDelete <= 0) done(err); }); }); }); }