Skip to content

CI: Adopt OpenBSD v7.7 and pin it #2059

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

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

kinkie
Copy link
Contributor

@kinkie kinkie commented May 6, 2025

Pin the version of OpenBSD we use for our "slow" checks
and update the version of automake distributed with it.

@kinkie
Copy link
Contributor Author

kinkie commented May 6, 2025

This should fix the problems of the broken job blocking the merge of PR #2058

@kinkie
Copy link
Contributor Author

kinkie commented May 6, 2025

FreeBSD doesn't suffer the same problem, as we're pinning two releases there

@kinkie kinkie requested a review from Copilot May 6, 2025 20:41
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR pins the OpenBSD version used in the CI for "slow" checks and updates the automake version distributed with it.

  • Pin OpenBSD release to 7.7
  • Update automake from 1.16.5 to 1.17
Comments suppressed due to low confidence (1)

.github/workflows/slow.yaml:205

  • Ensure that the update to automake-1.17 is validated against all build steps, and update any related configuration or documentation if required to address potential behavioral differences.
automake-1.17

@rousskov rousskov changed the title CI: adopt openbsd v7.7 and pin it CI: Adopt OpenBSD v7.7 and pin it May 6, 2025
rousskov
rousskov previously approved these changes May 6, 2025
Copy link
Contributor

@rousskov rousskov left a comment

Choose a reason for hiding this comment

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

Thank you! I adjusted PR title/description a bit to improve consistency/grammar.

@kinkie kinkie added M-cleared-for-merge https://github.com/measurement-factory/anubis#pull-request-labels S-could-use-an-approval An approval may speed this PR merger (but is not required) labels May 7, 2025
yadij
yadij previously approved these changes May 7, 2025
@yadij yadij removed the S-could-use-an-approval An approval may speed this PR merger (but is not required) label May 7, 2025
@yadij
Copy link
Contributor

yadij commented May 7, 2025

Do the other branches need this backported as well now?

squid-anubis pushed a commit that referenced this pull request May 7, 2025
Pin the version of OpenBSD we use for our "slow" checks
and update the version of automake distributed with it.
@squid-anubis squid-anubis added M-waiting-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels M-failed-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels and removed M-waiting-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels labels May 7, 2025
@rousskov
Copy link
Contributor

rousskov commented May 7, 2025

@kinkie, OpenBSD test still fails. I could not tell why without studying openbsd-vm/v1/run.sh.

@rousskov rousskov added S-waiting-for-author author action is expected (and usually required) and removed M-cleared-for-merge https://github.com/measurement-factory/anubis#pull-request-labels labels May 7, 2025
@kinkie
Copy link
Contributor Author

kinkie commented May 7, 2025

I'll check and iterate later today.
All branches will need this

@yadij
Copy link
Contributor

yadij commented May 7, 2025

  ./test-builds.sh
  
  exec ssh: cd $GITHUB_WORKSPACE;
  export MAKE=gmake
  export pjobs="-j`gnproc`"
  export AUTOMAKE_VERSION=1.16
  export amver=${AUTOMAKE_VERSION}

... this (hard coded in slow.yaml) AUTOMAKE_VERSION=1.16 causes:

  ./test-builds.sh
  /usr/bin/bash /home/runner/work/_actions/vmactions/openbsd-vm/v1/run.sh execSSHSH
  Config file: openbsd-7.7.conf
  WARNING: Cannot find automake version 1.16
  Trying /usr/local/bin/automake[34]: /usr/local/bin/automake-1.16: not found
  WARNING: Cannot find libtool version 2.4.2
  Trying libtool (not (GNU libtool)) 1.5.26
  automake () : automake
  autoconf (2.72) : autoconf
  libtool  (1.5.26) : libtool
  libtool path : /usr/bin
  Bootstrapping primary Squid sources
  /usr/local/bin/aclocal[34]: /usr/local/bin/aclocal-1.16: not found
  Autotool bootstrapping failed. You will need to investigate and correct
  before you can develop on this source tree
  aclocal failed

@yadij
Copy link
Contributor

yadij commented May 7, 2025

Do we really have to explicitly set the autotools variables on top of installing the versioned package? Surely the right package being installed is enough.
If not, perhapse our bootstrap.sh can be improved to better detect the tool binaries.

@yadij yadij added backport-to-v6 maintainer has approved these changes for v6 backporting backport-to-v7 maintainer has approved these changes for v7 backporting labels May 7, 2025
@kinkie
Copy link
Contributor Author

kinkie commented May 7, 2025

Doh! Sadly yes. Openbad is brain damaged in this regard. If we don't set them it will just complain and bail

@squid-anubis squid-anubis added the M-abandoned-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels label May 8, 2025
prepare: |
pkg_add \
autoconf-2.72p0 \
autoconf-archive \
automake-1.16.5 \
automake-1.17 \
Copy link
Contributor

@rousskov rousskov May 8, 2025

Choose a reason for hiding this comment

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

If comments are legal/OK here, please document the hidden dependency (missed in earlier PR commits). For example:

Suggested change
automake-1.17 \
automake-1.17 \ # keep in sync with AUTOMAKE_VERSION below

or perhaps

Suggested change
automake-1.17 \
automake-1.17 # keep in sync with AUTOMAKE_VERSION below \

I do not know which variant (if any) is correct in this context.

... and add a similar comment to AUTOMAKE_VERSION definition below.

Alternatively, we may be able to define OpenBSD Automake version once and use it in both places, but I do not have a recipe for that. Our CHECKOUT_FETCH_DEPTH recipe would not work well here because Automake version differs across jobs.

Copy link
Contributor Author

@kinkie kinkie May 8, 2025

Choose a reason for hiding this comment

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

Neither works, it's shell escaping.
And using a variable also doesn't work, the versions number might not align (e.g. 1.16.5 would correspond to 1.16).
I'll iterate on this solution, let's push it in as it is in order to unblock the other PRs.
Also, since we now pin the OS version, likelihood of this biting us is very reduced

Copy link
Contributor

Choose a reason for hiding this comment

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

I'll iterate on this solution

Please do.

yadij
yadij previously approved these changes May 8, 2025
@yadij yadij added S-waiting-for-reviewer ready for review: Set this when requesting a (re)review using GitHub PR Reviewers box and removed S-waiting-for-author author action is expected (and usually required) labels May 8, 2025
rousskov
rousskov previously approved these changes May 8, 2025
prepare: |
pkg_add \
autoconf-2.72p0 \
autoconf-archive \
automake-1.16.5 \
automake-1.17 \
Copy link
Contributor

Choose a reason for hiding this comment

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

I'll iterate on this solution

Please do.

@rousskov rousskov added M-cleared-for-merge https://github.com/measurement-factory/anubis#pull-request-labels and removed S-waiting-for-reviewer ready for review: Set this when requesting a (re)review using GitHub PR Reviewers box M-failed-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels labels May 8, 2025
squid-anubis pushed a commit that referenced this pull request May 8, 2025
Pin the version of OpenBSD we use for our "slow" checks
and update the version of automake distributed with it.
@squid-anubis squid-anubis added M-waiting-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels M-failed-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels and removed M-abandoned-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels M-waiting-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels labels May 8, 2025
@rousskov
Copy link
Contributor

rousskov commented May 8, 2025

OpenBSD build still fails. @kinkie, please consider fully testing staging in your GitHub repository before (pushing and) requesting re-reviews here.

@rousskov rousskov added S-waiting-for-author author action is expected (and usually required) and removed M-cleared-for-merge https://github.com/measurement-factory/anubis#pull-request-labels labels May 8, 2025
@kinkie kinkie dismissed stale reviews from rousskov and yadij via 78c7dd1 May 9, 2025 07:16
@squid-anubis squid-anubis added the M-abandoned-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels label May 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-to-v6 maintainer has approved these changes for v6 backporting backport-to-v7 maintainer has approved these changes for v7 backporting M-abandoned-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels M-failed-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels S-waiting-for-author author action is expected (and usually required)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants