Hi all,
First, thank you very much for maintaining this beautiful open source software for all these years, it's really one of my favorite software ever !
I'm trying to get sourcemapped tracebacks from Sentry from a server that's being HTTP Basic auth with sentry.io.
So, I have a release with an issue:

The release has all files uploaded with the right paths, sourcemaps, bundles, and sources:

But still, sentry tries to get the sourcemaps from http, resulting in 401, instead of using the release artifacts:

Also, here are my release logs:
changed: [localhost] => changed=true
cmd: docker run --name mrs-jpic-pre-deploy --rm -v /home/mrs-jpic/log:/app/log -e SENTRY_DSN='https://[email protected]/1301622' -e SENTRY_URL='https://[email protected]' -e SENTRY_ORG='yourlabs-zd' -e SECRET_KEY='redacted' -e MEDIA_ROOT='/media' -e DB_ENGINE='django.db.backends.postgresql' -e DB_USER='django' -e DB_PASSWORD='redacted' -e DB_HOST='mrs-jpic-postgres' -e DB_NAME='mrs-jpic' -e ACME_CA_URI='https://acme-v01.api.letsencrypt.org/directory' -e PLAYLABS_PLUGINS='postgres,uwsgi,django,sentry' -e PLAYLABS_PREFIX='mrs' -e PLAYLABS_INSTANCE='jpic' -e DEFAULT_FROM_EMAIL='[email protected]' -e ALLOWED_HOSTS='jpic.mrs.yourlabs.org' -e VIRTUAL_HOST='jpic.mrs.yourlabs.org,www.jpic.mrs.yourlabs.org' -e LOG='/app/log' -e SENTRY_AUTH_TOKEN='redacted' -e SENTRY_PROJECT='test' -e TEAM_EMAIL='[email protected]' -e
LIQUIDATION_EMAIL='redacted@example' -e EMAIL_HOST='mailcatcher' -e EMAIL_PORT='1025' -e LETSENCRYPT_EMAIL='redacted@example' -e LETSENCRYPT_HOST='jpic.redacted,www.jpic.redacted' --network mrs-jpic betagouv/mrs:jpic bash -c '[ ! -f /app/predeploy ] || /app/predeploy'
delta: '0:00:49.029103'
end: '2018-10-15 23:39:16.480027'
rc: 0
start: '2018-10-15 23:38:27.450924'
stderr: |-
+ mrs migrate --noinput
System check identified some issues:
WARNINGS:
mrsuser.User.caisses: (fields.W340) null has no effect on ManyToManyField.
+ export SENTRY_OVERWRITE=1
+ SENTRY_OVERWRITE=1
+ REPO=betagouv/mrs
+ clilabs +sentry:release src/mrs/static
stderr_lines:
- + mrs migrate --noinput
- 'System check identified some issues:'
- ''
- 'WARNINGS:'
- 'mrsuser.User.caisses: (fields.W340) null has no effect on ManyToManyField.'
- + export SENTRY_OVERWRITE=1
- + SENTRY_OVERWRITE=1
- + REPO=betagouv/mrs
- + clilabs +sentry:release src/mrs/static
stdout: |-
Operations to perform:
Apply all migrations: admin, auth, caisse, contenttypes, denorm, djcall, institution, mrsattachment, mrsemail, mrsrequest, mrsstat, mrsuser, person, sessions
Running migrations:
No migrations to apply.
Your models have changes that are not yet reflected in a migration, and so won't be applied.
Run 'manage.py makemigrations' to make new migrations, and then re-run 'manage.py migrate' to apply them.
+ sentry-cli releases new 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a -p test
Created release 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a.
+ sentry-cli releases set-commits 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a --commit betagouv/mrs@3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a
error: No repositories are configured in Sentry for your organization.
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload webpack_bundles/base.723b1759b16a835d4b39.js /static/webpack_bundles/base.723b1759b16a835d4b39.js
A cfeff88e322cc5c68005d4706c3a9fb4d590230f (433749 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload webpack_bundles/crudlfap.ee94be2b71b5c77feeb0.js /static/webpack_bundles/crudlfap.ee94be2b71b5c77feeb0.js
A f310419ef6f01aa29bf3805f3645f55518bd3d11 (2470515 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload webpack_bundles/base.4a723ba1292f923c7a4c.js /static/webpack_bundles/base.4a723ba1292f923c7a4c.js
A bc925d9b907e0632a59a7d246fb96f4342a53a93 (1277796 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload webpack_bundles/iframe.4a723ba1292f923c7a4c.js /static/webpack_bundles/iframe.4a723ba1292f923c7a4c.js
A aa4c623a30f9fa775533651cae788272aeb12d84 (772736 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload webpack_bundles/base.ee94be2b71b5c77feeb0.js /static/webpack_bundles/base.ee94be2b71b5c77feeb0.js
A 6634f225a3397b34178198d4ad2f7f05b3697112 (1277773 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload webpack_bundles/iframe.ee94be2b71b5c77feeb0.js /static/webpack_bundles/iframe.ee94be2b71b5c77feeb0.js
A d8aa48d430b81ef665b048581919f3066fc0cc0b (772736 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload webpack_bundles/crudlfap.4a723ba1292f923c7a4c.js /static/webpack_bundles/crudlfap.4a723ba1292f923c7a4c.js
A 306bf9dd14bdd68da4e691e88c69da62e40c8d5f (2470515 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload webpack_bundles/crudlfap.723b1759b16a835d4b39.js /static/webpack_bundles/crudlfap.723b1759b16a835d4b39.js
A 043ac301b146d5e52964d90f0df5513304f40ed7 (981647 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload webpack_bundles/iframe.723b1759b16a835d4b39.js /static/webpack_bundles/iframe.723b1759b16a835d4b39.js
A ff3271f740e3ede0a285d283a679bd33fb0421df (311256 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload webpack_bundles/iframe.532249ba3d1cd44b0f17.js /static/webpack_bundles/iframe.532249ba3d1cd44b0f17.js
A 07c128779761893f9987ab0cdea1144fe780c430 (311312 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload webpack_bundles/crudlfap.532249ba3d1cd44b0f17.js /static/webpack_bundles/crudlfap.532249ba3d1cd44b0f17.js
A e5333492c874e373801e1892443a9c792ec8d387 (982044 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload webpack_bundles/base.532249ba3d1cd44b0f17.js /static/webpack_bundles/base.532249ba3d1cd44b0f17.js
A b7ef338a68979199d627bcbe604c6897a127538a (433830 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/crudlfap.js /static/js/crudlfap.js
A c1432550f48d7d6fa55c8f5aa30d3965bc21d4d2 (501 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/load-header.js /static/js/load-header.js
A 25a82c00085d043f186f02a1a17d03545604559c (175 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/submit-ui.js /static/js/submit-ui.js
A 7106dac6d6779018fd6abd1288189972688b7c1c (4744 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/iframe.js /static/js/iframe.js
A 175b68e26f83669b3e6f87c0bbf19a8e069c62be (1679 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/mrsrequest.js /static/js/mrsrequest.js
A 7116467430bcc538447b8b74413b4abbba1efdf5 (9225 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/mrsattachment.js /static/js/mrsattachment.js
A 8cb9696a28e2109690aff55f82bd3074fec925b9 (4711 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/base.js /static/js/base.js
A 02850a653b9bb8968224910a55a4c84ddc0a7e3f (1581 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/smoke.test.js /static/js/smoke.test.js
A bb8387454994f7645959f594d9b85d2c0fb359cd (1480 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/contact.js /static/js/contact.js
A 1c8ddbb16c8313cc6a9098421be054b8dbe2a4e6 (1373 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/submit-ui.test.js /static/js/submit-ui.test.js
A 31f2ab067613a01d82e903316e02cbc76dd038c9 (3553 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/upload.test.js /static/js/upload.test.js
A 95ed165b98fb9694d7c60c1845cf85fb82d60c51 (14586 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/upload.js /static/js/upload.js
A 95a182ec7e1486f723b722a146cdfc8e2e777412 (7544 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/components/Header.test.js /static/js/components/Header.test.js
A 6219484056b96ab7d6007779d7b51d66d16eb1bc (8972 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/components/Caroussel.js /static/js/components/Caroussel.js
A ec0ec9b1d008284c5a6682f5e8352331af261f71 (3617 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/components/UI.test.js /static/js/components/UI.test.js
A b83becbc6c6d8f8aa576cccdd7ed2f2779fe80a4 (1711 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/components/UI.js /static/js/components/UI.js
A 2ea679e80b9ac6fb9bd32b96218fe397f52346b6 (687 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/components/Caroussel.test.js /static/js/components/Caroussel.test.js
A 0a6aea3d9cf8100d80d4156616787d0d6e860f7e (289 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/components/Header.js /static/js/components/Header.js
A 40bf608da395c77baa4ffb55ae5009428ea053bf (3154 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/controllers/mrsstat_controller.js /static/js/controllers/mrsstat_controller.js
A 99495656dff7d51eefc7731be289779276d0d814 (209 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload js/controllers/emailtemplate_controller.js /static/js/controllers/emailtemplate_controller.js
A 12a86c92a8796880182d045fa9679d465cf4024c (668 bytes)
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload-sourcemaps --validate --url-prefix /static/webpack_bundles webpack_bundles/base.4a723ba1292f923c7a4c.js.map
> Analyzing 1 sources
> Adding source map references
> Validating sources
> Uploading source maps for release 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a
Source Map Upload Report
Source Maps
/static/webpack_bundles/base.4a723ba1292f923c7a4c.js.map
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload-sourcemaps --validate --url-prefix /static/webpack_bundles webpack_bundles/base.ee94be2b71b5c77feeb0.js.map
> Analyzing 1 sources
> Adding source map references
> Validating sources
> Uploading source maps for release 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a
Source Map Upload Report
Source Maps
/static/webpack_bundles/base.ee94be2b71b5c77feeb0.js.map
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload-sourcemaps --validate --url-prefix /static/webpack_bundles webpack_bundles/iframe.4a723ba1292f923c7a4c.js.map
> Analyzing 1 sources
> Adding source map references
> Validating sources
> Uploading source maps for release 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a
Source Map Upload Report
Source Maps
/static/webpack_bundles/iframe.4a723ba1292f923c7a4c.js.map
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload-sourcemaps --validate --url-prefix /static/webpack_bundles webpack_bundles/crudlfap.4a723ba1292f923c7a4c.js.map
> Analyzing 1 sources
> Adding source map references
> Validating sources
> Uploading source maps for release 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a
Source Map Upload Report
Source Maps
/static/webpack_bundles/crudlfap.4a723ba1292f923c7a4c.js.map
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload-sourcemaps --validate --url-prefix /static/webpack_bundles webpack_bundles/crudlfap.ee94be2b71b5c77feeb0.js.map
> Analyzing 1 sources
> Adding source map references
> Validating sources
> Uploading source maps for release 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a
Source Map Upload Report
Source Maps
/static/webpack_bundles/crudlfap.ee94be2b71b5c77feeb0.js.map
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload-sourcemaps --validate --url-prefix /static/webpack_bundles webpack_bundles/iframe.ee94be2b71b5c77feeb0.js.map
> Analyzing 1 sources
> Adding source map references
> Validating sources
> Uploading source maps for release 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a
Source Map Upload Report
Source Maps
/static/webpack_bundles/iframe.ee94be2b71b5c77feeb0.js.map
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload-sourcemaps --validate --url-prefix /static/webpack_bundles webpack_bundles/crudlfap.532249ba3d1cd44b0f17.js.map
> Analyzing 1 sources
> Adding source map references
> Validating sources
> Uploading source maps for release 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a
Source Map Upload Report
Source Maps
/static/webpack_bundles/crudlfap.532249ba3d1cd44b0f17.js.map
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload-sourcemaps --validate --url-prefix /static/webpack_bundles webpack_bundles/iframe.532249ba3d1cd44b0f17.js.map
> Analyzing 1 sources
> Adding source map references
> Validating sources
> Uploading source maps for release 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a
Source Map Upload Report
Source Maps
/static/webpack_bundles/iframe.532249ba3d1cd44b0f17.js.map
+ sentry-cli releases files 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a upload-sourcemaps --validate --url-prefix /static/webpack_bundles webpack_bundles/base.532249ba3d1cd44b0f17.js.map
> Analyzing 1 sources
> Adding source map references
> Validating sources
> Uploading source maps for release 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a
Source Map Upload Report
Source Maps
/static/webpack_bundles/base.532249ba3d1cd44b0f17.js.map
+ sentry-cli releases finalize 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a
Finalized release 3f1df0bf126d7e8b2a71598bb3c30c48c9366b8a.
stdout_lines: <omitted>
Maybe related, report 6 days ago by another user : https://github.com/getsentry/sentry-webpack-plugin/issues/90
@jpic can you provide a link to the mentioned event in the Sentry?
Ok, so I think the main issue here is that you're using an absolute path for your url prefixes. eg. /static/somethin. This means that we'll get the host, https://jpic.mrs.yourlabs.org/ in this case and try to pull the files from there.
Per https://docs.sentry.io/learn/cli/releases/#managing-release-artifacts docs, you should use either absolute path which we'll have an access to or a prefix starting with ~/, which will tell Sentry "look inside artifacts for the file".
Your error frames are pointing to /static/webpack_bundles/base.532249ba3d1cd44b0f17.js, which means "host + this abs_path above". To make it work with release artifacts, upload files with the same path, but prepended with ~/. eg. ~/static/webpack_bundles/base.532249ba3d1cd44b0f17.js. This way, we'll treat ~ as one of the possible hosts and it should fix your issue.
Let me know if that helped! :)
Of course, thanks a heap for your detailed and quick answer !
Keep up the great work :1st_place_medal:
Most helpful comment
Ok, so I think the main issue here is that you're using an absolute path for your url prefixes. eg.
/static/somethin. This means that we'll get the host,https://jpic.mrs.yourlabs.org/in this case and try to pull the files from there.Per https://docs.sentry.io/learn/cli/releases/#managing-release-artifacts docs, you should use either absolute path which we'll have an access to or a prefix starting with
~/, which will tell Sentry "look inside artifacts for the file".Your error frames are pointing to
/static/webpack_bundles/base.532249ba3d1cd44b0f17.js, which means "host + this abs_path above". To make it work with release artifacts, upload files with the same path, but prepended with~/. eg.~/static/webpack_bundles/base.532249ba3d1cd44b0f17.js. This way, we'll treat~as one of the possible hosts and it should fix your issue.Let me know if that helped! :)