You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make sure you have a fork of Homebrew/homebrew-core.
Run the Prereqs.ps1 file, using the following as an example .\Prereqs.ps1 -GithubUsername gep13 (use your own username). This will clone a new version of all required repositories.
Let people know that things are happening...
Go to the Gitter room for Cake and inform people that a release is away to happen. Use a message similar to the following @/all We will soon start preparing for the [1.0.0-rc0002 release](https://github.com/cake-build/cake/milestone/74?closed=1) of Cake. So this is a friendly reminder to pin your Cake version.
Go to the Gitter room for Cake-Contrib and inform people that a release is away to happen. Use a message similar to the following @/all We will soon start preparing for the [1.0.0-rc0002 release](https://github.com/cake-build/cake/milestone/74?closed=1) of Cake. So this is a friendly reminder to pin your Cake version.
Go to the General Channel in the Slack Team for Cake-Contrib and inform peoploe that a release is away to happen. Use a message similar to the following @channel We will soon start preparing for the 1.0.0-rc0002 release ( https://github.com/cake-build/cake/milestone/74?closed=1 ) of Cake. So this is a friendly reminder to pin your Cake version.
Using the Cake Twitter account, tweet to let people know that the release is away to happen. Use something like the following We are starting to prepare our next release, 1.0.0-rc0002 (https://github.com/cake-build/cake/milestone/74?closed=1). This is your friendly reminder that if you haven't pinned to a specific version of Cake, you should do it now :-) https://cakebuild.net/docs/tutorials/pinning-cake-version
Retweet the above from the cake-contrib twitter account
GitHub Issues Pre-requisites
Make sure all issues within the milestone are tagged with either Bug, Feature, Improvement, Documentation, Breaking change, or Build
Make sure all issues associated with the milestone are closed
Make sure that all issues only have 1 label associated with them
Raise an issue in the Cake.AddinDiscoverer repo if there are any breaking changes so the discoverer can be modified to generate a new markdown report and also Excel report to track which addins are compatible with this new release of Cake.
When doing a release
Create branch locally to match the name of the release, for example git checkout -b release/1.0.0-rc0002 release/1.0.0
Update releasenotes.md to include next version number as a placeholder and save the file
Create release notes on GitHub using the ReleaseNotes task (.\build.ps1 --target=ReleaseNotes)
Update releasenotes.md with generated content (making sure to keep the formatting the same)
Build everything (./build.ps1) to make sure it works.
Commit the changes to releasenotes.md and solutioninfo.cs. Use comment like (build) Updated version and release notes.
At this point, if you want to share the work to date, and validate something, push the local release branch to GitHub
Assuming everything is ok, switch to main branch (git checkout main)
Merge release branch to the maingit merge --no-ff release/1.0.0-rc0002
Build everything (./build.ps1) to make sure it works (we can never be too sure).
Assuming that everything went ok, go to the draft release in GitHub and click Edit
Click the Publish Release button
This will trigger another build in AppVeyor, but this time with a tag.
From the AppVeyor Log, take a note of the generated Hash from the Publish-HomeBrew task ENTERARCHIVEHASH
Switch to release/1.0.0 branch git checkout release/1.0.0
Merge release branch into release/1.0.0 git merge --no-ff release/1.0.0-rc0002
Resolve any merge conflicts
Bump the Cake Tool Version number in build.config to the latest released version, i.e. the version you just released
Build everything (./build.ps1) to make sure it works.
Commit the changes tobuild.config. Use commit message like (build) Updated Cake tool to version 1.0.0-rc0002
Push release/1.0.0 branch.
Delete the local release branch that was created git branch -d release/1.0.0-rc0002 (and the remote one, if pushed to GitHub git push origin --delete release/1.0.0-rc0002)
After a release/hotfix
Make sure that everything has pushed correctly to nuget
Make sure that everything has pushed correctly to chocolatey
cake.portableNOTE: This package might be subject to moderation, and might not appear immediately
Move to homebrew repository
Create a new branch for current release git checkout -b cake-1.0.0-rc0002
Open the Formula/cake.rb
Update the url (line 7) to be the new download location
Update the sha256 (line 8) to be the value that was generated earlier by the Publish-HomeBrew task
Commit the changes to cake.rbNOTE: Commit message should use the following format cake 1.0.0-rc0002NOTE: Make sure to use a lower case C as that is the preferred formatting in the Homebrew repo
Push the new branch to your fork
Open a PR against the master branch of Homebrew/homebrew-core
Move to example repository
Open the tools/packages.config file
Update the Cake version number to be the same as the version that you have just released
Build everything (./build.ps1 or ./build.sh) to make sure it works.
Commit changes. Use message similar to (build) Updated Cake tool to version 1.0.0-rc0002
Push branch
Move to resources repository
Switch to the release/1.0.0 branch git checkout release/1.0.0
Open the packages.config file
Update the Cake version number to be the same as the version that you have just released
Commit changes. Use message similar to (build) Updated Cake tool to version 1.0.0-rc0002
Push branch git push
Checkout master git checkout master
Merge changes from release/1.0.0 branch git merge --no-ff release/1.0.0
Create a branch for a new blog post git checkout -b 1.0.0-rc0002-Blog-Post master
You can get draft blog post using the console secrets\Processes\FetchContributors
dotnet restore
dotnet run "cake-build" "cake" "v1.0.0-rc0001" "61083a9138d23ddbbd7089aefe7689922ffe8368" "website\input\blog" "v1.0.0"
Bump the Cake Tool Version number in build.config to the latest released version, i.e. the version you just released
Commit changes to build.config file using message similar to (build) Updated Cake tool to version 1.0.0-rc0002
Commit blog post using message similar to v1.0.0-rc0002 Blog Post
Push branch and submit pull request
Have someone else verify the contents
Merge the Pull Request
Go to develop.cakebuild.net once you receive the Azure notification in Slack to say that the release/1.0.0ment site is deployed. Make sure that it works as expected.
Go to cakebuild.net once you receive the Azure notification in Slack to say that the release/1.0.0ment site is deployed. Make sure that it works as expected.
Go to the Cake-Contrib Gitter Room and let people know that it was released. Use something like @/all Version 1.0.0-rc0002 of the Cake has just been released, https://www.nuget.org/packages/Cake.
Go to the Cake-Contrib Slack Team and in the General Room let people know that it was released. Use something like @channel Version 1.0.0-rc0002 of the Cake has just been released, https://www.nuget.org/packages/Cake.
As this is a pre-release to Cake 1.0.0 might not complete all steps.
Useful information
Repository Pre-requisites
Automated Approach
Homebrew/homebrew-core.Prereqs.ps1file, using the following as an example.\Prereqs.ps1 -GithubUsername gep13(use your own username). This will clone a new version of all required repositories.Let people know that things are happening...
@/all We will soon start preparing for the [1.0.0-rc0002 release](https://github.com/cake-build/cake/milestone/74?closed=1) of Cake. So this is a friendly reminder to pin your Cake version.@/all We will soon start preparing for the [1.0.0-rc0002 release](https://github.com/cake-build/cake/milestone/74?closed=1) of Cake. So this is a friendly reminder to pin your Cake version.@channel We will soon start preparing for the 1.0.0-rc0002 release ( https://github.com/cake-build/cake/milestone/74?closed=1 ) of Cake. So this is a friendly reminder to pin your Cake version.We are starting to prepare our next release, 1.0.0-rc0002 (https://github.com/cake-build/cake/milestone/74?closed=1). This is your friendly reminder that if you haven't pinned to a specific version of Cake, you should do it now :-) https://cakebuild.net/docs/tutorials/pinning-cake-versionGitHub Issues Pre-requisites
When doing a release
git checkout -b release/1.0.0-rc0002 release/1.0.0releasenotes.mdto include next version number as a placeholder and save the fileReleaseNotestask (.\build.ps1 --target=ReleaseNotes)releasenotes.mdwith generated content (making sure to keep the formatting the same)./build.ps1) to make sure it works.releasenotes.mdandsolutioninfo.cs. Use comment like(build) Updated version and release notes.mainbranch (git checkout main)maingit merge --no-ff release/1.0.0-rc0002./build.ps1) to make sure it works (we can never be too sure).mainbranch.Publish-HomeBrewtaskENTERARCHIVEHASHrelease/1.0.0branchgit checkout release/1.0.0git merge --no-ff release/1.0.0-rc0002build.configto the latest released version, i.e. the version you just released./build.ps1) to make sure it works.build.config. Use commit message like(build) Updated Cake tool to version 1.0.0-rc0002release/1.0.0branch.git branch -d release/1.0.0-rc0002(and the remote one, if pushed to GitHubgit push origin --delete release/1.0.0-rc0002)After a release/hotfix
git checkout -b cake-1.0.0-rc0002Formula/cake.rbPublish-HomeBrewtaskcake.rbNOTE: Commit message should use the following formatcake 1.0.0-rc0002NOTE: Make sure to use a lower caseCas that is the preferred formatting in the Homebrew repomasterbranch ofHomebrew/homebrew-coretools/packages.configfile./build.ps1or./build.sh) to make sure it works.(build) Updated Cake tool to version 1.0.0-rc0002git checkout release/1.0.0packages.configfile(build) Updated Cake tool to version 1.0.0-rc0002git pushgit checkout mastergit merge --no-ff release/1.0.0git pushgit checkout -b 1.0.0-rc0002-Blog-Post mastersecrets\Processes\FetchContributorsbuild.configto the latest released version, i.e. the version you just releasedbuild.configfile using message similar to(build) Updated Cake tool to version 1.0.0-rc0002v1.0.0-rc0002 Blog Post@/all Version 1.0.0-rc0002 of the Cake has just been released, https://www.nuget.org/packages/Cake.@channel Version 1.0.0-rc0002 of the Cake has just been released, https://www.nuget.org/packages/Cake.Import failed this time so used medium Create post API to create draft with canonicalUrlDevOpsCsharpRelease NotesDotnetContinuous Integration