Skip to content
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

CI: Add OpenBSD build tests for staged commits #1964

Closed
wants to merge 21 commits into from

Conversation

kinkie
Copy link
Contributor

@kinkie kinkie commented Dec 16, 2024

Use a GitHub-hosted VM to create OpenBSD test environment. Requires
GitHub repository configuration that permits the use of
vmactions/openbsd-vm@v1 Action.

We have not enabled ccache optimization for OpenBSD tests because we
do not know how to copy updated ccache files from VM back into runner.

metaauto

mkdir $HOME/bin
ln -s /usr/local/bin/ggrep $HOME/bin/grep
Copy link
Contributor Author

Choose a reason for hiding this comment

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

There are a bunch of GNUisms in our build chain

run: |
export MAKE=gmake
export pjobs="-j`gnproc`"
export AUTOMAKE_VERSION=1.16
Copy link
Contributor Author

Choose a reason for hiding this comment

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

OpenBSD support for multi-version automake is complicated

export amver=${AUTOMAKE_VERSION}
export ACLOCAL_AUTOMAKE_DIR="/usr/local/share/aclocal-${AUTOMAKE_VERSION}"
export ACLOCAL_PATH="/usr/local/share/aclocal:/usr/local/share/aclocal-${AUTOMAKE_VERSION}"
export AUTOCONF_VERSION=2.72
Copy link
Contributor Author

Choose a reason for hiding this comment

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

autoconf, too

export ltver=2.4.2
export CFLAGS='-Wno-compound-token-split-by-macro'
export LDFLAGS="-L/usr/local/lib"
export PATH="$HOME/bin:$PATH"
Copy link
Contributor Author

Choose a reason for hiding this comment

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

we need this to shadow the system 'grep' command

@kinkie kinkie changed the title openbsd merge tests CI: Add FreeBSD build tests for staged commits Dec 16, 2024
@kinkie kinkie changed the title CI: Add FreeBSD build tests for staged commits CI: Add OpenBSD build tests for staged commits Dec 16, 2024
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 for moving these tests to GitHub. I have only one blocking change request.

export pjobs="-j`gnproc`"
export AUTOMAKE_VERSION=1.16
export amver=${AUTOMAKE_VERSION}
export ACLOCAL_AUTOMAKE_DIR="/usr/local/share/aclocal-${AUTOMAKE_VERSION}"
Copy link
Contributor

Choose a reason for hiding this comment

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

Is there a similar hack that can avoid the following warnings?

  aclocal-1.16: warning: couldn't open directory '/usr/bin/../share/aclocal': No such file or directory

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Not that I know of. OpenBSD is rough around the edges in these areas

.github/workflows/slow.yaml Show resolved Hide resolved
.github/workflows/slow.yaml Outdated Show resolved Hide resolved
kinkie and others added 2 commits December 17, 2024 15:05
Co-authored-by: Alex Rousskov <rousskov@measurement-factory.com>
Co-authored-by: Alex Rousskov <rousskov@measurement-factory.com>
@kinkie kinkie requested a review from rousskov December 17, 2024 15:06
@kinkie kinkie added the S-waiting-for-reviewer ready for review: Set this when requesting a (re)review using GitHub PR Reviewers box label Dec 17, 2024
@rousskov rousskov added S-waiting-for-author author action is expected (and usually required) S-could-use-an-approval An approval may speed this PR merger (but is not required) 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 S-waiting-for-author author action is expected (and usually required) labels Dec 17, 2024
squid-anubis pushed a commit that referenced this pull request Dec 18, 2024
Use a GitHub-hosted VM to create OpenBSD test environment.

We have not enabled ccache optimization for OpenBSD tests because we
do not know how to copy updated ccache files from VM back into runner.
@squid-anubis squid-anubis added the M-waiting-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels label Dec 18, 2024
@rousskov rousskov removed the S-could-use-an-approval An approval may speed this PR merger (but is not required) label Dec 18, 2024
squid-anubis pushed a commit that referenced this pull request Dec 20, 2024
Use a GitHub-hosted VM to create OpenBSD test environment. Requires
GitHub repository configuration that permits the use of
`vmactions/openbsd-vm@v1` Action.

We have not enabled ccache optimization for OpenBSD tests because we
do not know how to copy updated ccache files from VM back into runner.
@rousskov
Copy link
Contributor

GitHub reported "startup failure" for the staged commit c7e0a60. AFAICT, GitHub provided no failure details and probably did not report that odd failure to agents monitoring repository state (e.g., Anubis). Thus, this PR got stuck waiting for staging tests that are not running.

I would expect a staged test to fail because our GitHub repository configuration did not allow vmactions/openbsd-vm@v1 Action. I fixed that and touched PR description to prompt Anubis to stage a new staged commit. That new commit is 75c97d2. It is being tested now.

@squid-anubis squid-anubis added M-merged https://github.com/measurement-factory/anubis#pull-request-labels and removed M-waiting-staging-checks https://github.com/measurement-factory/anubis#pull-request-labels M-cleared-for-merge https://github.com/measurement-factory/anubis#pull-request-labels labels Dec 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
M-merged https://github.com/measurement-factory/anubis#pull-request-labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants