Skip to content

Instantly share code, notes, and snippets.

@timgshi
Created December 6, 2014 00:00
Show Gist options
  • Select an option

  • Save timgshi/3bd9841df414dbba474e to your computer and use it in GitHub Desktop.

Select an option

Save timgshi/3bd9841df414dbba474e to your computer and use it in GitHub Desktop.
VENVersionTracker with DryDock on Parse
// These two lines are required to initialize Express in Cloud Code.
var express = require('express');
var app = express();
var versionTracker = require('cloud/versionTracker.js');
// Global app configuration section
app.set('views', 'cloud/views'); // Specify the folder to find templates
app.set('view engine', 'ejs'); // Set the template engine
app.use(express.bodyParser()); // Middleware for reading request body
app.get('/track/:channel', function(req, res) {
var channel = req.params.channel;
var bundleIdentifier = req.query['bundle_identifier'];
versionTracker.versionPackageForTrackerRequest(bundleIdentifier, channel).then(function(versionPackage) {
return res.send(versionPackage);
}, function(error) {
return res.status(500).send(error);
});
});
app.listen();
var VDDModelApp = Parse.Object.extend("VDDModelApp");
var versionPackageForTrackerRequest = function(bundleIdentifier, channel) {
var promise = new Parse.Promise();
var modelAppQuery = new Parse.Query(VDDModelApp);
modelAppQuery.equalTo("bundle_identifier", bundleIdentifier);
modelAppQuery.equalTo("version_channel", channel);
modelAppQuery.first().then(function(modelApp) {
if (!modelApp) {
promise.reject("No model app found that matches bundleIdentifier: " + bundleIdentifier + " and channel: " + channel);
} else {
var returnPackage = {};
var versionPackage = {};
versionPackage["number"] = modelApp.get("version_number");
versionPackage["mandatory"] = modelApp.get("mandatory_update") || false;
versionPackage["install_url"] = modelApp.get("install_url");
returnPackage["version"] = versionPackage;
promise.resolve(returnPackage);
}
});
return promise;
};
module.exports.versionPackageForTrackerRequest = versionPackageForTrackerRequest;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment