Closed matthid closed 6 years ago
Yeah, I think this might be more confusing than not (as we discussed) but happy to see how it feels when you test it out.
:(
So the behavior is the following:
We can bundle the same tasks in different extensions no problem. But you get the above error once you try to install the second extension with the same task. This means: You can either install the all-in-one extension or all the individual ones, but not the all-in-one extension with an individual one.
This might actually be what we want but it might indeed confuse users. On the other hand we might have more visibility on the marktplace.
If we add docs on the marketplace page I think this would be fine. We could add to all individual extensions:
This extension is a subset of F# Helpers for VSTS which can not be installed at the same time as this extension
And a similar message listing all the individual packages on the F# Helpers for VSTS
page
I leave the decision up to you but I'd vote for adding the "subset" extensions.
Even if we decide to not publish the individual extensions I'd like to merge this PR because having them makes testing a bit easier for me. We can change the default publishing code. At the very least we need to public <> nonpublic switch and the bugfixes from this PR.
Looks good and runs, next I'll check if I can use the tasks to implement the fake release process and use the new "Public Projects" feature of VSTS .
But this PR is good to go I think.
BTW: We could also add a release pipeline for this particular repository.
Ok I was able to get fake deployed on staging with these tasks. Even found a bug in the vault implementation of fake. But I'd this PR is working
For the record: This happens when tasks have the same id:
With "private" extensions this works without issue :(
Adds a "Fake" and "Paket" extension alongside the "all-in-one" extension. It's surprisingly simple to package a task into multiple extension. The question is if this leads to problems when multiple extensions contain the same task. Something left to test... I think I will add another round of extensions without
public: true
(which is the currently suggested official solution) and test on my instance.