russhwolf / multiplatform-settings

A Kotlin Multiplatform library for saving simple key-value data
Apache License 2.0
1.69k stars 67 forks source link

Continuous Integration #21

Closed russhwolf closed 4 years ago

russhwolf commented 5 years ago

Investigate and configure some form of continuous integration, to ease the process of reviewing changes.

Open to suggestions here. Otherwise I'll likely look into Travis or TeamCity first.

Goal is to be able to run all tests on all platforms for both library and sample app, and ideally also run a linter.

arkivanov commented 5 years ago

We have full setup with Travis CI for our Reaktive library, including automatic publications of the new releases to Bintray. Here is our article by @CherryPerry about it (auto-translate from Russian), we will publish a professional translation on Meduim soon. Stay tuned!

russhwolf commented 4 years ago

Ended up going with Azure after talking to @benasher44. Have this working now for builds/tests to all platforms but haven't added publishing yet, so going to leave this ticket open a little while longer.

arkivanov commented 4 years ago

We switched to GitHub Actions, just in case. 4x faster than Travis, not sure about Azure.

benasher44 commented 4 years ago

I want to try Github actions. The nice thing about Azure is that it has first class gradle support: you can specify your CI in terms of gradle tasks, which is great if you're unfamiliar with the tooling/shell on a particular OS (Windows). Glad it worked out for ya!

russhwolf commented 4 years ago

Just released v0.5 which was built entirely via Azure Pipelines. Closing this but will keep an eye on Actions if it seems worth migrating to in the future.