This repository defines component-level APIs and common configuration formats for the Istio
platform. These definitions are specified using the protobuf
This repository depends only on the tools repository for tools used during build. This repository will not depend on any
other repositories. Except for tools, all other Istio repositories can take a dependency on the api repository.
When making changes to the protos in this repository, your changes must comply with the API guidelines.
After the protobuf definitions
are updated, the corresponding *pb.go and _pb2.py files must be
generated by running make clean generate and submitted as
part of the same PR as the updated definitions. Also make
proto-commit must be run to update the proto.lock file with new
If releasing a new tagged version, please update python/istio-api/setup.py version to reflect.
Backwards Incompatible Changes
If a PR tries to make backwards incompatible changes, it will be
blocked by protolock. To force these changes in, install
protolock and run
protolock commit --force.
You must include a note in your PR that you had to force the
protolock and why.