https://dev.arvados.org/https://dev.arvados.org/favicon.ico?15576888422020-09-09T16:11:43ZArvadosArvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=867882020-09-09T16:11:43ZPeter Amstutzpeter.amstutz@curii.com
<ul><li><strong>Release</strong> set to <i>25</i></li></ul> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=867892020-09-09T16:11:55ZPeter Amstutzpeter.amstutz@curii.com
<ul><li><strong>Category</strong> set to <i>Workbench</i></li></ul> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=868032020-09-09T16:25:25ZPeter Amstutzpeter.amstutz@curii.com
<ul><li><strong>Assigned To</strong> set to <i>Peter Amstutz</i></li></ul> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=869062020-09-10T21:27:29ZPeter Amstutzpeter.amstutz@curii.com
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>In Progress</i></li></ul> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=869362020-09-14T16:15:20ZPeter Amstutzpeter.amstutz@curii.com
<ul></ul><p>16811-public-favs @ <a class="changeset" title="16811: Make public favorites work Update API docs. Arvados-DCO-1.1-Signed-off-by: Peter Amstutz..." href="https://dev.arvados.org/projects/arvados/repository/arvados/revisions/3c893d29ad7a9acda0c25b47fd0c9ba5a4a5193a">arvados|3c893d29ad7a9acda0c25b47fd0c9ba5a4a5193a</a></p>
<p>16811-public-favs @ <a class="changeset" title="16811: Don't filter star links on name Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <peter.amstu..." href="https://dev.arvados.org/projects/arvados/repository/arvados-workbench2/revisions/5145f5d248a59bd87869096fddf0365766249575">arvados-workbench2|5145f5d248a59bd87869096fddf0365766249575</a></p>
<p>This works, but</p>
<ol>
<li>I didn't add any tests yet</li>
<li>We might want to reconsider the representation</li>
</ol>
<p>The part to reconsider: previously, a public favorite was a "star" link owned by the "all users" group. The "all users" group is now a "role" and "role" groups cannot own things, only have outgoing links. So now adding a public favorite now involves a two step process of creating a "star" link owned by the system user, and the creating a can_read permission link from "all users" to that individual link object.</p>
<p>A less confusing solution would be a create a new special "Public favorites" project. This would have a well known UUID (<a href="https://arvadosapi.com/zzzzz-j7d0g-publicfavorites">zzzzz-j7d0g-publicfavorites</a>) and "all users" would have <code>can_read</code> permission. Then, public favorites would be owned by that project. This would be more like it worked before, but it does require a database migration.</p> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=869432020-09-14T18:36:26ZTom Cleggtom@curii.com
<ul><li><strong>Related to</strong> <i><a class="issue tracker-1 status-3 priority-4 priority-default closed parent" href="/issues/16007">Bug #16007</a>: Permission graph update is slow with large numbers of groups</i> added</li></ul> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=869632020-09-15T15:45:18ZPeter Amstutzpeter.amstutz@curii.com
<ul></ul><p>16811-public-favs @ <a class="changeset" title="16811: Add "Public project" for storing favorites. Workbench and documentation updated for "publ..." href="https://dev.arvados.org/projects/arvados/repository/arvados/revisions/7e358c01226d55a44ca7b6224f9c33c38510572b">arvados|7e358c01226d55a44ca7b6224f9c33c38510572b</a></p>
<p>16811-public-favs @ <a class="changeset" title="16811: Use public favorites project. Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <peter.amstutz..." href="https://dev.arvados.org/projects/arvados/repository/arvados-workbench2/revisions/e44d47bdea01e25926f4f3ff750f2d1cb4fd8204">arvados-workbench2|e44d47bdea01e25926f4f3ff750f2d1cb4fd8204</a></p>
<ul>
<li>DatabaseSeeds creates public favorites project and permission link</li>
<li>Migration ensures public favorites project and permission link exists and adjusts links to new public favorites</li>
<li>Workbench & Workbench 2 updated to use new publicfavorites project</li>
<li>Also added check to disallow system users/groups from being destroyed</li>
<li>On workbench2 the "public favorites" project shows up under "shared with me" but it will appear to be empty. I'm not sure if it should be (1) filtered out from "shared with me", (2) special-cased to display the public favorites view, or (3) the standard project panel view should include display of "star" links. I kind of like (3) the best as it would give us the option to simplify the left panel by removing "favorites" as separate panels.</li>
<li>Still needs tests</li>
</ul> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=869812020-09-15T22:18:40ZLucas Di Pentimalucas.dipentima@curii.com
<ul></ul><p>Some comments:</p>
<ul>
<li>I’m not sure the migration is reversible the way it’s written. I’ve read the documentation and it seems that only the commands listed on <a class="external" href="https://api.rubyonrails.org/v5.2.1/classes/ActiveRecord/Migration/CommandRecorder.html">https://api.rubyonrails.org/v5.2.1/classes/ActiveRecord/Migration/CommandRecorder.html</a> are auto-reversible.</li>
<li>Should the workbenches check the API version so that they can work with older clusters?</li>
<li>Regarding the UI question on wb2 fav panels: For the time being I guess the less involved option would be the first one, and then we may revisit this topic after all pending tasks for replacing wb1 are ready, wdyt?</li>
</ul> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=870362020-09-17T22:04:17ZPeter Amstutzpeter.amstutz@curii.com
<ul><li><strong>Subject</strong> changed from <i>Check that "public favorites" still work</i> to <i>Ensure that "public favorites" still work</i></li></ul> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=870692020-09-18T23:22:17ZPeter Amstutzpeter.amstutz@curii.com
<ul></ul><p>Lucas Di Pentima wrote:</p>
<blockquote>
<p>Some comments:</p>
<ul>
<li>I’m not sure the migration is reversible the way it’s written. I’ve read the documentation and it seems that only the commands listed on <a class="external" href="https://api.rubyonrails.org/v5.2.1/classes/ActiveRecord/Migration/CommandRecorder.html">https://api.rubyonrails.org/v5.2.1/classes/ActiveRecord/Migration/CommandRecorder.html</a> are auto-reversible.</li>
</ul>
</blockquote>
<p>Instead of 'change' it runs on "up", and "down" doesn't do anything. I don't think trying to do anything in "down" is useful.</p>
<blockquote>
<ul>
<li>Should the workbenches check the API version so that they can work with older clusters?</li>
</ul>
</blockquote>
<p>If we were going to roll out an updated workbench without updating the API server, we would need to check the API version. But we don't support that in general, and I don't think we're going to do that for on the playground or dev clusters, either.</p>
<blockquote>
<ul>
<li>Regarding the UI question on wb2 fav panels: For the time being I guess the less involved option would be the first one, and then we may revisit this topic after all pending tasks for replacing wb1 are ready, wdyt?</li>
</ul>
</blockquote>
<p>Yes, that turned out to be pretty easy, I just tweaked the 'shared' query to filter out the publicfavorites project.</p>
<p>I added some tests. These are the first cypress tests I've written. I'm very impressed by the interactive mode, it is a great framework.</p>
<p>16811-public-favs <a class="changeset" title="16811: Add a test that system users/groups can't be deleted. Also tweak PublicFavoritesProject m..." href="https://dev.arvados.org/projects/arvados/repository/arvados/revisions/a13547aec78a75da2174e083f6015280787cd597">arvados|a13547aec78a75da2174e083f6015280787cd597</a></p>
<p>16811-public-favs @ <a class="changeset" title="16811: Filter "Public favorites" from "Shared with me" & add test Arvados-DCO-1.1-Signed-off-by:..." href="https://dev.arvados.org/projects/arvados/repository/arvados-workbench2/revisions/91ec75d2d0e388a8818d0d4d2d7c2990cccf7f62">arvados-workbench2|91ec75d2d0e388a8818d0d4d2d7c2990cccf7f62</a></p> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=871992020-09-22T19:31:10ZLucas Di Pentimalucas.dipentima@curii.com
<ul></ul><ul>
<li>I think we could do a reversible migration (as it seems to me it’s a trivial task) allowing a correct downgrade process in case it's needed for whatever reason, but if you don’t think that’s needed, I suppose we should be adding an upgrade note warning that public favorites may not be visible in case of a downgrade?</li>
<li>I ran wb2 tests and got a failure: <a class="external" href="https://ci.arvados.org/view/Developer/job/developer-tests-workbench2/93/"<a href="https://ci.arvados.org/view/Developer/job/developer-tests-workbench2/93/">developer-tests-workbench2: #93 <img src="https://ci.arvados.org/buildStatus/icon?job=developer-tests-workbench2&build=93" alt="" /></a></a></li>
</ul>
<p>The rest LGTM.</p> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=872012020-09-22T19:56:09ZPeter Amstutzpeter.amstutz@curii.com
<ul></ul><p>Lucas Di Pentima wrote:</p>
<blockquote>
<ul>
<li>I think we could do a reversible migration (as it seems to me it’s a trivial task) allowing a correct downgrade process in case it's needed for whatever reason, but if you don’t think that’s needed, I suppose we should be adding an upgrade note warning that public favorites may not be visible in case of a downgrade?</li>
</ul>
</blockquote>
<p>It actually isn't trivial.</p>
<p>The real problem is that fix_roles_projects migration is non-reversible, and that's the one that actually breaks public favorites (because 'star' links are no longer be owned by the 'all users' group). So I would have to adjust that migration as well to be able to fully revert the links back to the 2.0 scheme.</p>
<p>I don't really want to do that. However, you're right that we should document the change in the upgrade notes.</p>
<blockquote>
<ul>
<li>I ran wb2 tests and got a failure: <a class="external" href="https://ci.arvados.org/view/Developer/job/developer-tests-workbench2/93/"<a href="https://ci.arvados.org/view/Developer/job/developer-tests-workbench2/93/">developer-tests-workbench2: #93 <img src="https://ci.arvados.org/buildStatus/icon?job=developer-tests-workbench2&build=93" alt="" /></a></a></li>
</ul>
</blockquote>
<p>I believe that is because the arvados repo changes need to be merged first.</p>
<blockquote>
<p>The rest LGTM.</p>
</blockquote> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=872392020-09-23T16:08:47ZPeter Amstutzpeter.amstutz@curii.com
<ul><li><strong>Target version</strong> changed from <i>2020-09-23 Sprint</i> to <i>2020-10-07 Sprint</i></li></ul> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=872802020-09-24T13:45:22ZPeter Amstutzpeter.amstutz@curii.com
<ul><li><strong>Status</strong> changed from <i>In Progress</i> to <i>Resolved</i></li></ul> Arvados - Bug #16811: Ensure that "public favorites" still workhttps://dev.arvados.org/issues/16811?journal_id=872952020-09-24T20:00:40ZPeter Amstutzpeter.amstutz@curii.com
<ul><li><strong>Related to</strong> <i><a class="issue tracker-1 status-3 priority-4 priority-default closed" href="/issues/16884">Bug #16884</a>: API server tests failing with "Didn't match" error</i> added</li></ul>