-
Notifications
You must be signed in to change notification settings - Fork 38
Improve CI/Release Pipeline #237
Comments
It USED to build+test and release artifact binaries for Linux, Mac and
Windows using Travis and Appveyor. It built on top of japaric's
trust <https://github.com/japaric/trust> template.
Basically none of this works anymore and you can feel complete freedom to
start from the ground up. I did some initial testing using *trust* and hit
a few issues, but that doesn't mean that isn't a valid path.
Some possible paths:
- Use travis/appveyor's "happy path" for rust on multiple platforms
<https://docs.travis-ci.com/user/multi-os/>. Basic unit tests worked a
few weeks ago using the Linux image on Travis, that is probably a good
place to start.
- Use *trust* to do cross compiling:
it uses it's own tools to set things up and I'm not sure it is really
necessary anymore, but it is an option.
- Use *Nix <https://nixos.org/nix/>*: this is kind of the direction I
was planning but is highly complicated and not really mature. I don't
recommend this path unless you are already a Nix aficionado.
T
he basic process is:
- O
pen a PR and Travis tests will run automatically.
- Get unit tests working for all 3 platforms.
- We'll do some test releases to try and get the process to release -- I
think I'm the only person who can do this, but if you find you can as well
that would be great
When things are going well I'll add you as a contributor so you can approve
PRs!
|
I'm finally working on this (I was finishing up an unrelated blog post). I'm getting some tests running and I got an error in one of the tests:
This error shows up for all of the #[macro_use] extern crate serde_derive; to the file, the tests work. I'm not sure if that's something that was working on your end, or if it was already broken. |
it's weird but it may be because it (for some reason) compiled in nightly which is what I frequently use. I suggest you use:
This is how most other files do it. I just include everything from ergo all the time to avoid these single-dependency inclusions for extremely common traits. Happy you're working on it! Feel free to make any changes to get things working and I'll be happy to review. |
Ok, so since I've never done this before, what does the CI system currently do, and what does it need to do?
The text was updated successfully, but these errors were encountered: