-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Ease modification of base image #1479
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
aminvakil
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would say let's keep this PR to moving from using sentry image to building sentry image and do stuff after.
And open another PRs for other modifications.
BYK
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks pretty great so far, thanks for putting this effort in. I'll leave the final approval to @chadwhitacre (he needs to approve to land anyway).
That said please address my comments regarding test.sh file as otherwise you'll break builds in all other Sentry repos :) -- @chadwhitacre we should probably add a simple GHA check for that here instead of using me as a human e2e/lint check 😅
BYK
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, great work thanks a lot 👏🏻
Co-authored-by: Amin Vakil <[email protected]>
|
Thanks for the contribution @spawnia and for reviewing @BYK @aminvakil! Kicking off CI ... /gcbrun |
| echo "sentry-auth-oidc" >> sentry/requirements.txt | ||
| ./install.sh --minimize-downtime | ||
| ./_integration-test/run.sh | ||
| run: ./integration-test.sh |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The main purpose of factoring this out is to make it easier to run locally, yes? (cf. CONTRIBUTING.md). In that case, how does ./integration-test.sh relate to ./test.sh? Looks like there has been some back and forth on this with 004d41b. :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The main purpose of factoring this out is to make it easier to run locally, yes?
Exactly.
In that case, how does ./integration-test.sh relate to ./test.sh?
I am not sure how to answer this. I think their purpose follows from their contents and usage in the project. Would you like to rename them or comment them?
|
|
||
| source ../install/dc-detect-version.sh | ||
|
|
||
| # Negated version of ensure-customizations-not-present.sh, make changes in sync |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Almost certainly a way to DRY this up.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am sure there is, I am not convinced it is worth the effort though. I do follow DRY, but also WET - write everything twice. Given this is a negation, we will never need to maintain more than two versions of this.
chadwhitacre
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the PR! Some initial questions, not sure we're there yet on how test code is organized between the different scripts ... but I think we can get there. :)
|
/gcbrun |
|
Thanks @spawnia! Merging as-is, I think there are some slight improvements possible but don't want to hold this up further. :) |
|
Thanks to everyone involved. Looking forward to simplifying our setup with this. |
|
Great job! But why do we have to migrate from I think they can coexist. In some cases, use I think we can drop the |
|
I think the simplicity of having a single shell script is preferrable.
|
|
@spawnia OK, you're right. requirements=(
sentry-auth-ldap==21.9.*
sentry-tablestore==git+https://github.com/PMExtra/sentry-tablestore.git@master
)
pip install ${requirements[@]} |
|
Nice hack @PMExtra. :) |
Resolves #1477
Resolves #882
Provides a simple and canonical way to make modifications of the Sentry base image, such as installing plugins or their dependencies.
In contrast to previous solutions, this method:
install.shfor all servicesLegal Boilerplate
Look, I get it. The entity doing business as "Sentry" was incorporated in the State of Delaware in 2015 as Functional Software, Inc. and is gonna need some rights from me in order to utilize my contributions in this here PR. So here's the deal: I retain all rights, title and interest in and to my contributions, and by keeping this boilerplate intact I confirm that Sentry can use, modify, copy, and redistribute my contributions, under Sentry's choice of terms.