Created
December 6, 2014 00:00
-
-
Save timgshi/3bd9841df414dbba474e to your computer and use it in GitHub Desktop.
VENVersionTracker with DryDock on Parse
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // 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(); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 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