1 #!/usr/bin/env python2.7
3 # Copyright 2018 gRPC authors.
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 # http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
17 import gen_build_yaml as gen
22 all_scenario_set = gen.generate_yaml()
23 all_scenario_set = all_scenario_set['tests']
24 json_run_localhost_scenarios = \
25 [item for item in all_scenario_set if item['name'] == 'json_run_localhost']
26 json_run_localhost_arg_set = \
27 [item['args'][1] for item in json_run_localhost_scenarios \
28 if 'args' in item and len(item['args']) > 1]
29 deserialized_scenarios = [json.loads(item)['scenarios'][0] \
30 for item in json_run_localhost_arg_set]
31 all_scenarios = {scenario['name'].encode('ascii', 'ignore'): \
32 '\'{\'scenarios\' : [' + json.dumps(scenario) + ']}\'' \
33 for scenario in deserialized_scenarios}
35 serialized_scenarios_str = str(all_scenarios).encode('ascii', 'ignore')
36 with open('json_run_localhost_scenarios.bzl', 'wb') as f:
37 f.write('"""Scenarios run on localhost."""\n\n')
38 f.write('JSON_RUN_LOCALHOST_SCENARIOS = ' + serialized_scenarios_str +