Merge branch 'master' of ssh://bitbucket.org/yackob03/quay
This commit is contained in:
commit
68ecebc704
3 changed files with 33 additions and 8 deletions
|
@ -29,6 +29,7 @@ def upgrade():
|
||||||
def downgrade():
|
def downgrade():
|
||||||
schema = gen_sqlalchemy_metadata(all_models)
|
schema = gen_sqlalchemy_metadata(all_models)
|
||||||
|
|
||||||
|
logentrykind = schema.tables['logentrykind']
|
||||||
op.execute(
|
op.execute(
|
||||||
(logentrykind.delete()
|
(logentrykind.delete()
|
||||||
.where(logentrykind.c.name == op.inline_literal('regenerate_robot_token')))
|
.where(logentrykind.c.name == op.inline_literal('regenerate_robot_token')))
|
||||||
|
|
|
@ -1543,7 +1543,7 @@ quayApp = angular.module('quay', quayDependencies, function($provide, cfpLoading
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
planService.changePlan = function($scope, orgname, planId, callbacks) {
|
planService.changePlan = function($scope, orgname, planId, callbacks, opt_async) {
|
||||||
if (!Features.BILLING) { return; }
|
if (!Features.BILLING) { return; }
|
||||||
|
|
||||||
if (callbacks['started']) {
|
if (callbacks['started']) {
|
||||||
|
@ -1556,7 +1556,7 @@ quayApp = angular.module('quay', quayDependencies, function($provide, cfpLoading
|
||||||
planService.getCardInfo(orgname, function(cardInfo) {
|
planService.getCardInfo(orgname, function(cardInfo) {
|
||||||
if (plan.price > 0 && (previousSubscribeFailure || !cardInfo.last4)) {
|
if (plan.price > 0 && (previousSubscribeFailure || !cardInfo.last4)) {
|
||||||
var title = cardInfo.last4 ? 'Subscribe' : 'Start Trial ({{amount}} plan)';
|
var title = cardInfo.last4 ? 'Subscribe' : 'Start Trial ({{amount}} plan)';
|
||||||
planService.showSubscribeDialog($scope, orgname, planId, callbacks, title);
|
planService.showSubscribeDialog($scope, orgname, planId, callbacks, title, /* async */true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1629,9 +1629,34 @@ quayApp = angular.module('quay', quayDependencies, function($provide, cfpLoading
|
||||||
return email;
|
return email;
|
||||||
};
|
};
|
||||||
|
|
||||||
planService.showSubscribeDialog = function($scope, orgname, planId, callbacks, opt_title) {
|
planService.showSubscribeDialog = function($scope, orgname, planId, callbacks, opt_title, opt_async) {
|
||||||
if (!Features.BILLING) { return; }
|
if (!Features.BILLING) { return; }
|
||||||
|
|
||||||
|
// If the async parameter is true and this is a browser that does not allow async popup of the
|
||||||
|
// Stripe dialog (such as Mobile Safari or IE), show a bootbox to show the dialog instead.
|
||||||
|
var isIE = navigator.appName.indexOf("Internet Explorer") != -1;
|
||||||
|
var isMobileSafari = navigator.userAgent.match(/(iPod|iPhone|iPad)/) && navigator.userAgent.match(/AppleWebKit/);
|
||||||
|
|
||||||
|
if (opt_async && (isIE || isMobileSafari)) {
|
||||||
|
bootbox.dialog({
|
||||||
|
"message": "Please click 'Subscribe' to continue",
|
||||||
|
"buttons": {
|
||||||
|
"subscribe": {
|
||||||
|
"label": "Subscribe",
|
||||||
|
"className": "btn-primary",
|
||||||
|
"callback": function() {
|
||||||
|
planService.showSubscribeDialog($scope, orgname, planId, callbacks, opt_title, false);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"close": {
|
||||||
|
"label": "Cancel",
|
||||||
|
"className": "btn-default"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (callbacks['opening']) {
|
if (callbacks['opening']) {
|
||||||
callbacks['opening']();
|
callbacks['opening']();
|
||||||
}
|
}
|
||||||
|
@ -3904,7 +3929,7 @@ quayApp.directive('planManager', function () {
|
||||||
return true;
|
return true;
|
||||||
};
|
};
|
||||||
|
|
||||||
$scope.changeSubscription = function(planId) {
|
$scope.changeSubscription = function(planId, opt_async) {
|
||||||
if ($scope.planChanging) { return; }
|
if ($scope.planChanging) { return; }
|
||||||
|
|
||||||
var callbacks = {
|
var callbacks = {
|
||||||
|
@ -3918,7 +3943,7 @@ quayApp.directive('planManager', function () {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
PlanService.changePlan($scope, $scope.organization, planId, callbacks);
|
PlanService.changePlan($scope, $scope.organization, planId, callbacks, opt_async);
|
||||||
};
|
};
|
||||||
|
|
||||||
$scope.cancelSubscription = function() {
|
$scope.cancelSubscription = function() {
|
||||||
|
@ -3981,7 +4006,7 @@ quayApp.directive('planManager', function () {
|
||||||
if ($scope.readyForPlan) {
|
if ($scope.readyForPlan) {
|
||||||
var planRequested = $scope.readyForPlan();
|
var planRequested = $scope.readyForPlan();
|
||||||
if (planRequested && planRequested != PlanService.getFreePlan()) {
|
if (planRequested && planRequested != PlanService.getFreePlan()) {
|
||||||
$scope.changeSubscription(planRequested);
|
$scope.changeSubscription(planRequested, /* async */true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -41,8 +41,7 @@ def matches_system_error(status_str):
|
||||||
""" Returns true if the given status string matches a known system error in the
|
""" Returns true if the given status string matches a known system error in the
|
||||||
Docker builder.
|
Docker builder.
|
||||||
"""
|
"""
|
||||||
KNOWN_MATCHES = ['lxc-start: invalid', 'lxc-start: failed to', 'lxc-start: Permission denied',
|
KNOWN_MATCHES = ['lxc-start: invalid', 'lxc-start: failed to', 'lxc-start: Permission denied']
|
||||||
'lxc-start: The container failed']
|
|
||||||
|
|
||||||
for match in KNOWN_MATCHES:
|
for match in KNOWN_MATCHES:
|
||||||
# 10 because we might have a Unix control code at the start.
|
# 10 because we might have a Unix control code at the start.
|
||||||
|
|
Reference in a new issue