sixones / vitality

Macintosh Eve online skill planner
GNU General Public License v3.0
70 stars 12 forks source link

Automated build #21

Open Bleyddyn opened 10 years ago

Bleyddyn commented 10 years ago

I think it would be a good idea if we could build, package and make available a dev build of the tip of the master branch. Either a "nightly" build that runs once a day or something that only runs when changes are checked into the master branch.

There should be warnings before people download anything and we might need to disable the update feature.

This would let us make more rapid changes or even test builds to try to fix specific problems.

I don't know how the current builds are made, so I have no idea how difficult this might be to do.

sixones commented 10 years ago

This would be awesome, unfortunately to be able to do automated builds we need a Mac build server which could be costly. Not sure if we can get some remote Mac Mini cheaply.

Bleyddyn commented 10 years ago

I can't see putting money into it but I'm going to see if I can get set up to build everything, including the database, on my home machine. However, I don't really know all of the steps for an actual release. I know there's something about a signing certificate in the Readme, but maybe if you could add a file that goes over the steps you go through for releases, that would help.

Given how infrequently we do commits, even a once-a-week dev build would be useful.

sixones commented 10 years ago

That would be good if you have a machine that could run them on a weekly basis. Release steps just involve compiling via Xcode without code signing (should be possible to do this on the command line), building the DB if its required, zipping Vitality.app up and then running a ruby script on the zip file to sign it. Deploying needs to modify an XML file and then upload to the server, we should be able to write a script to push the signed package into the Github repository and use Github to host the files.

Bleyddyn commented 10 years ago

I've had an automated build run twice so far, but there are still some steps I don't know how to do. I can't find the ruby script for signing and I don't know where to upload everything. The build script is in the top level of the repo if you want to have a look.