Configure openvox #139
Workflow file for this run
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: 'PR Tests of the install_build_artifact task' | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| jobs: | |
| test-install-build-artifact-task-on-ubuntu: | |
| strategy: | |
| matrix: | |
| os-details: | |
| - os: ubuntu-22.04 | |
| codename: jammy | |
| # - os: ubuntu-24.04 | |
| # codename: noble | |
| # Perforce hasn't yet released bolt on 24.04. | |
| runs-on: ${{ matrix.os-details.os }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - id: install-bolt | |
| uses: ./.github/actions/bolt | |
| with: | |
| os-codename: ${{ matrix.os-details.codename }} | |
| - name: Run openvox-agent install task | |
| run: bolt task run openvox_bootstrap::install_build_artifact version=8.15.0 --targets localhost --run-as root | |
| - name: Verify openvox-agent is installed | |
| run: bolt task run openvox_bootstrap::check version=8.15.0 --targets localhost --run-as root | |
| - name: Verify idempotency | |
| run: bolt task run openvox_bootstrap::install_build_artifact version=8.15.0 --targets localhost --run-as root | |
| test-install-build-artifact-task-on-other-os-via-containers: | |
| strategy: | |
| matrix: | |
| image: | |
| - almalinux:8 | |
| - almalinux:9 | |
| - rockylinux:8 | |
| - rockylinux:9 | |
| - debian:10 | |
| - debian:11 | |
| - debian:12 | |
| - fedora:42 | |
| - ubuntu:24.04 | |
| # Need to pull in the repo GPG keys for sles | |
| # - registry.suse.com/suse/sle15:15.6 | |
| runs-on: ubuntu-latest | |
| container: ${{ matrix.image }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| path: openvox_bootstrap | |
| - id: prep | |
| uses: ./openvox_bootstrap/.github/actions/container_task_prep | |
| - name: Run openvox-agent install task manually | |
| env: | |
| PT__installdir: ${{ github.workspace }} | |
| PT_version: "8.15.0" | |
| run: ./openvox_bootstrap/tasks/install_build_artifact_linux.sh | |
| - name: Verify openvox-agent is installed | |
| shell: bash | |
| env: | |
| PT__installdir: ${{ github.workspace }} | |
| PT_version: "8.15.0" | |
| run: ./openvox_bootstrap/tasks/check_linux.sh | |
| - name: Verify idempotency | |
| env: | |
| PT__installdir: ${{ github.workspace }} | |
| PT_version: "8.15.0" | |
| run: ./openvox_bootstrap/tasks/install_build_artifact_linux.sh | |
| test-install-build-artifact-task-noarch: | |
| strategy: | |
| matrix: | |
| package: | |
| - name: openvox-server | |
| version: 8.8.0 | |
| - name: openvoxdb | |
| version: 8.9.0 | |
| - name: openvoxdb-termini | |
| version: 8.9.0 | |
| details: | |
| - image: almalinux:9 | |
| prereqs: | |
| - java-17-openjdk-headless | |
| - net-tools | |
| - procps-ng | |
| - which | |
| - image: debian:12 | |
| prereqs: | |
| - openjdk-17-jre-headless | |
| - net-tools | |
| - procps | |
| - image: ubuntu:24.04 | |
| prereqs: | |
| - openjdk-17-jre-headless | |
| - net-tools | |
| - procps | |
| runs-on: ubuntu-latest | |
| container: ${{ matrix.details.image }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| path: openvox_bootstrap | |
| - id: prep | |
| uses: ./openvox_bootstrap/.github/actions/container_task_prep | |
| - name: Run openvox-agent install task manually | |
| env: | |
| PT__installdir: ${{ github.workspace }} | |
| PT_version: "8.19.1" | |
| run: ./openvox_bootstrap/tasks/install_build_artifact_linux.sh | |
| - name: Install prerequisites | |
| shell: bash | |
| env: | |
| PREREQ_PACKAGES: ${{ join(matrix.details.prereqs, ',') }} | |
| run: |- | |
| set +e | |
| /opt/puppetlabs/bin/puppet apply --detailed-exitcodes <<EOS | |
| package { [${PREREQ_PACKAGES}]: | |
| ensure => installed | |
| } | |
| EOS | |
| exitcode=$? | |
| set -e | |
| # Expect package changes and no failures. | |
| [[ "${exitcode}" -eq 2 ]] | |
| - name: Test noarch package installation | |
| env: | |
| PT__installdir: ${{ github.workspace }} | |
| PT_package: ${{ matrix.package.name }} | |
| PT_version: ${{ matrix.package.version }} | |
| run: ./openvox_bootstrap/tasks/install_build_artifact_linux.sh | |
| - name: Verify openvox-server is installed | |
| shell: bash | |
| env: | |
| PACKAGE: ${{ matrix.package.name }} | |
| VERSION: ${{ matrix.package.version }} | |
| run: |- | |
| /opt/puppetlabs/bin/puppet resource package "${PACKAGE}" > openvox-package.status | |
| cat openvox-package.status | |
| grep "ensure.*=>.*'${VERSION}" openvox-package.status |