Bump vmactions/omnios-vm from 1.2.0 to 1.2.1 #265
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build and Test | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| types: | |
| - opened | |
| - synchronize | |
| - reopened | |
| jobs: | |
| build-alpine: | |
| name: Alpine Linux | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| container: | |
| image: alpine:3.22.1 | |
| steps: | |
| - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Install dependencies | |
| run: | | |
| apk add \ | |
| build-base \ | |
| check \ | |
| check-dev \ | |
| gcc \ | |
| meson \ | |
| ninja \ | |
| pkgconfig \ | |
| valgrind | |
| - name: Configure | |
| run: | | |
| meson setup build \ | |
| -Denable-tests=true | |
| - name: Build | |
| run: meson compile -C build | |
| - name: Run unit tests | |
| run: meson test -C build | |
| - name: Run memory profiling | |
| run: meson test --wrapper='valgrind --leak-check=full --error-exitcode=1' -C build | |
| - name: Install | |
| run: meson install -C build | |
| - name: Uninstall | |
| run: ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| build-archlinux: | |
| name: Arch Linux | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| container: | |
| image: archlinux:base-devel-20250824.0.410029 | |
| steps: | |
| - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Install dependencies | |
| run: | | |
| pacman -Sy --noconfirm \ | |
| check \ | |
| gcc \ | |
| meson \ | |
| ninja \ | |
| pkgconfig \ | |
| valgrind | |
| - name: Configure | |
| run: | | |
| meson setup build \ | |
| -Denable-tests=true | |
| - name: Build | |
| run: meson compile -C build | |
| - name: Run unit tests | |
| run: meson test -C build | |
| - name: Install | |
| run: meson install -C build | |
| - name: Uninstall | |
| run: ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| build-debian: | |
| name: Debian Linux | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| container: | |
| image: debian:13.0 | |
| steps: | |
| - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Install dependencies | |
| run: | | |
| apt-get update | |
| apt-get install --assume-yes --no-install-recommends \ | |
| build-essential \ | |
| check \ | |
| meson \ | |
| ninja-build \ | |
| pkg-config \ | |
| valgrind | |
| - name: Configure | |
| run: | | |
| meson setup build \ | |
| -Denable-tests=true | |
| - name: Build | |
| run: meson compile -C build | |
| - name: Run unit tests | |
| run: meson test -C build | |
| - name: Run memory profiling | |
| run: meson test --wrapper='valgrind --leak-check=full --error-exitcode=1' -C build | |
| - name: Install | |
| run: meson install -C build | |
| - name: Uninstall | |
| run: ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| build-fedora: | |
| name: Fedora Linux | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| container: | |
| image: fedora:42 | |
| steps: | |
| - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Install dependencies | |
| run: | | |
| dnf --setopt=install_weak_deps=False --assumeyes install \ | |
| check \ | |
| check-devel \ | |
| gcc \ | |
| meson \ | |
| ninja-build \ | |
| valgrind | |
| - name: Configure | |
| run: | | |
| meson setup build \ | |
| -Denable-tests=true | |
| - name: Build | |
| run: meson compile -C build | |
| - name: Run unit tests | |
| run: meson test -C build | |
| - name: Run memory profiling | |
| run: meson test --wrapper='valgrind --leak-check=full --error-exitcode=1' -C build | |
| - name: Install | |
| run: sudo meson install -C build | |
| - name: Uninstall | |
| run: sudo ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| build-ubuntu: | |
| name: Ubuntu Linux | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| container: | |
| image: ubuntu:25.10 | |
| steps: | |
| - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Install dependencies | |
| run: | | |
| apt-get update | |
| apt-get install --assume-yes --no-install-recommends \ | |
| build-essential \ | |
| check \ | |
| cmake \ | |
| gcc \ | |
| meson \ | |
| ninja-build \ | |
| pkg-config \ | |
| valgrind | |
| - name: Configure | |
| run: | | |
| meson setup build \ | |
| -Denable-tests=true | |
| - name: Build | |
| run: meson compile -C build | |
| - name: Run unit tests | |
| run: meson test -C build | |
| - name: Run memory profiling | |
| run: meson test --wrapper='valgrind --leak-check=full --error-exitcode=1' -C build | |
| - name: Install | |
| run: meson install -C build | |
| - name: Uninstall | |
| run: ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| build-macos: | |
| name: macOS | |
| permissions: | |
| contents: read | |
| runs-on: macos-latest | |
| env: | |
| HOMEBREW_NO_INSTALL_CLEANUP: 1 | |
| HOMEBREW_NO_AUTO_UPDATE: 1 | |
| steps: | |
| - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Install dependencies | |
| run: | | |
| brew update | |
| brew install \ | |
| check \ | |
| meson | |
| - name: Configure | |
| run: | | |
| meson setup build \ | |
| -Denable-tests=true | |
| - name: Build | |
| run: meson compile -C build | |
| - name: Run unit tests | |
| run: meson test -C build | |
| - name: Install | |
| run: sudo meson install -C build | |
| - name: Uninstall | |
| run: sudo ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| build-dflybsd: | |
| name: DragonflyBSD | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Build on VM | |
| uses: vmactions/dragonflybsd-vm@b976fb4b5e5cc008f30edf67b9f9dfc13ef47e49 # v1.1.9 | |
| with: | |
| copyback: true | |
| prepare: | | |
| set -e | |
| pkg install -y \ | |
| check \ | |
| meson \ | |
| pkgconf | |
| run: | | |
| set -e | |
| meson setup build \ | |
| -Denable-tests=true | |
| meson compile -C build | |
| meson test -C build | |
| meson install -C build | |
| ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| build-freebsd: | |
| name: FreeBSD | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Build on VM | |
| uses: vmactions/freebsd-vm@9832a7f21715c1303a1b9e7c00f96508266b4e09 # v1.3.6 | |
| with: | |
| release: "14.3" | |
| copyback: true | |
| sync: sshfs | |
| prepare: | | |
| set -e | |
| pkg install -y \ | |
| check \ | |
| meson \ | |
| pkgconf \ | |
| valgrind | |
| run: | | |
| set -e | |
| meson setup build \ | |
| -Denable-tests=true | |
| meson compile -C build | |
| meson test -C build | |
| meson test --wrapper='valgrind --leak-check=full --error-exitcode=1' -C build | |
| meson install -C build | |
| ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| build-netbsd: | |
| name: NetBSD | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Build on VM | |
| uses: vmactions/netbsd-vm@2ba9902c77c2ebdb7501e5e9308dea03f0f251c4 # v1.3.1 | |
| with: | |
| copyback: true | |
| sync: sshfs | |
| prepare: | | |
| set -e | |
| export PKG_PATH="http://ftp.NetBSD.org/pub/pkgsrc/packages/NetBSD/$(uname -p)/$(uname -r|cut -f '1 2' -d.)/All/" | |
| pkg_add \ | |
| check \ | |
| meson \ | |
| pkg-config | |
| run: | | |
| set -e | |
| meson setup build \ | |
| -Denable-tests=true | |
| meson compile -C build | |
| meson test -C build | |
| meson install -C build | |
| ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| build-openbsd: | |
| name: OpenBSD | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Build on VM | |
| uses: vmactions/openbsd-vm@00753f2835e62704570734312de6f212069dfef7 # v1.3.1 | |
| with: | |
| copyback: true | |
| sync: sshfs | |
| prepare: | | |
| set -e | |
| pkg_add -I \ | |
| check \ | |
| meson \ | |
| pkgconf | |
| run: | | |
| set -e | |
| meson setup build \ | |
| -Denable-tests=true | |
| meson compile -C build | |
| meson test -C build | |
| meson install -C build | |
| ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| build-omnios: | |
| name: OmniOS | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Build on VM | |
| uses: vmactions/omnios-vm@0f19598b712bbfab48e7a88c9b1038760ecc5d31 # v1.2.1 | |
| with: | |
| copyback: true | |
| prepare: | | |
| set -e | |
| pkg install \ | |
| build-essential \ | |
| pkg-config | |
| curl -O https://pkgsrc.smartos.org/packages/SmartOS/bootstrap/bootstrap-trunk-x86_64-20240116.tar.gz | |
| tar -zxpf bootstrap-trunk-x86_64-20240116.tar.gz -C / | |
| export PATH=/opt/local/sbin:/opt/local/bin:/usr/gnu/bin:/usr/bin:/usr/sbin:/sbin:$PATH | |
| pkgin -y install \ | |
| check \ | |
| meson | |
| run: | | |
| set -e | |
| export PATH=/opt/local/sbin:/opt/local/bin:/usr/gnu/bin:/usr/bin:/usr/sbin:/sbin:$PATH | |
| meson setup build \ | |
| -Denable-tests=true \ | |
| -Dpkg_config_path=/opt/local/lib/pkgconfig | |
| meson compile -C build | |
| meson test -C build | |
| meson install -C build | |
| ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| build-openindiana: | |
| name: OpenIndiana | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Build on VM | |
| uses: vmactions/openindiana-vm@e90777531e6e6cfc125a2e7e9741b8012cd6a10c # v1.0.1 | |
| with: | |
| copyback: true | |
| prepare: | | |
| set -e | |
| pkg install \ | |
| developer/build/meson \ | |
| developer/build/ninja \ | |
| developer/build/pkg-config \ | |
| developer/check \ | |
| developer/gcc-14 | |
| run: | | |
| set -e | |
| export PATH=/usr/local/sbin:/usr/local/bin:$PATH | |
| meson setup build \ | |
| -Denable-bgets-workaround=true \ | |
| -Denable-tests=true \ | |
| -Dpkg_config_path=/usr/lib/amd64/pkgconfig | |
| meson compile -C build | |
| meson test -C build | |
| meson install -C build | |
| ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| build-solaris: | |
| name: Solaris | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Build on VM | |
| uses: vmactions/solaris-vm@7a5256863396c1cea1665b084d569876a1321347 # v1.2.4 | |
| with: | |
| copyback: true | |
| sync: nfs | |
| prepare: | | |
| set -e | |
| ntpdate -u pool.ntp.org | |
| pkg install \ | |
| check \ | |
| gcc \ | |
| meson \ | |
| ninja \ | |
| pkg-config | |
| run: | | |
| set -e | |
| export PATH=/usr/local/sbin:/usr/local/bin:$PATH | |
| meson setup build \ | |
| -Denable-bgets-workaround=true \ | |
| -Denable-tests=true \ | |
| -Dpkg_config_path=/usr/lib/amd64/pkgconfig | |
| meson compile -C build | |
| meson test -C build | |
| meson install -C build | |
| ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| build-windows: | |
| name: Windows (MSYS2+gcc) | |
| permissions: | |
| contents: read | |
| runs-on: windows-latest | |
| defaults: | |
| run: | |
| shell: msys2 {0} | |
| steps: | |
| - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Setup MSYS2 | |
| uses: msys2/setup-msys2@4f806de0a5a7294ffabaff804b38a9b435a73bda # v2.30.0 | |
| with: | |
| msystem: MINGW64 | |
| update: true | |
| install: >- | |
| mingw-w64-x86_64-gcc | |
| mingw-w64-x86_64-meson | |
| mingw-w64-x86_64-ninja | |
| mingw-w64-x86_64-pkg-config | |
| mingw-w64-x86_64-check | |
| - name: Configure | |
| run: | | |
| meson setup build \ | |
| -Denable-tests=true | |
| - name: Build | |
| run: meson compile -C build | |
| - name: Run unit tests | |
| run: meson test -C build | |
| - name: Install | |
| run: meson install -C build | |
| - name: Uninstall | |
| run: ninja -C build uninstall | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs | |
| ci-msvc: | |
| name: Windows (MSVC) | |
| permissions: | |
| contents: read | |
| runs-on: windows-latest | |
| steps: | |
| - name: Fetch Sources | |
| uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| - name: Setup Python | |
| uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0 | |
| with: | |
| python-version: '3.x' | |
| - name: Install Python Dependencies | |
| run: pip install meson ninja | |
| - name: Prepare MSVC | |
| uses: bus1/cabuild/action/msdevshell@06ea2833eef61e9b0d0ce0d728416e617e4fb1fe # v1 | |
| with: | |
| architecture: x64 | |
| - name: Configure | |
| run: meson setup build | |
| - name: Build | |
| run: meson compile -v -C build | |
| - name: Upload meson logs | |
| if: always() | |
| uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 | |
| with: | |
| name: meson-logs-${{ github.job }} | |
| path: build/meson-logs |