Skip to content

Get tsdb version from version.config if run from a tag - #10023

Open
surister wants to merge 1 commit into
timescale:mainfrom
surister:release/safer-apt-test
Open

Get tsdb version from version.config if run from a tag#10023
surister wants to merge 1 commit into
timescale:mainfrom
surister:release/safer-apt-test

Conversation

@surister

@surister surister commented Jun 10, 2026

Copy link
Copy Markdown
Member

After running a package test (apt in this case) after a release, we take the latest available version and compare it to the latest installable versions, the version is obtained from Github's API, which can take 2-3 minutes sometimes, so a stale version can false-positive several situations, for example if the packages dont get uploaded to cloud, as in the 2.27.2 release it'd compare the stale github version e.g. 2.27.1 with the latest available installable version, 2.27.1, making the test pass in the 2.27.2 branch.

With this fix we take the version from the repo version.config when the run is from a tab, e.g. after a release, so cases like this are caught in the CI. If normally run, e.g. scheduled run, the behaviour is unchanged.

@surister
surister requested a review from svenklemm June 10, 2026 08:38
@surister
surister requested a review from philkra June 10, 2026 08:38
@surister

Copy link
Copy Markdown
Member Author

After this we should fix that the spawned tests after the release is released is run from the tag and not main (as it happens right now), additionally it might make sense to add some delay, e.g. 4-5minutes, as packagecloud will also need a few seconds to properly index and serve the new binaries

@codecov

codecov Bot commented Jun 10, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

version=$(wget -q https://api.github.com/repos/timescale/timescaledb/releases/latest -O - | jq -r .tag_name)
# if run from a tag, check the repo's version, meant to be run after a release
# otherwise we rely on github's api for scheduled runs.
if [ "${{ github.ref_type }}" = "tag" ]; then

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This test is supposed to check the version of packages in the package repo, right? It's expected that it fails if the version of packages is not up to date.

I think it will lead to confusion if it actually doesn't check it sometimes, depending on the run conditions.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is expected to fail if the repo's version does not match the latest installable version, when run from a tag, which we only do after releases.

The way I see it is that we currently miss some test surface, e.g. in the last release it didn't catch that the binaries were actually not uploaded, with this it'd have caught it.

To make it less confusing we could add logging explaining why it failed, but we need to run this test.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could also create a different step and conditionally run it, same logic just on the github step level

@philkra
philkra requested a review from akuzm June 11, 2026 08:18
@github-actions

Copy link
Copy Markdown

This pull request has been automatically marked as stale due to lack of activity. This pull request will be closed in 30 days.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants