Feature Request P2
Status Update
Comments
sh...@google.com <sh...@google.com> #3
Would you be able to provide an example app which produces an error for which gcloud doesn't report, but appcfg.py does?
sh...@google.com <sh...@google.com> #4
In this case it is not app specific, The 400 error is due to quota of the application versions being over the limit which is 10 (but for this specific project it has been increased to 60). So any project with more than 10 versions will experience this.
[Deleted User] <[Deleted User]> #5
[Comment deleted]
sh...@google.com <sh...@google.com> #6
I have forwarded this request/report to the engineering team. We will update this issue with any progress updates and a resolution.
Description
For example:
dispatch.yaml
-url: "*/api/*"
module: default
-url: "
module: mod-www
-url: "
module: mod-fun
And when I start the dev serve I get something like:
> dev_appserver.py api-server mod-www mod-fun dispatch.yaml
Starting API server at:
Starting dispatcher running at:
Starting module "default" running at:
Starting module "mod-www" running at:
Starting module "mod-fun" running at:
Since the development server doesn't support hostname dispatching I can't put something in my /etc/hosts/ that point to the dispatcher and hit the correct module (i.e. if I were to put additional testing entries in my dispatch.yaml that supported something like www.localhost it wouldn't work). But, if I make requests on port 8082 it does not dispatch the requests on path */api/* as it would if I was running in the app engine. It would be nice if when I hit a particular module port in the development server it would dispatch on the path setup in the dispatch.yaml.
I have worked around this by implementing my own dispatcher with a simple node server. It would be nice if the development server just handled this directly though. Here is an example workaround node server:
var express = require('express');
var devRest = require('dev-rest-proxy');
var appList = [];
[
{from: 3030, to: 8080},
{from: 3031, to: 8081},
{from: 3032, to: 8082},
{from: 3033, to: 8083}
].forEach(
function(item) {
createServer(item);
}
);
function createServer(portMap) {
var app = express();
appList.push(app);
app.all('/api/*', function(req, res) {
devRest.proxy(req,res, 'localhost', 8081);
});
app.all('*', function(req, res) {
devRest.proxy(req,res, 'localhost', portMap.to);
});
var server = app.listen(portMap.from, function(){
console.log('Express server listening on port ' + server.address().port);
});
}