mirror of https://github.com/grpc/grpc.git
The C based gRPC (C++, Python, Ruby, Objective-C, PHP, C#)
https://grpc.io/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
1.4 KiB
39 lines
1.4 KiB
7 years ago
|
# Patches to grpc repo tags for the backwards compatibility interop tests
|
||
|
|
||
|
This directory has patch files that can be applied to different tags
|
||
|
of the grpc git repo in order to run the interop tests for a specific
|
||
|
language based on that tag.
|
||
|
|
||
|
For example, because the ruby interop tests do not run on the v1.0.1 tag out
|
||
|
of the box, but we still want to test compatibility of the 1.0.1 ruby release
|
||
|
with other versions, we can apply a patch to the v1.0.1 tag from this directory
|
||
|
that makes the necessary changes that are needed to run the ruby interop tests
|
||
|
from that tag. We can then use that patch to build the docker image for the
|
||
|
ruby v1.0.1 interop tests.
|
||
|
|
||
|
## How to add a new patch to this directory
|
||
|
|
||
|
Patch files in this directory are meant to be applied to a git tag
|
||
|
with a `git apply` command.
|
||
|
|
||
|
1. Under the `patches` directory, create a new subdirectory
|
||
|
titled `<language>_<git_tag>` for the git tag being modified.
|
||
|
|
||
|
2. `git checkout <git_tag>`
|
||
|
|
||
|
3. Make necessary modifications to the git repo at that tag.
|
||
|
|
||
|
4.
|
||
|
|
||
|
```
|
||
|
git diff > ~/git_repo.patch
|
||
|
git checkout <current working branch>
|
||
|
cp ~/git_repo.patch tools/interop_matrix/patches/<language>_<git_tag>/
|
||
|
```
|
||
|
|
||
|
5. Edit the `LANGUAGE_RELEASE_MATRIX` in `client_matrix.py` for your language/tag
|
||
|
and add a `'patch': [<files>,....]` entry to it's `dictionary`.
|
||
|
|
||
|
After doing this, the interop image creation script can apply that patch to the
|
||
|
tag with `git apply` before uploading to the test image repo.
|