Tests failing because of dependency on swh-storage
Details
- Reviewers
anlambert - Group Reviewers
Reviewers - Maniphest Tasks
- T2938: Create API endpoint to access raw_extrinsic_metadata
Diff Detail
- Repository
- rDWAPPS Web applications
- Lint
No Linters Available - Unit
No Unit Test Coverage - Build Status
Buildable 22242 Build 34622: Phabricator diff pipeline on jenkins Jenkins console · Jenkins Build 34621: arc lint + arc unit
Time | Test | |
---|---|---|
36,590 ms | Jenkins > .tox.py3.lib.python3.7.site-packages.swh.web.tests.api.views.test_metadata::Tests / Python tests / test_api_raw_extrinsic_metadata api_client = <rest_framework.test.APIClient object at 0x7fcd61508278>
archive_data = <swh.web.tests.conftest._ArchiveData object at 0x7fcd617093c8>
| |
31,104 ms | Jenkins > .tox.py3.lib.python3.7.site-packages.swh.web.tests.api.views.test_metadata::Tests / Python tests / test_api_raw_extrinsic_metadata_scroll[100] api_client = <rest_framework.test.APIClient object at 0x7fcd5f8c9080>
archive_data = <swh.web.tests.conftest._ArchiveData object at 0x7fcd617093c8>
limit = 100
| |
23,631 ms | Jenkins > .tox.py3.lib.python3.7.site-packages.swh.web.tests.api.views.test_metadata::Tests / Python tests / test_api_raw_extrinsic_metadata_scroll[10] api_client = <rest_framework.test.APIClient object at 0x7fcd60627ba8>
archive_data = <swh.web.tests.conftest._ArchiveData object at 0x7fcd617093c8>
limit = 10
| |
29,082 ms | Jenkins > .tox.py3.lib.python3.7.site-packages.swh.web.tests.api.views.test_metadata::Tests / Python tests / test_api_raw_extrinsic_metadata_scroll[1] api_client = <rest_framework.test.APIClient object at 0x7fcd5f943a58>
archive_data = <swh.web.tests.conftest._ArchiveData object at 0x7fcd617093c8>
limit = 1
| |
6,890 ms | Jenkins > .tox.py3.lib.python3.7.site-packages.swh.web.tests.api.views.test_metadata::Tests / Python tests / test_api_raw_extrinsic_metadata_scroll[2] api_client = <rest_framework.test.APIClient object at 0x7fcd60987780>
archive_data = <swh.web.tests.conftest._ArchiveData object at 0x7fcd617093c8>
limit = 2
| |
View Full Test Results (5 Failed · 697 Passed · 5 Skipped) |
Event Timeline
Build has FAILED
Patch application report for D5875 (id=21045)
Rebasing onto 01ffb31ff7...
First, rewinding head to replay your work on top of it... Applying: Add an endpoint to list and access raw extrinsic metadata.
Changes applied before test
commit 4d286468c1296869e361a96c36e2313fb671e54d Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Tue Jun 15 16:49:53 2021 +0200 Add an endpoint to list and access raw extrinsic metadata.
Link to build: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/878/
See console output for more information: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/878/console
looks rather good to me, couple of suggestions/remarks/questions inline.
swh/web/api/views/metadata.py | ||
---|---|---|
24 | do you need to mention the swhid in the url? I don't really know if it's compatible with the other suggestion on the url below. That would match what we do with the content api (the raw endpoint). | |
60 | maybe "trim" the authority_str because that could pass with malformed " authority-str" or some other form? | |
132 | to match what we do with content... | |
swh/web/common/converters.py | ||
299–307 | there, compacted ;) |
swh/web/api/views/metadata.py | ||
---|---|---|
24 | I want to add origins next, so I wanted to differentiate the two URLs.
Which is exactly what I didn't want, actually. /raw/ at the end of "/metadata/extrinsic/(?P<target>{SWHID_RE})/raw/" because it implies there is another endpoint "/metadata/extrinsic/(?P<target>{SWHID_RE})/"; but there isn't, and probably never will. |
swh/web/api/views/metadata.py | ||
---|---|---|
1 | Copyright (C) 2021 | |
24 | How about using /metadata/extrinsic/(?P<target>{SWHID_RE})/ for that endpoint and /metadata/extrinsic/(?P<target>{SWHID_RE})/raw for the one getting the raw metadata bytes ? Raw implies a non JSON response format from my point of view. | |
42 | You should add a description of the JSON response here. | |
70 | why the from None here ? | |
144–147 | return HttpResponse(...) |
swh/web/api/views/metadata.py | ||
---|---|---|
27 | Use the swh.web.api.apidoc.apidoc decorator here to register endpoint documentation. @api_doc("/metadata/extrinsic/raw/swhid/") | |
30 | .. http:get:: /api/1/metadata/extrinsic/raw/swhid/(target)/ | |
134 | Use the swh.web.api.apidoc.apidoc decorator here to register endpoint documentation. @api_doc("/metadata/extrinsic/raw/get/") |
swh/web/api/views/metadata.py | ||
---|---|---|
134 | No, it's not documented on purpose because users shouldn't build this URL themselves |
Build has FAILED
Patch application report for D5875 (id=21082)
Rebasing onto 1bd55d031e...
First, rewinding head to replay your work on top of it... Applying: Add an endpoint to list and access raw extrinsic metadata.
Changes applied before test
commit b34132f12f162d448cd7e1b2d6845c767d90c4c4 Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Tue Jun 15 16:49:53 2021 +0200 Add an endpoint to list and access raw extrinsic metadata.
Link to build: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/880/
See console output for more information: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/880/console
Build has FAILED
Patch application report for D5875 (id=21083)
Rebasing onto 1bd55d031e...
Current branch diff-target is up to date.
Changes applied before test
commit 6cbe8079a4ed8a9f2742291b4c84f18e9f6e2eab Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Tue Jun 15 16:49:53 2021 +0200 Add an endpoint to list and access raw extrinsic metadata.
Link to build: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/881/
See console output for more information: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/881/console
Build has FAILED
Patch application report for D5875 (id=21117)
Rebasing onto 1bd55d031e...
Current branch diff-target is up to date.
Changes applied before test
commit 7c722d889d28d8c6fb2b4ed676fffa10452ad42c Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Tue Jun 15 16:49:53 2021 +0200 Add an endpoint to list and access raw extrinsic metadata.
Link to build: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/882/
See console output for more information: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/882/console
Build has FAILED
Patch application report for D5875 (id=21122)
Rebasing onto 1bd55d031e...
Current branch diff-target is up to date.
Changes applied before test
commit 4c22e06e79387cdc43a237c16a2cfd01777250ba Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Tue Jun 15 16:49:53 2021 +0200 Add an endpoint to list and access raw extrinsic metadata.
Link to build: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/883/
See console output for more information: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/883/console
swh/web/api/views/metadata.py | ||
---|---|---|
74 | You need to remove the leading slash here otherwise the following URL is generated ` /api/1//raw-extrinsic-metadata/swhid/swh:1:dir:a2faa28028657859c16ff506924212b33f0e1307/?authority=forge%20https://pypi.org/ ` which leads to a 404. |
swh/web/api/views/metadata.py | ||
---|---|---|
138 | Pass the input request object as keyword parameter here, it will return a full URL. Current JSON output is: [ { "authority": { "type": "forge", "url": "https://pypi.org/" }, "discovery_date": "2021-05-07T04:31:14+00:00", "fetcher": { "name": "swh.loader.package.pypi.loader.PyPILoader", "version": "0.22.0" }, "format": "pypi-project-json", "metadata_url": "/api/1/raw-extrinsic-metadata/get/107328dd41f23e8d4addf35a7091e435153a676e/", "origin": "https://pypi.org/project/swh.core/", "revision": "swh:1:rev:48371365859f4724c609895caaab362168623507", "target": "swh:1:dir:a2faa28028657859c16ff506924212b33f0e1307" } ] |
swh/web/api/views/metadata.py | ||
---|---|---|
174 | How about setting a default filename for the blob to download as metadata id by adding that parameter ? headers={"Content-disposition": f"attachment; filename={id}"} |
fix URL roots in documentation and returned objects, as requested
swh/web/api/views/metadata.py | ||
---|---|---|
174 | I have a better idea; do you mind if I do it in a future diff? |
Build has FAILED
Patch application report for D5875 (id=21256)
Rebasing onto 1bd55d031e...
Current branch diff-target is up to date.
Changes applied before test
commit 00f08cea038d6d5e1ed6998db4ba9c61b18ec399 Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Tue Jun 15 16:49:53 2021 +0200 Add an endpoint to list and access raw extrinsic metadata.
Link to build: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/892/
See console output for more information: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/892/console
Build has FAILED
Patch application report for D5875 (id=21261)
Rebasing onto 1bd55d031e...
Current branch diff-target is up to date.
Changes applied before test
commit 785719a16a25bed9967c5086e781b77dc09e89f5 Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Tue Jun 15 16:49:53 2021 +0200 Add an endpoint to list and access raw extrinsic metadata.
Link to build: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/901/
See console output for more information: https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/901/console
Build is green
Patch application report for D5875 (id=21287)
Rebasing onto f9f1e969e9...
First, rewinding head to replay your work on top of it... Applying: Add an endpoint to list and access raw extrinsic metadata.
Changes applied before test
commit 18632aae5f60e056a35d7932ec6ffb19f83f8252 Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Tue Jun 15 16:49:53 2021 +0200 Add an endpoint to list and access raw extrinsic metadata.
See https://jenkins.softwareheritage.org/job/DWAPPS/job/tests-on-diff/905/ for more details.