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

releng: link to Sentry release in release notes

Open dmke opened this issue 1 year ago • 2 comments

When crafting the release notes for the self-hosted project, adding a link to the Sentry project release would be beneficial for users only receiving notifications the self-hosted project.

Discussion: https://github.com/getsentry/self-hosted/issues/2964#issuecomment-2116188032

Legal 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.

dmke avatar Oct 18 '24 08:10 dmke

I'll see if we can find a better way as ideally the changelogs are fully automated. Adding these manually every time adds an unnecessary burden to the team that manages the releases.

I'll see if I can make our release tool support a scenario like this.

BYK avatar Oct 18 '24 12:10 BYK

@BYK, any news?

dmke avatar Apr 16 '25 08:04 dmke

I think we won't go with this.

@dmke What do you personally think about this kind of release notes? https://github.com/getsentry/self-hosted/releases/tag/25.6.0

aldy505 avatar Jun 25 '25 13:06 aldy505

Here's my personal opinion from an ops perspective:

I want to know how much time I need to plan for an upgrade, i.e.:

  • Are there important changes regarding the upgrade process?
    • Are there major updates of components, which require manual intervention (like Postgres N to N+1 would be tedious)
  • Do I need to update config files?
    • Are there new knobs (env vars/config.yml/sentry.conf.py)? Did the meaning/scope of existing knobs change?
  • Would I be in trouble if I run ./install.sh without reading any changelog?
    • (Of course I am, but what if may hasty colleague did already run the install script?)
  • Which version of Sentry will be installed with the current release?
    • This one's fairly obvious, as the releases ought to be in sync - however that's not explicitly stated (at least not at obvious place; not to rule out that I'm blind :stuck_out_tongue:)

I don't need you to reproduce the full changelog of both getsentry/self-hosted and getsentry/sentry in the release notes, when simple links to https://github.com/getsentry/self-hosted/blob/<tag>/CHANGELOG.md and https://github.com/getsentry/sentry/blob/<tag>/CHANGES are sufficient.

OTOH, including some news (like the availability of ARM64 containers) is nice to have.

dmke avatar Jun 25 '25 14:06 dmke

Here's my personal opinion from an ops perspective:

I want to know how much time I need to plan for an upgrade, i.e.:

  • Are there important changes regarding the upgrade process?

    • Are there major updates of components, which require manual intervention (like Postgres N to N+1 would be tedious)
  • Do I need to update config files?

    • Are there new knobs (env vars/config.yml/sentry.conf.py)? Did the meaning/scope of existing knobs change?
  • Would I be in trouble if I run ./install.sh without reading any changelog?

    • (Of course I am, but what if may hasty colleague did already run the install script?)
  • Which version of Sentry will be installed with the current release?

    • This one's fairly obvious, as the releases ought to be in sync - however that's not explicitly stated (at least not at obvious place; not to rule out that I'm blind 😛)

For these kind of things, I'd say it should be on the release notes instead of the CHANGELOG.md. As I think more people read the release notes instead of the changelog.

On another note, I'll put your questions to the release notes template, I think those are great!

I don't need you to reproduce the full changelog of both getsentry/self-hosted and getsentry/sentry in the release notes, when simple links to https://github.com/getsentry/self-hosted/blob/<tag>/CHANGELOG.md and https://github.com/getsentry/sentry/blob/<tag>/CHANGES are sufficient.

But... would self-hosted and sentry would be sufficient? There are changelogs for other repository that we depends on as well: snuba, relay, symbolicator, taskbroker, and soon, uptime-checker.

I'm not against putting up a link, but I'd argue that providing human-readable release notes on what changed and what the operator should do is better. What do you think?

aldy505 avatar Jul 02 '25 04:07 aldy505

But... would self-hosted and sentry would be sufficient? There are changelogs for other repository that we depends on as well: snuba, relay, symbolicator, taskbroker, and soon, uptime-checker.

I'd consider these services dependencies of Sentry, the same way e.g. django is a dependency.

I personally don't really care what Sentry uses under the hood, as long as Sentry can do its thing. I'd go so far as to say that I expect self-hosted to upgrade them for me gracefully - and if not, that the release notes make sure I know about any potential problems.

(Sentry itself could be considered a dependency of self-hosted, but I believe in most cases self-hosted is just a vehicle to get a Sentry instance running. "People operate Sentry, not self-hosted", to put it in other words.)

dmke avatar Jul 03 '25 11:07 dmke