Small tweaks
This commit is contained in:
parent
7a9dfd2260
commit
fac3f4c5be
|
@ -52,7 +52,7 @@ function createToken(scopes = {}) {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
const RevokedTokensSet = "revoked-tokens";
|
const revokedTokensSet = "revoked-tokens";
|
||||||
|
|
||||||
function verifyToken(token) {
|
function verifyToken(token) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
|
@ -63,7 +63,7 @@ function verifyToken(token) {
|
||||||
reject(error);
|
reject(error);
|
||||||
} else {
|
} else {
|
||||||
if (payload.jti) {
|
if (payload.jti) {
|
||||||
db.sismember(RevokedTokensSet, payload.jti, (error, value) => {
|
db.sismember(revokedTokensSet, payload.jti, (error, value) => {
|
||||||
if (error) {
|
if (error) {
|
||||||
reject(error);
|
reject(error);
|
||||||
} else {
|
} else {
|
||||||
|
@ -82,7 +82,7 @@ function revokeToken(token) {
|
||||||
return verifyToken(token).then(payload => {
|
return verifyToken(token).then(payload => {
|
||||||
if (payload) {
|
if (payload) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
db.sadd(RevokedTokensSet, payload.jti, error => {
|
db.sadd(revokedTokensSet, payload.jti, error => {
|
||||||
if (error) {
|
if (error) {
|
||||||
reject(error);
|
reject(error);
|
||||||
} else {
|
} else {
|
||||||
|
@ -96,7 +96,7 @@ function revokeToken(token) {
|
||||||
|
|
||||||
function removeAllRevokedTokens() {
|
function removeAllRevokedTokens() {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
db.del(RevokedTokensSet, error => {
|
db.del(revokedTokensSet, error => {
|
||||||
if (error) {
|
if (error) {
|
||||||
reject(error);
|
reject(error);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
const db = require("./utils/redis");
|
const db = require("./utils/redis");
|
||||||
|
|
||||||
const BlacklistSet = "blacklisted-packages";
|
const blacklistSet = "blacklisted-packages";
|
||||||
|
|
||||||
function addPackage(packageName) {
|
function addPackage(packageName) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
db.sadd(BlacklistSet, packageName, (error, value) => {
|
db.sadd(blacklistSet, packageName, (error, value) => {
|
||||||
if (error) {
|
if (error) {
|
||||||
reject(error);
|
reject(error);
|
||||||
} else {
|
} else {
|
||||||
|
@ -16,7 +16,7 @@ function addPackage(packageName) {
|
||||||
|
|
||||||
function removePackage(packageName) {
|
function removePackage(packageName) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
db.srem(BlacklistSet, packageName, (error, value) => {
|
db.srem(blacklistSet, packageName, (error, value) => {
|
||||||
if (error) {
|
if (error) {
|
||||||
reject(error);
|
reject(error);
|
||||||
} else {
|
} else {
|
||||||
|
@ -28,7 +28,7 @@ function removePackage(packageName) {
|
||||||
|
|
||||||
function removeAllPackages() {
|
function removeAllPackages() {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
db.del(BlacklistSet, error => {
|
db.del(blacklistSet, error => {
|
||||||
if (error) {
|
if (error) {
|
||||||
reject(error);
|
reject(error);
|
||||||
} else {
|
} else {
|
||||||
|
@ -40,7 +40,7 @@ function removeAllPackages() {
|
||||||
|
|
||||||
function getPackages() {
|
function getPackages() {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
db.smembers(BlacklistSet, (error, value) => {
|
db.smembers(blacklistSet, (error, value) => {
|
||||||
if (error) {
|
if (error) {
|
||||||
reject(error);
|
reject(error);
|
||||||
} else {
|
} else {
|
||||||
|
@ -52,7 +52,7 @@ function getPackages() {
|
||||||
|
|
||||||
function includesPackage(packageName) {
|
function includesPackage(packageName) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
db.sismember(BlacklistSet, packageName, (error, value) => {
|
db.sismember(blacklistSet, packageName, (error, value) => {
|
||||||
if (error) {
|
if (error) {
|
||||||
reject(error);
|
reject(error);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -3,22 +3,22 @@ const invariant = require("invariant");
|
||||||
const gunzip = require("gunzip-maybe");
|
const gunzip = require("gunzip-maybe");
|
||||||
const ndjson = require("ndjson");
|
const ndjson = require("ndjson");
|
||||||
|
|
||||||
const CloudflareAPIURL = "https://api.cloudflare.com";
|
const cloudflareAPIURL = "https://api.cloudflare.com";
|
||||||
const CloudflareEmail = process.env.CLOUDFLARE_EMAIL;
|
const cloudflareEmail = process.env.CLOUDFLARE_EMAIL;
|
||||||
const CloudflareKey = process.env.CLOUDFLARE_KEY;
|
const cloudflareKey = process.env.CLOUDFLARE_KEY;
|
||||||
|
|
||||||
invariant(
|
invariant(
|
||||||
CloudflareEmail,
|
cloudflareEmail,
|
||||||
"Missing the $CLOUDFLARE_EMAIL environment variable"
|
"Missing the $CLOUDFLARE_EMAIL environment variable"
|
||||||
);
|
);
|
||||||
|
|
||||||
invariant(CloudflareKey, "Missing the $CLOUDFLARE_KEY environment variable");
|
invariant(cloudflareKey, "Missing the $CLOUDFLARE_KEY environment variable");
|
||||||
|
|
||||||
function get(path, headers) {
|
function get(path, headers) {
|
||||||
return fetch(`${CloudflareAPIURL}/client/v4${path}`, {
|
return fetch(`${cloudflareAPIURL}/client/v4${path}`, {
|
||||||
headers: Object.assign({}, headers, {
|
headers: Object.assign({}, headers, {
|
||||||
"X-Auth-Email": CloudflareEmail,
|
"X-Auth-Email": cloudflareEmail,
|
||||||
"X-Auth-Key": CloudflareKey
|
"X-Auth-Key": cloudflareKey
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
const db = require("./utils/redis");
|
const db = require("./utils/redis");
|
||||||
|
|
||||||
const CloudflareAPI = require("./CloudflareAPI");
|
const CloudflareAPI = require("./CloudflareAPI");
|
||||||
const BlacklistAPI = require("./BlacklistAPI");
|
const BlacklistAPI = require("./BlacklistAPI");
|
||||||
|
|
||||||
|
|
|
@ -1,16 +1,17 @@
|
||||||
const parseURL = require("url").parse;
|
const parseURL = require("url").parse;
|
||||||
const startOfDay = require("date-fns/start_of_day");
|
const startOfDay = require("date-fns/start_of_day");
|
||||||
const addDays = require("date-fns/add_days");
|
const addDays = require("date-fns/add_days");
|
||||||
const parsePackageURL = require("./utils/parsePackageURL");
|
|
||||||
const CloudflareAPI = require("./CloudflareAPI");
|
|
||||||
const StatsAPI = require("./StatsAPI");
|
|
||||||
|
|
||||||
const db = require("./utils/redis");
|
const db = require("./utils/redis");
|
||||||
|
const parsePackageURL = require("./utils/parsePackageURL");
|
||||||
|
|
||||||
|
const CloudflareAPI = require("./CloudflareAPI");
|
||||||
|
const StatsAPI = require("./StatsAPI");
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Domains we want to analyze.
|
* Domains we want to analyze.
|
||||||
*/
|
*/
|
||||||
const DomainNames = [
|
const domainNames = [
|
||||||
"unpkg.com"
|
"unpkg.com"
|
||||||
//"npmcdn.com" // We don't have log data on npmcdn.com yet :/
|
//"npmcdn.com" // We don't have log data on npmcdn.com yet :/
|
||||||
];
|
];
|
||||||
|
@ -18,7 +19,7 @@ const DomainNames = [
|
||||||
/**
|
/**
|
||||||
* The window of time to download in a single fetch.
|
* The window of time to download in a single fetch.
|
||||||
*/
|
*/
|
||||||
const LogWindowSeconds = 30;
|
const logWindowSeconds = 30;
|
||||||
|
|
||||||
function getSeconds(date) {
|
function getSeconds(date) {
|
||||||
return Math.floor(date.getTime() / 1000);
|
return Math.floor(date.getTime() / 1000);
|
||||||
|
@ -207,7 +208,7 @@ function startZone(zone) {
|
||||||
const maxSeconds = toSeconds(now - oneMinute * 30);
|
const maxSeconds = toSeconds(now - oneMinute * 30);
|
||||||
|
|
||||||
if (startSeconds < maxSeconds) {
|
if (startSeconds < maxSeconds) {
|
||||||
const endSeconds = startSeconds + LogWindowSeconds;
|
const endSeconds = startSeconds + logWindowSeconds;
|
||||||
|
|
||||||
ingestLogs(zone, startSeconds, endSeconds).then(
|
ingestLogs(zone, startSeconds, endSeconds).then(
|
||||||
function() {
|
function() {
|
||||||
|
@ -228,7 +229,7 @@ function startZone(zone) {
|
||||||
takeATurn();
|
takeATurn();
|
||||||
}
|
}
|
||||||
|
|
||||||
Promise.all(DomainNames.map(CloudflareAPI.getZones)).then(results => {
|
Promise.all(domainNames.map(CloudflareAPI.getZones)).then(results => {
|
||||||
const zones = results.reduce((memo, zones) => {
|
const zones = results.reduce((memo, zones) => {
|
||||||
return memo.concat(zones);
|
return memo.concat(zones);
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
const fs = require("fs");
|
const fs = require("fs");
|
||||||
const path = require("path");
|
const path = require("path");
|
||||||
|
|
||||||
const getFileStats = require("./getFileStats");
|
const getFileStats = require("./getFileStats");
|
||||||
|
|
||||||
function getEntries(dir) {
|
function getEntries(dir) {
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
const fs = require("fs");
|
const fs = require("fs");
|
||||||
const path = require("path");
|
const path = require("path");
|
||||||
const SRIToolbox = require("sri-toolbox");
|
const SRIToolbox = require("sri-toolbox");
|
||||||
|
|
||||||
const getFileContentType = require("./getFileContentType");
|
const getFileContentType = require("./getFileContentType");
|
||||||
const getFileStats = require("./getFileStats");
|
const getFileStats = require("./getFileStats");
|
||||||
const getFileType = require("./getFileType");
|
const getFileType = require("./getFileType");
|
||||||
|
|
|
@ -2,11 +2,11 @@ const redis = require("redis");
|
||||||
|
|
||||||
redis.debug_mode = process.env.DEBUG_REDIS != null;
|
redis.debug_mode = process.env.DEBUG_REDIS != null;
|
||||||
|
|
||||||
const RedisURL =
|
const redisURL =
|
||||||
process.env.OPENREDIS_URL ||
|
process.env.OPENREDIS_URL ||
|
||||||
process.env.REDIS_URL ||
|
process.env.REDIS_URL ||
|
||||||
"redis://localhost:6379";
|
"redis://localhost:6379";
|
||||||
|
|
||||||
const client = redis.createClient(RedisURL);
|
const client = redis.createClient(redisURL);
|
||||||
|
|
||||||
module.exports = client;
|
module.exports = client;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
const URL = require("whatwg-url");
|
const URL = require("whatwg-url");
|
||||||
const warning = require("warning");
|
const warning = require("warning");
|
||||||
|
|
||||||
const BareIdentifierFormat = /^((?:@[^\/]+\/)?[^\/]+)(\/.*)?$/;
|
const bareIdentifierFormat = /^((?:@[^\/]+\/)?[^\/]+)(\/.*)?$/;
|
||||||
|
|
||||||
function unpkgRewriteBabelPlugin(dependencies = {}) {
|
function unpkgRewriteBabelPlugin(dependencies = {}) {
|
||||||
return {
|
return {
|
||||||
|
@ -22,7 +22,7 @@ function unpkgRewriteBabelPlugin(dependencies = {}) {
|
||||||
path.node.source.value = `${path.node.source.value}?module`;
|
path.node.source.value = `${path.node.source.value}?module`;
|
||||||
} else {
|
} else {
|
||||||
// "bare" identifier
|
// "bare" identifier
|
||||||
const match = BareIdentifierFormat.exec(path.node.source.value);
|
const match = bareIdentifierFormat.exec(path.node.source.value);
|
||||||
const packageName = match[1];
|
const packageName = match[1];
|
||||||
const file = match[2] || "";
|
const file = match[2] || "";
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue