wduquette / molt

Embeddable TCL Interpreter for Rust applications
BSD 3-Clause "New" or "Revised" License
103 stars 12 forks source link

Add Continuous Integration #54

Closed rfdonnelly closed 4 years ago

rfdonnelly commented 4 years ago

I recommend adding continuous integration and associated badges to automate testing across many platforms and to communicate project health.

I've used trust which uses TravisCI and AppVeyor to cover many targets including Windows, Linux, iOS, Android, macOS, and the BSDs.

actions-rs is another option that uses the newer GitHub Actions. I haven't used it but it looks promising.

wduquette commented 4 years ago

Sounds like an excellent idea; I know nothing about what’s involved. Care to take a whack at it?

wduquette commented 4 years ago

As part of this, I’ve got a separate set of tests, coded in TCL, that really ought to be run by cargo test, but I haven’t worked out how to do that either.

rfdonnelly commented 4 years ago

Care to take a whack at it?

Sure! I'll need to research how to set up CI for a project I don't have admin access to. Maybe I can set it up in a fork then create PR with the necessary additions and with instructions you'd need to complete on your end.

I’ve got a separate set of tests, coded in TCL

Is this cargo run test test/all.tcl? As long as we can represent pass/fail with the exit status we can just run that.

wduquette commented 4 years ago

If the admin thing becomes too much of an issue, let me know; we can work that.

Yes, exactly cargo run test test/all.tcl. I'll have to make sure it sets the exit status. I'm presuming 0 for success, non-zero if there was a test failure?

wduquette commented 4 years ago

Pull request #57 revised cargo run test test/all.tcl so that it sets the return code to 0 on success, or 1 on any error or test failure.

wduquette commented 4 years ago

Used the Github Actions "Rust" action to build and test the Molt code, with badge in the top-level readme.