HasPlugin{PluginDescriptor{Name:"plugin-a", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-a.tar.gz"}} -> {pluginstorage.PluginNotInstalled}
HasPluginGTE{PluginDescriptor{Name:"plugin-a", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-a.tar.gz"}} -> {false, nil, nil}
HasPlugin{PluginDescriptor{Name:"plugin-a", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-a.tar.gz"}} -> {pluginstorage.PluginNotInstalled}
HasPluginGTE{PluginDescriptor{Name:"plugin-a", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-a.tar.gz"}} -> {false, nil, nil}
GetLatestVersion{ctx, PluginDescriptor{Name:"plugin-a", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-a.tar.gz"}} -> {nil, nil}
HasPlugin{PluginDescriptor{Name:"plugin-b", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}} -> {pluginstorage.PluginNotInstalled}
HasPluginGTE{PluginDescriptor{Name:"plugin-b", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}} -> {false, nil, nil}
HasPlugin{PluginDescriptor{Name:"plugin-b", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}} -> {pluginstorage.PluginNotInstalled}
HasPluginGTE{PluginDescriptor{Name:"plugin-b", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}} -> {false, nil, nil}
GetLatestVersion{ctx, PluginDescriptor{Name:"plugin-b", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}} -> {nil, nil}
DownloadPlugin{ctx, PluginDescriptor{Name:"plugin-a", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-a.tar.gz"}} -> {"$HOME/.pulumi/plugins/resource-plugin-a", <func(bool)>, nil}
LoadPluginProjectAt{ctx, "$HOME/.pulumi/plugins/resource-plugin-a"} -> {PluginProject{Runtime:ProjectRuntimeInfo{name:"go"}, Packages:map[1]{"plugin-b":PackageSpec{Source:"plugin-b", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}}}, "$HOME/.pulumi/plugins/resource-plugin-a/PulumiPlugin.yaml", nil}
DownloadPlugin{ctx, PluginDescriptor{Name:"plugin-b", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}} -> {"$HOME/.pulumi/plugins/resource-plugin-b", <func(bool)>, nil}
LoadPluginProjectAt{ctx, "$HOME/.pulumi/plugins/resource-plugin-b"} -> {nil, "", wrapErrors{msg:"no project file found and no plugin file found", errs:[2]{errorString{s:"no project file found"}, errorString{s:"no plugin file found"}}}}
IsExecutable{ctx, "$HOME/.pulumi/plugins/resource-plugin-b/pulumi-resource-plugin-b"} -> {true, nil}
DownloadPlugin.MarkInstallationDone{PluginDescriptor{Name:"plugin-b", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}, true} -> {}
RunPackage{ctx, "/project", "$HOME/.pulumi/plugins/resource-plugin-b/pulumi-resource-plugin-b", nil} -> {invariantProvider{path:"$HOME/.pulumi/plugins/resource-plugin-b"}, nil}
GenerateLocalSDK{ctx, ProjectRuntimeInfo{name:"go"}, "/project", invariantProvider{path:"$HOME/.pulumi/plugins/resource-plugin-b"}} -> {LinkablePackageDescriptor{Path:"$HOME/.pulumi/plugins/resource-plugin-b/sdk-<nil>"}, nil}
HasPlugin{PluginDescriptor{Name:"plugin-b", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}} -> {pluginstorage.PluginNotInstalled}
HasPluginGTE{PluginDescriptor{Name:"plugin-b", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}} -> {false, nil, nil}
HasPlugin{PluginDescriptor{Name:"plugin-b", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}} -> {pluginstorage.PluginNotInstalled}
HasPluginGTE{PluginDescriptor{Name:"plugin-b", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}} -> {false, nil, nil}
GetLatestVersion{ctx, PluginDescriptor{Name:"plugin-b", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}} -> {nil, nil}
RunPackage{ctx, "$HOME/.pulumi/plugins/resource-plugin-a", "$HOME/.pulumi/plugins/resource-plugin-b/pulumi-resource-plugin-b", nil} -> {invariantProvider{path:"$HOME/.pulumi/plugins/resource-plugin-b"}, nil}
GenerateLocalSDK{ctx, ProjectRuntimeInfo{name:"go"}, "$HOME/.pulumi/plugins/resource-plugin-a", invariantProvider{path:"$HOME/.pulumi/plugins/resource-plugin-b"}} -> {LinkablePackageDescriptor{Path:"$HOME/.pulumi/plugins/resource-plugin-b/sdk-<nil>"}, nil}
LinkIntoProject{ctx, ProjectRuntimeInfo{name:"go"}, "$HOME/.pulumi/plugins/resource-plugin-a", [1]{LinkablePackageDescriptor{Path:"$HOME/.pulumi/plugins/resource-plugin-b/sdk-<nil>"}}} -> {nil}
InstallPluginAt{ctx, "$HOME/.pulumi/plugins/resource-plugin-a", PluginProject{Runtime:ProjectRuntimeInfo{name:"go"}, Packages:map[1]{"plugin-b":PackageSpec{Source:"plugin-b", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}}}} -> {nil}
DownloadPlugin.MarkInstallationDone{PluginDescriptor{Name:"plugin-a", Kind:"resource", PluginDownloadURL:"https://example.com/plugin-a.tar.gz"}, true} -> {}
GetRequiredPackages{ctx, "$HOME/.pulumi/plugins/resource-plugin-a", PluginProject{Runtime:ProjectRuntimeInfo{name:"go"}, Packages:map[1]{"plugin-b":PackageSpec{Source:"plugin-b", PluginDownloadURL:"https://example.com/plugin-b.tar.gz"}}}} -> {nil, nil, nil}
RunPackage{ctx, "/project", "$HOME/.pulumi/plugins/resource-plugin-a", nil} -> {invariantProvider{path:"$HOME/.pulumi/plugins/resource-plugin-a"}, nil}
GenerateLocalSDK{ctx, ProjectRuntimeInfo{name:"go"}, "/project", invariantProvider{path:"$HOME/.pulumi/plugins/resource-plugin-a"}} -> {LinkablePackageDescriptor{Path:"$HOME/.pulumi/plugins/resource-plugin-a/sdk-<nil>"}, nil}
LinkIntoProject{ctx, ProjectRuntimeInfo{name:"go"}, "/project", [2]{LinkablePackageDescriptor{Path:"$HOME/.pulumi/plugins/resource-plugin-a/sdk-<nil>"}, LinkablePackageDescriptor{Path:"$HOME/.pulumi/plugins/resource-plugin-b/sdk-<nil>"}}} -> {nil}
