Closed awerlang closed 6 years ago
Wow, thanks! This looks great already.
So I think the only thing I need to add is:
instead of ls vendor/release/build
,
mkdir bin && mv vendor/release/build/dssim-* bin/dssim-`uname | tr '[:upper:]' '[:lower:]'`
adds darwin
or linux
(can't use TRAVIS_OS_NAME in this case) – precompiled binaries should be included in the release
lib/install.js
, check if there's already a file dssim-${process.platform}
and skip compilationRight?
The current issue is identifying the correct output
dssim
main
It may be related to a convention where programs should be placed inside src/bin
but in the archive both main.rs
and lib.rs
are in the same directory.
After this, is it possible to deploy to npm binaries produced in separate jobs (linux & os x) straight from travis?
Ok, found one source of the problem. You were still pulling v1.3.3 of dssim, not the 2.x release. I map the dssim version number to the version of the npm package.
Updating to the current 2.9.4 release gives me a proper binary: vendor/release/dssim
.
See https://github.com/fhemberger/dssim-bin/pull/6 for my test PR.
You're right! But still this is the output in travis:
$ ls vendor/release/build
rayon-core-29a42b65b777dc05 rayon-core-af02fc9cf039ecce
Another option, as suggested to me on S.O., is to use the cargo install
command directly.
cargo install dssim --version ${version}
Only I don't know how we could pass the version to travis.
Binary is in vendor/release
, not vendor/release/build
.
Great
@awerlang Sorry it took so long, merged your PR. Thanks! I'm not sure yet how to proceed with the Rust build.
This is a work in progress. This needs some help to get it done.
vendor/release/build
: the gotcha is the filename isn't deterministic, something random is appended to itCloses #4