From 9e276fd4747aff4d2b3885f5da47a1677c9f6e47 Mon Sep 17 00:00:00 2001 From: Kyle Madsen Date: Wed, 23 Sep 2020 14:20:49 -0700 Subject: [PATCH] wip --- validator/src/download.js | 3 ++- validator/src/index.js | 19 ++++++++++++++++--- validator/src/releases.js | 14 ++++++++++---- validator/src/runner.js | 3 ++- 4 files changed, 30 insertions(+), 9 deletions(-) diff --git a/validator/src/download.js b/validator/src/download.js index 18611b279..81a601aee 100644 --- a/validator/src/download.js +++ b/validator/src/download.js @@ -61,7 +61,8 @@ async function downloadService(release, service) { async function downloadRelease(release, callback) { const sdkServices = downloadService(release, "mapbox-sdk-services") const sdkGeojson = downloadService(release, "mapbox-sdk-geojson") - let values = await Promise.all([sdkServices, sdkGeojson]); + const directionsModels = downloadService(release, "mapbox-sdk-directions-models") + let values = await Promise.all([sdkServices, sdkGeojson, directionsModels]); callback(values) } diff --git a/validator/src/index.js b/validator/src/index.js index dbe8e7788..9531e5a2f 100755 --- a/validator/src/index.js +++ b/validator/src/index.js @@ -4,10 +4,23 @@ const releases = require('./releases') const download = require('./download') const runner = require('./runner') +const DEFAULT_SERVICE = "mapbox-sdk-services" + const argv = require('yargs') - .command('list-releases', 'Request available versions', (argv) => { - releases.listReleases(releases => { - console.log(releases) + .command('list-services', 'Request info on all available services', (argv) => { + releases.listServices(services => { + console.log(services) + }); + }) + .command('list-releases [service]', 'Request releases for a specific service', (argv) => { + argv.positional('service', { + describe: 'The service you want to know the releases available', + type: 'string', + default:DEFAULT_SERVICE + }); + }, handler = (argv) => { + releases.listReleases(argv.service, release => { + console.log(release) }); }) .command('download ', 'Download specific release', (argv) => { diff --git a/validator/src/releases.js b/validator/src/releases.js index f6457de6a..fe53d6f75 100644 --- a/validator/src/releases.js +++ b/validator/src/releases.js @@ -2,14 +2,20 @@ const fetch = require("node-fetch"); const fs = require('fs'); module.exports = { - listReleases: function(callback) { - const versionUrl = "https://api.bintray.com/search/packages/maven?g=com.mapbox.mapboxsdk&a=mapbox-sdk-services" + listServices: function(callback) { + const servicesUrl = "https://api.bintray.com/search/packages/maven?g=com.mapbox.mapboxsdk" + fetch(servicesUrl, { method: 'GET' }) + .then( response => response.json() ) + .then( json => callback(json) ) + .catch( error => console.error('Unable to list services:', error) ); + }, + listReleases: function(service, callback) { + const versionUrl = `https://api.bintray.com/search/packages/maven?g=com.mapbox.mapboxsdk&a=${service}` fetch(versionUrl, { method: 'GET' }) .then( response => response.json() ) - .then( json => callback(json[0].versions) ) + .then( json => callback(json) ) .catch( error => console.error('Unable to list release versions:', error) ); }, - info: function(release, service) { const releaseDirectory = this.mkdir(release) const relativePath = `${releaseDirectory}/${service}.jar` diff --git a/validator/src/runner.js b/validator/src/runner.js index daac665b1..146ef7d81 100644 --- a/validator/src/runner.js +++ b/validator/src/runner.js @@ -6,6 +6,7 @@ function validateJsonData(release, data) { java.classpath.push(`./${releaseDirectory}/mapbox-sdk-services.jar`); java.classpath.push(`./${releaseDirectory}/mapbox-sdk-geojson.jar`); + java.classpath.push(`./${releaseDirectory}/mapbox-sdk-directions-models.jar`); // TODO :thinking: java.classpath.push("lib/gson-2.8.6.jar"); @@ -17,7 +18,7 @@ function validateJsonData(release, data) { console.log(`Completed ${release} without a crash`) } catch (err) { - console.log(`Completed ${release} with a CRASH`) + console.log(`Completed ${release} with a CRASH ${err}`) } }