[2.3] papd: Use cupsGetOptions() to get printer URI #1058
Workflow file for this run
This file contains 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: Checks | |
on: | |
push: | |
branches: | |
- main | |
- branch-* | |
paths-ignore: | |
- 'CONTRIBUTORS' | |
- 'NEWS' | |
pull_request: | |
branches: | |
- main | |
- branch-* | |
types: | |
- opened | |
- synchronize | |
- reopened | |
paths-ignore: | |
- 'CONTRIBUTORS' | |
- 'NEWS' | |
env: | |
APT_PACKAGES: | | |
libtool libtool-bin automake autoconf libssl-dev libgcrypt-dev libkrb5-dev libpam0g-dev \ | |
libdb-dev libavahi-client-dev libacl1-dev libldap2-dev libcrack2-dev libcups2-dev \ | |
libkrb5-dev quota libtirpc-dev libltdl-dev tcpd libwrap0-dev | |
jobs: | |
integration_test: | |
name: Ubuntu | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install --assume-yes --no-install-recommends ${{ env.APT_PACKAGES }} | |
- name: Bootstrap | |
run: ./bootstrap | |
- name: Configure | |
run: ./configure --enable-krbV-uam --enable-pgp-uam --enable-systemd --enable-quota --with-cracklib --with-libtirpc | |
- name: Build | |
run: make -j $(nproc) all | |
- name: Run tests | |
run: make check | |
- name: Run distribution tests | |
run: make distcheck | |
build-debian: | |
name: Debian | |
runs-on: ubuntu-22.04 | |
container: | |
image: debian:latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies | |
run: | | |
apt-get update | |
apt-get install --assume-yes --no-install-recommends ${{ env.APT_PACKAGES }} | |
- name: Bootstrap | |
run: ./bootstrap | |
- name: Configure | |
run: ./configure --enable-debian --enable-krbV-uam --enable-pgp-uam --enable-quota --with-cracklib --with-libtirpc | |
- name: Build | |
run: make -j $(nproc) all | |
- name: Run tests | |
run: make check | |
build-fedora: | |
name: Fedora | |
runs-on: ubuntu-22.04 | |
container: | |
image: fedora:rawhide | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies | |
run: | | |
dnf -y install openssl-devel libgcrypt-devel libdb-devel automake libtool avahi-devel cups-devel krb5-devel libacl-devel openldap-devel cracklib-devel | |
- name: Bootstrap | |
run: ./bootstrap | |
- name: Configure | |
run: ./configure --enable-pgp-uam --enable-krbV-uam --enable-redhat-sysv --with-cracklib=/usr/share/cracklib | |
- name: Build | |
run: make -j $(nproc) all | |
- name: Run tests | |
run: make check | |
build-macos: | |
name: macOS | |
runs-on: macos-13 | |
env: | |
HOMEBREW_NO_INSTALL_CLEANUP: 1 | |
HOMEBREW_NO_AUTO_UPDATE: 1 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies | |
run: brew install automake libressl pkg-config krb5 berkeley-db | |
- name: Bootstrap | |
run: ./bootstrap | |
- name: Configure | |
# DDP and related services in the absence of an AppleTalk stack on macOS | |
run: | | |
./configure \ | |
--with-ssl-dir=/usr/local/opt/libressl \ | |
--with-bdb=/usr/local/opt/berkeley-db \ | |
--enable-pgp-uam \ | |
--enable-krbV-uam \ | |
--disable-ddp | |
- name: Build | |
run: make -j $(nproc) all | |
- name: Run tests | |
run: make check | |
build-netbsd: | |
name: "NetBSD" | |
runs-on: ubuntu-22.04 | |
permissions: | |
contents: read | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Build on VM" | |
uses: vmactions/netbsd-vm@v1.0.3 | |
with: | |
release: 9.3 | |
copyback: false | |
prepare: | | |
pkg_add gcc13 autoconf automake libtool pkg-config db5 libgcrypt libressl gmake cups | |
run: | | |
./bootstrap | |
./configure MAKE=gmake PKG_CONFIG_PATH=/usr/pkg/lib/pkgconfig --with-bdb=/usr/pkg --with-libgcrypt-dir=/usr/pkg --enable-netbsd | |
gmake -j2 all | |
build-solaris: | |
name: "Solaris" | |
runs-on: ubuntu-latest | |
permissions: | |
contents: read | |
steps: | |
- name: "Checkout repository" | |
uses: actions/checkout@v4 | |
- name: "Build on VM" | |
uses: vmactions/solaris-vm@v1.0.1 | |
with: | |
release: 11.4 | |
prepare: | | |
pkg install autoconf automake libtool pkg-config gcc libgcrypt | |
wget https://ftp.gnu.org/gnu/autoconf/autoconf-2.71.tar.gz --no-check-certificate | |
wget https://ftp.gnu.org/gnu/automake/automake-1.16.5.tar.gz --no-check-certificate | |
tar xvf autoconf-2.71.tar.gz | |
tar xvf automake-1.16.5.tar.gz | |
cd autoconf-2.71 | |
./configure --prefix=/usr | |
make | |
make install | |
cd ../automake-1.16.5 | |
./configure --prefix=/usr | |
make | |
make install | |
cd .. | |
run: | | |
./bootstrap | |
./configure MAKE=gmake --enable-cups=no | |
gmake -j2 all | |
static_analysis: | |
name: Static Analysis | |
runs-on: ubuntu-22.04 | |
env: | |
# Directory where build-wrapper output will be placed | |
BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory | |
# Run only if not originating from a fork | |
if: ${{ !github.event.pull_request.head.repo.fork }} | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
# Shallow clones should be disabled for a better relevancy of analysis | |
fetch-depth: 0 | |
- name: Install dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install --assume-yes --no-install-recommends ${{ env.APT_PACKAGES }} | |
- name: Install sonar-scanner and build-wrapper | |
uses: SonarSource/sonarcloud-github-c-cpp@v1 | |
- name: Run build-wrapper | |
run: | | |
mkdir -p ${{ env.BUILD_WRAPPER_OUT_DIR }} | |
./bootstrap | |
./configure | |
build-wrapper-linux-x86-64 --out-dir ${{ env.BUILD_WRAPPER_OUT_DIR }} make -j $(nproc) all | |
- name: Run sonar-scanner | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | |
run: | | |
sonar-scanner --define sonar.cfamily.build-wrapper-output="${{ env.BUILD_WRAPPER_OUT_DIR }}" |