These are chat archives for chocolatey/ChocolateyGUI

3rd
Mar 2015
Gary Ewan Park
@gep13
Mar 03 2015 07:02
that is probably a good idea :-)
so, this is what I have....
ChocolateyGUI has both a develop and a master branch, we are following GitFlow
we are using GitVersion and the built in support for AppVeyor to generate the version number each time a build occurs
I have the building of the branches set up as follows...
if on develop branch, and it is a pull request, run the build but no deployment
if on develop branch, and there is no pull request, run the build and deploy to MyGet Develop Feed
if on master branch, and it is a pull request, run the build, but no deployment
if on master branch, and there is no pull request, run the build and deploy to MyGet Master Feed
if on master branch, and a tag has just been applied, run the build, and deploy to Chocolatey.org
now, the last two, I could really do as one step, however, what I woudl like to introduce, is the generation of the GitHubReleaseNotes
so, the above will change to...
if on master branch, and there is no pull request, run the build, generate GitHub Release Notes, and deploy to MyGet Master Feed
assuming everything is ok, complete the draft release that was created in GitHub, thus tagging the repository which will then trigger
if on master branch, and a tag has just been applied, run the build, and deploy to Chocolatey.org
Simon Cropp
@SimonCropp
Mar 03 2015 07:07
so that all sounds good
Gary Ewan Park
@gep13
Mar 03 2015 07:07
this change is really the equivalent of your wait step in Octopus
does that makes sense?
The couple questions that I have would be as follows...
technically, when creating the release notes, I could also upload the assets, i.e. the nupkg and msi, however, these won't be the "exact" same files taht are sent to chocolatey.org. Now, granted they will be the exact same, as the source code could/should be exactly the same, the only difference is that a tag has been applied, however, to make things straight in my head, I think I want to update the now published release to include the actual assets. Do you think it would be an easy extension to GitHubReleaseNotes to allow the uploading of assets into a release? I can certainly do this through the UI, so hoping that Octokit can do it as well.
and secondly, i am currently maintaing a changelog.md file, which allows the reading of the release notes within ChocolateyGUIL
however, I don't like maintaining this information in two places, i.e. GitHub Releases, and the Changelog.md
I remember a similar conversation over at GitVersion
Gary Ewan Park
@gep13
Mar 03 2015 07:12
I am thinking about using Octokit to, when chocolateygui first loads, download and store all teh release information into a markdown file, which can then be read and displayed within the application
does that sound sensible to you
or am I missing anything obvious
this would give "one source of truth" for the release information
@SimonCropp ^^
Richard Simpson
@RichiCoder1
Mar 03 2015 08:57
Gettin' cray cray
Gary Ewan Park
@gep13
Mar 03 2015 08:58
que?
Richard Simpson
@RichiCoder1
Mar 03 2015 08:58
Very thorough build and deployment process, that's all. I'm not complaining :)
Gary Ewan Park
@gep13
Mar 03 2015 09:01
:+1: yeah, been adding a few bells and whistles, but it is really coming together
quite happy with it
The chocolatiest bot this side of the Mississippi
@choco-bot
Mar 03 2015 09:01
Gary Ewan Park
@gep13
Mar 03 2015 09:01
I have a few other tweaks to make to it, but they will come :-)
Richard Simpson
@RichiCoder1
Mar 03 2015 09:01
Haha, sounds good.
Simon Cropp
@SimonCropp
Mar 03 2015 09:48
@gep13 a proposal. i would include a url in the release notes of the nuget. that way u can avoid the chicken and egg?
@gep13 actually i think that is what u proposed later
Gary Ewan Park
@gep13
Mar 03 2015 09:53
@SimonCropp you are right, I have a link in the releasenotes to chocolatey, and this will be teh default, however, we have had a request that the msi actually bootstrap the chocolatey installation, so people not familiar with PowerShell or command line, can just run the msi. In this case, teh source of the msi will be the releases on GitHub, so the above was sort of the best of all teh things required