joncampbell123 / dosbox-x

DOSBox-X fork of the DOSBox project
GNU General Public License v2.0
2.79k stars 382 forks source link

Consider using appveyor for automated windows builds #618

Open heydojo opened 6 years ago

heydojo commented 6 years ago

I noticed that QupZilla uses appveyor for automated building of their Windows binaries. Is this something which Dosbox-X could tap into too? It is free for open source projects and integrates with github. Qupzilla's source has an appveyor.yml which I think gives a good idea of how it works if you are interested.

joncampbell123 commented 6 years ago

I don't know how to use it, but anyone else here is welcome to try setting DOSBox-X up for it.

lwchkg commented 6 years ago

Does DOSBox-X have automatic tests? If yes, I might be able to help setting it up. (If not, then what's the point setting up continuous integration?)

joncampbell123 commented 6 years ago

Not yet.

heydojo commented 6 years ago

Not yet.

C++11 compliance might be a good idea first if you are considering implementing some unit tests. Stuff like string manipulation is much easier to deal with. Just my two cents. :)

heydojo commented 6 years ago

Does DOSBox-X have automatic tests? If yes, I might be able to help setting it up. (If not, then what's the point setting up continuous integration?)

Although CI is the main focus of plans offered by Appveyor, the service also has excellent integration into github. Specifically releases. In my Windows only fork of Dosbox-X, I don't use CI for commits (you can turn it off in github's settings.) The way I use Appveyor is as following:

Having this system in place saves so much time, requires one file placed in the root of the master tree and linking an Appveyor account to the project's github account (give or take a few account settings.) It really is worth looking into.

For the other platforms (Mac and Linux,) Travis CI is the other big service provider available and in Dosbox-X's case, you could use both Appveyor and Travis CI to handle releases.

I am just putting this info out there for you guys working on Dosbox-X. Appveyor works and I have built the code using it.

The decision to use a CI service can only be Jon's. The account holder needs to link their github account to the service and setup an api key for it to work.