1*6dbdd20aSAndroid Build Coastguard Worker#!/usr/bin/env python3 2*6dbdd20aSAndroid Build Coastguard Worker# Copyright (C) 2024 The Android Open Source Project 3*6dbdd20aSAndroid Build Coastguard Worker# 4*6dbdd20aSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); 5*6dbdd20aSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License. 6*6dbdd20aSAndroid Build Coastguard Worker# You may obtain a copy of the License at 7*6dbdd20aSAndroid Build Coastguard Worker# 8*6dbdd20aSAndroid Build Coastguard Worker# http://www.apache.org/licenses/LICENSE-2.0 9*6dbdd20aSAndroid Build Coastguard Worker# 10*6dbdd20aSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software 11*6dbdd20aSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, 12*6dbdd20aSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*6dbdd20aSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and 14*6dbdd20aSAndroid Build Coastguard Worker# limitations under the License. 15*6dbdd20aSAndroid Build Coastguard Worker 16*6dbdd20aSAndroid Build Coastguard Workerimport subprocess 17*6dbdd20aSAndroid Build Coastguard Workerimport os 18*6dbdd20aSAndroid Build Coastguard Worker""" 19*6dbdd20aSAndroid Build Coastguard WorkerCompile the gRPC python code for Clickhouse for Bigtrace 20*6dbdd20aSAndroid Build Coastguard Workerand modify the include paths to point to the correct file paths 21*6dbdd20aSAndroid Build Coastguard Worker 22*6dbdd20aSAndroid Build Coastguard Worker""" 23*6dbdd20aSAndroid Build Coastguard Worker 24*6dbdd20aSAndroid Build Coastguard Worker 25*6dbdd20aSAndroid Build Coastguard Workerdef main(): 26*6dbdd20aSAndroid Build Coastguard Worker subprocess.run([ 27*6dbdd20aSAndroid Build Coastguard Worker "python3", 28*6dbdd20aSAndroid Build Coastguard Worker "-m", 29*6dbdd20aSAndroid Build Coastguard Worker "grpc_tools.protoc", 30*6dbdd20aSAndroid Build Coastguard Worker "-I.", 31*6dbdd20aSAndroid Build Coastguard Worker "--python_out=python/perfetto/bigtrace_clickhouse", 32*6dbdd20aSAndroid Build Coastguard Worker "--pyi_out=python/perfetto/bigtrace_clickhouse", 33*6dbdd20aSAndroid Build Coastguard Worker "protos/perfetto/bigtrace/orchestrator.proto", 34*6dbdd20aSAndroid Build Coastguard Worker "protos/perfetto/trace_processor/trace_processor.proto", 35*6dbdd20aSAndroid Build Coastguard Worker "protos/perfetto/common/descriptor.proto", 36*6dbdd20aSAndroid Build Coastguard Worker "protos/perfetto/trace_processor/metatrace_categories.proto", 37*6dbdd20aSAndroid Build Coastguard Worker ]) 38*6dbdd20aSAndroid Build Coastguard Worker subprocess.run([ 39*6dbdd20aSAndroid Build Coastguard Worker "python3", 40*6dbdd20aSAndroid Build Coastguard Worker "-m", 41*6dbdd20aSAndroid Build Coastguard Worker "grpc_tools.protoc", 42*6dbdd20aSAndroid Build Coastguard Worker "-I.", 43*6dbdd20aSAndroid Build Coastguard Worker "--python_out=python/perfetto/bigtrace_clickhouse", 44*6dbdd20aSAndroid Build Coastguard Worker "--pyi_out=python/perfetto/bigtrace_clickhouse", 45*6dbdd20aSAndroid Build Coastguard Worker "--grpc_python_out=python/perfetto/bigtrace_clickhouse", 46*6dbdd20aSAndroid Build Coastguard Worker "protos/perfetto/bigtrace/orchestrator.proto", 47*6dbdd20aSAndroid Build Coastguard Worker ]) 48*6dbdd20aSAndroid Build Coastguard Worker subprocess.run([ 49*6dbdd20aSAndroid Build Coastguard Worker "sed", 50*6dbdd20aSAndroid Build Coastguard Worker "-i", 51*6dbdd20aSAndroid Build Coastguard Worker "-e", 52*6dbdd20aSAndroid Build Coastguard Worker "s/protos\.perfetto/\./", 53*6dbdd20aSAndroid Build Coastguard Worker "python/perfetto/bigtrace_clickhouse/protos/perfetto/bigtrace/orchestrator_pb2_grpc.py", 54*6dbdd20aSAndroid Build Coastguard Worker "python/perfetto/bigtrace_clickhouse/protos/perfetto/bigtrace/orchestrator_pb2.py", 55*6dbdd20aSAndroid Build Coastguard Worker "python/perfetto/bigtrace_clickhouse/protos/perfetto/bigtrace/orchestrator_pb2.pyi", 56*6dbdd20aSAndroid Build Coastguard Worker "python/perfetto/bigtrace_clickhouse/protos/perfetto/trace_processor/trace_processor_pb2.py", 57*6dbdd20aSAndroid Build Coastguard Worker "python/perfetto/bigtrace_clickhouse/protos/perfetto/trace_processor/trace_processor_pb2.pyi", 58*6dbdd20aSAndroid Build Coastguard Worker ]) 59*6dbdd20aSAndroid Build Coastguard Worker return 0 60*6dbdd20aSAndroid Build Coastguard Worker 61*6dbdd20aSAndroid Build Coastguard Worker 62*6dbdd20aSAndroid Build Coastguard Workerif __name__ == "__main__": 63*6dbdd20aSAndroid Build Coastguard Worker main() 64