-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Document upgrade path from 1.x of Cake.Recipe to 2.x #612
Comments
@gep13 maybe linking to the gist you created on Monday could be useful as well. Or we could just move those here to this issue? |
@AdmiringWorm good idea, I have updated the issue description with some of the items that I have, but we can add more as we think of them |
As per issue documented here: cake-contrib/Cake.Recipe#612
As per issue documented here: cake-contrib/Cake.Recipe#612
@gep13 I followed this instructions at cake-contrib/Cake.7zip#62 - and it worked like a charm. However, I kind of "miss" some guidelines on how to procede with the two build-services (i.e. appveyor / gh-actions): Some steps of the processes (e.g. publishing docs/nupkg etc) should only run once, right? How can we configure which buildsystem is doing what? As an example, I can imagine some obscure config like:
|
This is done on all platforms already. You unfortunately can't select only a few tasks to run on specific providers, only on the global stage. Side-Note, forcing publishing and drafting release notes will always run when called. |
Agreed |
This is great to hear! Thank you for providing feedback!
Based on what @AdmiringWorm has said, do you think we need some more information in the docs for Cake.Recipe? If so, would you be in a position to take a stab at adding that? |
Just to follow up on what I said. That would mean to clear all the criteria of the task, then add the existing ones again (except those related to build platform and build provider), then add a new criteria that compares the build platform and provider. For instance as an example, ((CakeTask)BuildParameters.Tasks.PublishDocumentationTask.Task).Criterias.Clear();
BuildParameters.Tasks.PublishDocumentationTask
.WithCriteria(() => !BuildParameters.IsLocalBuild)
.WithCriteria(() => !BuildParameters.IsPullRequest)
.WithCriteria(() => BuildParameters.IsMainRepository)
.WithCriteria(() => BuildParameters.BranchType == BranchType.Master || BuildParameters.BranchType == BranchType.Develop)
.WithCriteria(() => BuildParameters.PreferredBuildAgentOperatingSystem == PlatformFamily.Windows)
.WithCriteria(() => BuildParameters.PreferredBuildProviderType == BuildProviderType.GitHubActions); This is something you would need to do for all tasks you want to override the criterias. DISCLAIMER: The above code sample has not been tested, and is mostly just taken from memory. |
@AdmiringWorm thanks for the hint. I'd rather not create a setup like I laid out above (too unstructured). I can, however envision a setup in which all is done in one system (gh-actions) except uploading preview/dev packages to azure feeds - that would be done using a devops pipeline... @gep13 I'l take a shot at it. I'm thinking about a section on ci-systems (which are "supported"/"tested", which quirks exist.) I feel that would also be a good place to describe the setup involved when dealing with multiple ci-systems. |
@nils-a that would be great! I think that sounds like a great approach! |
New point: my cache:
- "tools -> recipe.cake,tools/packages.config" after switching from cache:
- "tools -> recipe.cake,.config/dotnet-tools.json" |
@nils-a Yes, that is a good catch! |
@nils-a I have updated the original issue description with this point. Let me know if you find any others. |
good point. While I did that on cake.7zip, I did not realize, that it's not on the list. |
…lled CI-systems here), specifically pointing out that one provider/os-combination has to be marked "primus inter pares" using preferredBuildProviderType / preferredBuildAgentOperatingSystem. Also started on documenting the different (non-local) build providers.
…lled CI-systems here), specifically pointing out that one provider/os-combination has to be marked "primus inter pares" using preferredBuildProviderType / preferredBuildAgentOperatingSystem. Also started on documenting the different (non-local) build providers.
Another new thing I found while migrating the Cake.Transifex addin to the latest Cake.Recipe version. If you do not already call |
@AdmiringWorm thanks for catching that! I have added it to the list. Did this show up as an error when trying to run the build? |
yes, it shows up as a null reference exception when building. |
…lled CI-systems here), specifically pointing out that one provider/os-combination has to be marked "primus inter pares" using preferredBuildProviderType / preferredBuildAgentOperatingSystem. Also started on documenting the different (non-local) build providers.
…lled CI-systems here), specifically pointing out that one provider/os-combination has to be marked "primus inter pares" using preferredBuildProviderType / preferredBuildAgentOperatingSystem. Also started on documenting the different (non-local) build providers.
(GH-612) added a section on non-local build providers...
@gep13 as discussed on stream last night, the point
should be phrased different, since we're only removing |
@nils-a I am not sure that I follow. I thought that the suggestion going forward was to switch to using a tool manifest, and to restore and run |
but changes to the |
Ah, I see what you mean now, makes sense. |
I ran into a new issue (should pay more attention to appveyor) not sure if documentation is needed, though. My old appveyor.yaml stated However, the new minimalistc bootstrapper I am using does not (like the official one does) "translate" the PowerShell-Syntax arguments. So, long story short: |
(GH-612) Add docs for upgrading to 2.0.0
* release/2.0.0: (340 commits) (GH-697) Update JetBrains.ReSharper.CommandLineTools reference from 2020.2.3 to 2020.2.4 Add rule URL resolver for CakeContrib-Guidelines Update Cake.Issues.Recipe to 0.4.3 (GH-691) Update JetBrains.ReSharper.CommandLineTools reference from 2020.2.2 to 2020.2.3 Revert "(GH-673) Use .Net Global Tool for ReSharper Tools" (GH-616) Create unique version number Update Cake.Issues.Recipe to 0.4.2 (GH-687) using RepositoryName insteadof repositoryName to make use of the default-value for RepositoryName. (GH-612) Add docs for upgrading to 2.0.0 (GH-673) Use .Net Global Tool for ReSharper Tools Update Cake.Issues.Recipe to 0.4.1 (GH-684) parameter ShouldDocumentSourceFiles is no longer dependent on ShouldGenerateDocumentation. (GH-677) Updated documentation to reflect the changes of the default of webLinkRoot (GH-680) Documentation of GH-680 as a known-issue. (GH-677) set default for WebLinkRoot as RepositoryName instead of title. (GH-675) Update Cake.Transifex reference from 0.9.0 to 0.9.1 (maint) Switch to latest version of Kudu (GH-674) Update github action workflow with cake-action (GH-674) update bootstrappers to run use .NET Core global tool (maint) Correct line endings for shell scripts ...
Merge branch 'release/2.0.0' into master * release/2.0.0: (340 commits) (GH-697) Update JetBrains.ReSharper.CommandLineTools reference from 2020.2.3 to 2020.2.4 Add rule URL resolver for CakeContrib-Guidelines Update Cake.Issues.Recipe to 0.4.3 (GH-691) Update JetBrains.ReSharper.CommandLineTools reference from 2020.2.2 to 2020.2.3 Revert "(GH-673) Use .Net Global Tool for ReSharper Tools" (GH-616) Create unique version number Update Cake.Issues.Recipe to 0.4.2 (GH-687) using RepositoryName insteadof repositoryName to make use of the default-value for RepositoryName. (GH-612) Add docs for upgrading to 2.0.0 (GH-673) Use .Net Global Tool for ReSharper Tools Update Cake.Issues.Recipe to 0.4.1 (GH-684) parameter ShouldDocumentSourceFiles is no longer dependent on ShouldGenerateDocumentation. (GH-677) Updated documentation to reflect the changes of the default of webLinkRoot (GH-680) Documentation of GH-680 as a known-issue. (GH-677) set default for WebLinkRoot as RepositoryName instead of title. (GH-675) Update Cake.Transifex reference from 0.9.0 to 0.9.1 (maint) Switch to latest version of Kudu (GH-674) Update github action workflow with cake-action (GH-674) update bootstrappers to run use .NET Core global tool (maint) Correct line endings for shell scripts ...
There are lots of breaking changes, and new features, so we need to provide some information to folks so that they know what to expect if upgrading.
Starting a list of things that need to be changed, there will likely be other things that need to be added:
shouldRunGitVersion: true
as this is now the defaultThe text was updated successfully, but these errors were encountered: