Create an automated release workflow#149
Create an automated release workflow#149JonnyOThan merged 17 commits intoKSPModStewards:release-testfrom
Conversation
|
SystemHeat isn't currently on Spacedock, so we don't need to add that. How about improving the create-release workflow in KSPBT? e.g. including the version number, setting the |
|
I'll work on the KSPBT workflow tonight, then evaluate whether it makes sense to use it here. I'm not really sure if I want to set the version property from the release tag by default just yet, rather than making the csproj the source of truth. |
|
IMO the csproj should not need to be modified in order to create a release. That's just noise in the version history. In other repos, I have a .version.props file that I include from the .csproj, and then a .versiontemplate file that can generate that one from the update-version.sh file in the workflow. It's not great, but at least there's only one place to change the version and it's not the csproj. I think I'd rather have the build system pass in the version number, and then the .version.props file uses that if it's set. |
There was a problem hiding this comment.
why not use the KSPBT generation stuff for the .version file?
There was a problem hiding this comment.
As far as I can tell if I do that the workflow won't commit the updated version back appropriately? Maybe I need to look at how it works again.
There was a problem hiding this comment.
er I think the idea is that if you do that, the output is in GameData somewhere and treated like a build artifact, i.e. in .gitignore
There was a problem hiding this comment.
I was under the impression (perhaps mistakenly) that we wanted to keep this file around for now and point it towards the new file. Is that not the case?
Like I said in my comment below, if that's not the case then this whole thing is a non-issue.
There was a problem hiding this comment.
no it's fine, you're right that we probably want to keep it around at least for some time so that people can get notified about a new version
This just mirrors build.yml for the moment. I'll be adjusting this once I can get a look at the intermediate artifacts
30c8cac to
1749c3f
Compare
|
The version file is now automatically generated by building the project. This won't be committed automatically so it will need a manual fix up commit after each release until we entirely remove it from the repo. If we don't care about AVC back-compat then we can just remove it now and this stops being an issue. The only thing this is still blocked on at this point is KSPModdingLibs/KSPBuildTools#69 |
Removed versioning properties and import statement.
* remove version-template-extension * bump version to 0.9 * reverrt to C#9 * incorporate ksbt_modversion * changelog back to unreleased * bump version to 0.9 * Fix typo in version property * Include version-file input in create-release.yml Add version file input for release workflow * Create an automated release workflow (#149) * Initial release.yml workflow This just mirrors build.yml for the moment. I'll be adjusting this once I can get a look at the intermediate artifacts * Add setup to actually build the release zip * Fix artifact name * Properly use multiline blocks * Fix a typo * Better compression * Upload SystemHeat.version as an artifact * Simplify a few things * Update to use KSPBT create-release workflow * Switch version file generation to happen through KSPBT * Update repository URLs in SystemHeat.version * Remove version properties from csproj Removed versioning properties and import statement. * Update repository URLs in SystemHeat.version * Delete .github/workflows/release.yml * Delete Source/SystemHeat.version.props * Delete Source/SystemHeat.version.props.versiontemplate --------- Co-authored-by: JonnyOThan <jonnyothan@gmail.com> * Change version to 'Unreleased' in CHANGELOG.md Updated changelog to reflect unreleased changes. * bump version to 0.9.0 * Revise CHANGELOG for unreleased updates Updated changelog to reflect unreleased changes and fixes. * bump version to 0.9.0 * set changelog back to unreleased * langversion to 12 --------- Co-authored-by: github-actions <github-actions@github.com> Co-authored-by: Sean Lynch <phantom@lynches.ca>
The github actions secrets have a spacedock password, so we'll need this anyways if we want to upload to spacedock because there is no other way to access it.