-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use travis to automatically test builds on different platforms #625
Comments
That would be interesting to have Continuous Integration indeed. |
There isn't really a command for this, but it would be easy to add one. It wouldn't be any barrier (and you don't need to build recipes one by one anyway, for the testing). |
OK
Would you eventually be interested with a PR that demonstrates Travis-CI building few recipes? |
Sorry, I missed this reply (just noticed your edit) - yes, a PR for this would be really great! |
OK great, I've implemented it for my project https://travis-ci.org/AndreMiras/PyWallet it runs two builds:
Everything is here: https://github.com/AndreMiras/PyWallet/tree/v20170625/travis/ |
I'll try to take a look over the weekend.
So I believe if anything goes wrong (e.g. cross compilation failing) it will exit with status code other than zero and Travis CI should complain. Also I think we're free from adding any |
Sounds reasonable to me. I don't have any docker experience, and didn't even really know that this might be a convenient way to manage the install, but it would be great if it works. Thanks a lot for you efforts on this! |
Great! Yes in fact Docker makes complete sense in this, because it let us create a completely isolated, but light environment. And you can decide which base to use, I'm gonna go for the last LTS (currently ubuntu:16.04). |
This is a first step to python-for-android continuous integration. It currently only verifies that p4a creates an APK by cross compiling a limited set of recipes. How it works; On git push Travis "executes" `.travis.yml` instructions: 1. the `before_install` section runs `docker build` to prepare the environment 2. the `script` section is the actual test, building the APK with `docker run` 3. based the exit status Travis build will be green or red For example editing `pythonforandroid/recipes/hostpython2/__init__.py` and introducing an error e.g. replace `-j5` with `--wrong-flag` would make it fail. Things to improve: - improve `.travis.yml` readability - test more recipes - bring Python3 and Crystax support - speed up build/run by caching downloads - switch to sdkmanager - and much more
This is a first step to python-for-android continuous integration. It currently only verifies that p4a creates an APK by cross compiling a limited set of recipes. How it works; On git push Travis "executes" `.travis.yml` instructions: 1. the `before_install` section runs `docker build` to prepare the environment 2. the `script` section is the actual test, building the APK with `docker run` 3. based the exit status Travis build will be green or red For example editing `pythonforandroid/recipes/hostpython2/__init__.py` and introducing an error e.g. replace `-j5` with `--wrong-flag` would make it fail. Things to improve: - improve `.travis.yml` readability - test more recipes - bring Python3 and Crystax support - speed up build/run by caching downloads - switch to sdkmanager - and much more
This is a first step to python-for-android continuous integration. It currently only verifies that p4a creates an APK by cross compiling a limited set of recipes. How it works; On git push Travis "executes" `.travis.yml` instructions: 1. the `before_install` section runs `docker build` to prepare the environment 2. the `script` section is the actual test, building the APK with `docker run` 3. based the exit status Travis build will be green or red For example editing `pythonforandroid/recipes/hostpython2/__init__.py` and introducing an error e.g. replace `-j5` with `--wrong-flag` would make it fail. Things to improve: - improve `.travis.yml` readability - test more recipes - bring Python3 and Crystax support - speed up build/run by caching downloads - and much more
@cbenhagen, @inclement and @kived pull request is ready here #1255 |
…_integration_docker Continuous integration with Travis and Docker, fixes #625
@kived:
Yeah I meant to setup travis to continuously check for build issues. We can use something like nightli.es for this. Or any alternative mentioned here.
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
The text was updated successfully, but these errors were encountered: