{"action":"created","issue":{"url":"https://api.github.com/repos/dotnet/arcade/issues/422","repository_url":"https://api.github.com/repos/dotnet/arcade","labels_url":"https://api.github.com/repos/dotnet/arcade/issues/422/labels{/name}","comments_url":"https://api.github.com/repos/dotnet/arcade/issues/422/comments","events_url":"https://api.github.com/repos/dotnet/arcade/issues/422/events","html_url":"https://github.com/dotnet/arcade/issues/422","id":347168335,"node_id":"MDU6SXNzdWUzNDcxNjgzMzU=","number":422,"title":"[Publishing] How do I upload one-off packages to the dotnetfeed dotnet-core blob feed?","user":{"login":"Chrisboh","id":10900020,"node_id":"MDQ6VXNlcjEwOTAwMDIw","avatar_url":"https://avatars2.githubusercontent.com/u/10900020?v=4","gravatar_id":"","url":"https://api.github.com/users/Chrisboh","html_url":"https://github.com/Chrisboh","followers_url":"https://api.github.com/users/Chrisboh/followers","following_url":"https://api.github.com/users/Chrisboh/following{/other_user}","gists_url":"https://api.github.com/users/Chrisboh/gists{/gist_id}","starred_url":"https://api.github.com/users/Chrisboh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Chrisboh/subscriptions","organizations_url":"https://api.github.com/users/Chrisboh/orgs","repos_url":"https://api.github.com/users/Chrisboh/repos","events_url":"https://api.github.com/users/Chrisboh/events{/privacy}","received_events_url":"https://api.github.com/users/Chrisboh/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"JohnTortugo","id":2249648,"node_id":"MDQ6VXNlcjIyNDk2NDg=","avatar_url":"https://avatars1.githubusercontent.com/u/2249648?v=4","gravatar_id":"","url":"https://api.github.com/users/JohnTortugo","html_url":"https://github.com/JohnTortugo","followers_url":"https://api.github.com/users/JohnTortugo/followers","following_url":"https://api.github.com/users/JohnTortugo/following{/other_user}","gists_url":"https://api.github.com/users/JohnTortugo/gists{/gist_id}","starred_url":"https://api.github.com/users/JohnTortugo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JohnTortugo/subscriptions","organizations_url":"https://api.github.com/users/JohnTortugo/orgs","repos_url":"https://api.github.com/users/JohnTortugo/repos","events_url":"https://api.github.com/users/JohnTortugo/events{/privacy}","received_events_url":"https://api.github.com/users/JohnTortugo/received_events","type":"User","site_admin":false},"assignees":[{"login":"JohnTortugo","id":2249648,"node_id":"MDQ6VXNlcjIyNDk2NDg=","avatar_url":"https://avatars1.githubusercontent.com/u/2249648?v=4","gravatar_id":"","url":"https://api.github.com/users/JohnTortugo","html_url":"https://github.com/JohnTortugo","followers_url":"https://api.github.com/users/JohnTortugo/followers","following_url":"https://api.github.com/users/JohnTortugo/following{/other_user}","gists_url":"https://api.github.com/users/JohnTortugo/gists{/gist_id}","starred_url":"https://api.github.com/users/JohnTortugo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JohnTortugo/subscriptions","organizations_url":"https://api.github.com/users/JohnTortugo/orgs","repos_url":"https://api.github.com/users/JohnTortugo/repos","events_url":"https://api.github.com/users/JohnTortugo/events{/privacy}","received_events_url":"https://api.github.com/users/JohnTortugo/received_events","type":"User","site_admin":false}],"milestone":null,"comments":6,"created_at":"2018-08-02T20:46:47Z","updated_at":"2018-08-26T17:58:29Z","closed_at":null,"author_association":"MEMBER","body":"@dagood commented on [Fri Jul 27 2018](https://github.com/dotnet/core-eng/issues/3956)\n\nTL;DR: I think we should make a VSTS build def that publishes packages to the central blob feed, or make sure FR can do this.\r\n\r\n@jcagme, @MattGal, what do you think?\r\n\r\n/cc @sfilipi @eerhardt \r\n\r\n---\r\n\r\nRecently I've had a few requests to upload some nupkgs to MyGet and the central blob feed. They're data packages (for ML) that are produced as needed, not by a build. I've been using hacked-up ProdCon v1 infrastructure to push to the blob feed, but I think either FR should be able to handle these requests or I should be able to show people how to push packages themselves in a reasonable way.\r\n\r\nThe Sleet command-line configuration is daunting, but I think FR could use it if doc'd: https://github.com/emgarten/Sleet. However, I don't think we should tell people to use it: it uses write access to the entire account to do anything. It would be easy for someone to do something weird by accident and destroy the feed, causing dotnet repos to be unbuildable until it's fixed. (As far as I know, there's no backup.)\r\n\r\nWe use build defs for a few other scenarios like this, and I think it makes sense here, too.\n\n---\n\n@jcagme commented on [Mon Jul 30 2018](https://github.com/dotnet/core-eng/issues/3956#issuecomment-408924281)\n\nI agree this can be an FR issue, but will leave the decision to @MattGal.\r\n\r\nWhen a one-of upload is required, do we need to upload to both MyGet and blob feed? For blob feeds do we need the package to be in `dotnet-core` or we could use a different feed? If the second we could be more \"relaxed\" on the uploads.\r\n\r\nFrom Sleet, code to do this should be straight forward. Deciding where to create the task (buildtools?) and configuring it might be the time consuming part, but nothing hard.\n\n---\n\n@dagood commented on [Mon Jul 30 2018](https://github.com/dotnet/core-eng/issues/3956#issuecomment-408927077)\n\n> When a one-of upload is required, do we need to upload to both MyGet and blob feed?\r\n\r\nYes, it would be nice for the definition to be able to do both. (In theory people can get individual permission to push to MyGet, but using a centralized def would be great.)\r\n\r\n> For blob feeds do we need the package to be in `dotnet-core` or we could use a different feed?\r\n\r\nOnly dotnet-core. Once it's reasonable to make a private blob feed (https://github.com/dotnet/arcade/issues/321) that seems like a useful target, too, but not now.\r\n\r\n> Deciding where to create the task (buildtools?) and configuring it might be the time consuming part, but nothing hard.\r\n\r\nThis definitely seems like something for Arcade. But how to use a *task* simply... I don't know about that.\n\n---\n\n@jcagme commented on [Mon Jul 30 2018](https://github.com/dotnet/core-eng/issues/3956#issuecomment-408928840)\n\nWhile I think Arcade is the ultimate goal, it might take some time to get it there. If there is not big rush then we should aim to build it there.\n\n---\n\n@dagood commented on [Mon Jul 30 2018](https://github.com/dotnet/core-eng/issues/3956#issuecomment-408944674)\n\nI'm a little surprised to hear that (mostly because the feed package is already in Arcade) but it doesn't particularly matter to me where it ends up.\n\n---\n\n@alexperovich commented on [Mon Jul 30 2018](https://github.com/dotnet/core-eng/issues/3956#issuecomment-408961120)\n\nThis should just be a single csproj with a `<PackageReference Include=\"Microsoft.DotNet.Build.Tasks.Feed\"/>` in it. It becomes a bit awkward but you can create some `FilesToPublish` items from the packages then run the \"PublishFilesToBlobFeed\" target.\n\n---\n\n@dagood commented on [Mon Jul 30 2018](https://github.com/dotnet/core-eng/issues/3956#issuecomment-408962137)\n\nAh, yeah, and creating that csproj using a build def step worked fine for the signing def, seems like it would be nice here, too.\r\n\r\n(And the MyGet dotnet-core publish should be fine with the built-in step.)\n\n"},"comment":{"url":"https://api.github.com/repos/dotnet/arcade/issues/comments/416056879","html_url":"https://github.com/dotnet/arcade/issues/422#issuecomment-416056879","issue_url":"https://api.github.com/repos/dotnet/arcade/issues/422","id":416056879,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNjA1Njg3OQ==","user":{"login":"dagood","id":12819531,"node_id":"MDQ6VXNlcjEyODE5NTMx","avatar_url":"https://avatars3.githubusercontent.com/u/12819531?v=4","gravatar_id":"","url":"https://api.github.com/users/dagood","html_url":"https://github.com/dagood","followers_url":"https://api.github.com/users/dagood/followers","following_url":"https://api.github.com/users/dagood/following{/other_user}","gists_url":"https://api.github.com/users/dagood/gists{/gist_id}","starred_url":"https://api.github.com/users/dagood/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dagood/subscriptions","organizations_url":"https://api.github.com/users/dagood/orgs","repos_url":"https://api.github.com/users/dagood/repos","events_url":"https://api.github.com/users/dagood/events{/privacy}","received_events_url":"https://api.github.com/users/dagood/received_events","type":"User","site_admin":false},"created_at":"2018-08-26T17:58:29Z","updated_at":"2018-08-26T17:58:29Z","author_association":"MEMBER","body":"A few comments:\r\n\r\n1. I wouldn't expect splitting `CopyLocal` and `PublishToCentralBlobFeed` into different steps of the build def to work: the `CopyLocal` step creates `ToPublish` items which is what `PublishToCentralBlobFeed` publishes. I think just doing `CopyLocal` again in the blob feed publish task will work ok. (You could do something more with the conditions to prevent duplicate work, but I don't expect the copy to take long enough for that to matter.)\r\n2. The account key variables which were redirecting to the variable groups were marked secret (makes sense for manual queueing) so I can't tell what the values are anymore. Are they still redirecting to the variable group by default?\r\n3. The doc doesn't mention what the default values for the account keys do.\r\n4. I think the doc should mention again when describing the feed urls that setting one to blank means it won't be published to. This will make the info easy to see in context."}}
{"actor":{"display_login":"dagood"}}