Skip to content
This repository has been archived by the owner on Oct 28, 2022. It is now read-only.

PB2 tests #828

Open
ejacox opened this issue Feb 24, 2017 · 4 comments
Open

PB2 tests #828

ejacox opened this issue Feb 24, 2017 · 4 comments
Assignees
Labels

Comments

@ejacox
Copy link
Contributor

ejacox commented Feb 24, 2017

The schema tests are failing if the pb2 files are not up to date. These tests should not depend on python specific files.

@kozbo
Copy link
Contributor

kozbo commented Feb 24, 2017

This seems like a high priority to me. +1

@kozbo kozbo added this to the 2017-00 v0.6.0a10 milestone Feb 24, 2017
@david4096
Copy link
Member

We would like to isolate the requirements for the protoc binary to the schemas repository. In order to support this feature we added the compiled proto to the repository. This makes the developer experience a bit more challenging, as more steps are added to manage the compiled products in the source code.

This test is crucial if the pb2 are in the repository and to support this feature we can continue to include them in release products. If we make the requirement that intermediate build products (development builds) have the protoc binary available, then installation will fail if the binary is not available.

At release time this test is turned back on and the release manager creates the release product that includes the compiled proto. This process is similar to what you would expect creating compiled binary packages with a source release.

  • Add an exception that causes installation to fail without protoc present (and if the pb2 are not present)
  • Add documentation that shows how to generate bindings for development/testing
  • Add a skiptest to this test
  • Add documentation for release that describes what to run to generate release products, remove skip-test

This issue points to a larger concern of managing our multi-lingual release process, I would like to reinstate the feature that allows folks to modify proto, run CI, it works!. One could do that now by adding the skip test and throwing an exception instead of passing when protoc isn't present.

@david4096
Copy link
Member

david4096 commented Mar 1, 2017

You can let travis make build artifacts and then use them for the deploy:
https://docs.travis-ci.com/user/deployment/pypi/#Releasing-build-artifacts

@dcolligan maybe its a good way to exclude the tests from the release products? Perhaps we can use the before_deploy to remove the tests directory?

@david4096
Copy link
Member

I think we're choosing to work on this in the next cycle as the release product itself will be the same. The difference is that we expect that in the future, installation of a development package from source will fail in the absence of protoc.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

4 participants