diff options
Diffstat (limited to 'api')
| -rw-r--r-- | api/opendc/api/v2/portfolios/portfolioId/scenarios/endpoint.py | 6 | ||||
| -rw-r--r-- | api/opendc/api/v2/schedulers/endpoint.py | 12 |
2 files changed, 17 insertions, 1 deletions
diff --git a/api/opendc/api/v2/portfolios/portfolioId/scenarios/endpoint.py b/api/opendc/api/v2/portfolios/portfolioId/scenarios/endpoint.py index fc2cab16..2f042e06 100644 --- a/api/opendc/api/v2/portfolios/portfolioId/scenarios/endpoint.py +++ b/api/opendc/api/v2/portfolios/portfolioId/scenarios/endpoint.py @@ -1,5 +1,6 @@ from opendc.models.portfolio import Portfolio from opendc.models.scenario import Scenario +from opendc.models.topology import Topology from opendc.util.rest import Response @@ -32,8 +33,13 @@ def POST(request): scenario = Scenario(request.params_body['scenario']) + topology = Topology.from_id(scenario.obj['topology']['topologyId']) + topology.check_exists() + topology.check_user_access(request.google_id, True) + scenario.set_property('portfolioId', portfolio.get_id()) scenario.set_property('simulation', {'state': 'QUEUED'}) + scenario.set_property('topology.topologyId', topology.get_id()) scenario.insert() diff --git a/api/opendc/api/v2/schedulers/endpoint.py b/api/opendc/api/v2/schedulers/endpoint.py index 127b5f1a..f33159bf 100644 --- a/api/opendc/api/v2/schedulers/endpoint.py +++ b/api/opendc/api/v2/schedulers/endpoint.py @@ -1,6 +1,16 @@ from opendc.util.rest import Response -SCHEDULERS = ['core-mem'] +SCHEDULERS = [ + 'mem', + 'mem-inv', + 'core-mem', + 'core-mem-inv', + 'active-servers', + 'active-servers-inv', + 'provisioned-cores', + 'provisioned-cores-inv', + 'random' +] def GET(_): |
