self-hosted icon indicating copy to clipboard operation
self-hosted copied to clipboard

external dependency definition file

Open JakeDEvans opened this issue 3 years ago • 10 comments

Summary

Please consolidate all external dependencies such as docker images (like alpine, busybox, postgres, zookeeper, kafka, clickhouse, nginx, exim) and package distributions (like buster debian) in one place so that this project can be easily installed and maintained behind highly firewalled and internet disconnect systems where package distribution systems like artifactory may be used.

Motivation

More clearly define external dependencies to make maintaining necessary internal changes manageable.

JakeDEvans avatar Dec 10 '20 18:12 JakeDEvans

Seems reasonable. So we would pull all images from a single repository, which would be one that we (Sentry) control by default, but would be easy for you to override to point to your artifactory? Something like that?

chadwhitacre avatar Dec 11 '20 16:12 chadwhitacre

Yes! not having to build locally would be preferred, if you can publish all images to a publicly accessible docker registry then it would be easy to override the images with those paths.

JakeDEvans avatar Dec 11 '20 17:12 JakeDEvans

Makes sense. Marking as an enhancement, will see what kind of additional demand we get and if/when we can prioritize internally or see an external PR. 😁

Thanks for the suggestion and for using Sentry! :D

chadwhitacre avatar Dec 11 '20 18:12 chadwhitacre

@chadwhitacre I guess we can build the cron images periodically ourselves?

BYK avatar Jan 04 '21 11:01 BYK

Sorry ... what are the cron images?

chadwhitacre avatar Jan 04 '21 13:01 chadwhitacre

Sorry ... what are the cron images?

https://github.com/getsentry/onpremise/blob/master/cron/Dockerfile

JakeDEvans avatar Jan 04 '21 14:01 JakeDEvans

Gotcha, seeing it now for snuba and symbolicator cleanups (and I remember considering it for refreshing geoip data but deciding on install-time instead). I guess it'd be not just the cron images we'd have to build periodically but also everything that uses &sentry_defaults, no?

Why do we currently build on install vs. build-once? It has to do with configuration, I think?

chadwhitacre avatar Jan 04 '21 15:01 chadwhitacre

Why do we currently build on install vs. build-once? It has to do with configuration, I think?

Not really the configuration at the moment. We had this for Sentry image where we embedded the config files into the locally-built image but we no longer do that. I don't see any good reason to build these images at install time except for the CI and storage costs we'd be paying for building and maintaining these images ourselves.

BYK avatar Jan 06 '21 21:01 BYK

CI and storage costs we'd be paying for building and maintaining these images ourselves.

CI we probably end up doing anyway somewhere along the line, and Docker Hub is free for public images.

chadwhitacre avatar Jan 06 '21 22:01 chadwhitacre

This issue has gone three weeks without activity. In another week, I will close it.

But! If you comment or otherwise update it, I will reset the clock, and if you label it Status: Accepted, I will leave it alone ... forever!


"A weed is but an unloved flower." ― Ella Wheeler Wilcox 🥀

github-actions[bot] avatar Feb 22 '21 18:02 github-actions[bot]