Monday, December 3, 2018

Creating Releases

Releases

Last time on goblin camp adventure we finally got a functional build running, there would be no better way to celebrate than to make a release on github. There are a couple hurdles beforehand that need to be taken care of. First off the code currently in the master branch does not support the libtcod we have travis building it with. Second off we have no way of automatically uploading releases and finally I'm not even sure if it would work on other machines if it was compiled in travis.

Actually Releasing

To have a binary to release first step is to have a working, running, non segfaulting version of the game. This is already done locally on a test vm but it needs to be in github so we can have travis make it automatically for us. I can't just overwrite the scripts in the master to use the old version so I decided to make a branch that would be in charge of making the releases for the time being. That is until master becomes more stable. Appropriatley I called the branch working-build. I then had to change the build scripts to use the older libraries that we working build needed, after that I had to use travis cli tool to generate the secure key that allows it to push to releases. Except when I used cmake on my machine it would make a pkg directory with all the files inside of it nicely bundled, but when I ran it on travis it stalled it to the user directories. After many hail mary commands I found out that I need to run cmake twice to make that folder so I could put it in a tar. I thought I was done, except when I tagged a branch and pushed the tag to github the release wans't there. So I cleaned up some stuff in the script and pushed it again with a tag and the same thing happened, no release. Except now the first tag I made had one. I honestly don't know why this happened but it was good enough for a first ever github goblin camp binary release. Someone will probably fix it later...hopefully

1 comment:

  1. I know a guy who will fix it. I will ask him to fix it next time I see him.

    ReplyDelete

Creating Releases