PHPC-2367: Add SSPI SASL, drop Cyrus on Windows (#1837) #2083
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: "Tests" | |
on: | |
pull_request: | |
branches: | |
- "v*.*" | |
- "feature/*" | |
push: | |
branches: | |
- "v*.*" | |
- "feature/*" | |
jobs: | |
tests: | |
name: "Tests" | |
runs-on: "${{ matrix.os }}" | |
strategy: | |
fail-fast: true | |
matrix: | |
os: | |
- "ubuntu-22.04" | |
php-version: | |
- "8.1" | |
- "8.2" | |
- "8.3" | |
- "8.4" | |
mongodb-version: | |
- "6.0" | |
topology: | |
- "server" | |
include: | |
- os: "ubuntu-24.04" | |
php-version: "8.1" | |
mongodb-version: "8.0" | |
topology: "replica_set" | |
- os: "ubuntu-24.04" | |
php-version: "8.1" | |
mongodb-version: "8.0" | |
topology: "sharded_cluster" | |
- os: "ubuntu-22.04" | |
php-version: "8.1" | |
mongodb-version: "6.0" | |
topology: "replica_set" | |
- os: "ubuntu-22.04" | |
php-version: "8.1" | |
mongodb-version: "6.0" | |
topology: "sharded_cluster" | |
steps: | |
- name: "Checkout" | |
uses: "actions/checkout@v4" | |
with: | |
submodules: true | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.13' | |
- name: Setup MongoDB | |
id: setup-mongodb | |
uses: ./tests/drivers-evergreen-tools | |
with: | |
version: ${{ matrix.mongodb-version }} | |
topology: ${{ matrix.topology }} | |
- name: "Build Driver" | |
id: build-driver | |
uses: ./.github/actions/linux/build | |
with: | |
version: ${{ matrix.php-version }} | |
- name: "Run Tests" | |
run: TEST_PHP_ARGS="-q -x --show-diff -g FAIL,XFAIL,BORK,WARN,LEAK,SKIP" make test | |
env: | |
MONGODB_URI: ${{ steps.setup-mongodb.outputs.cluster-uri }} | |
pecl-test: | |
name: "Test PECL package" | |
runs-on: "ubuntu-latest" | |
env: | |
PHP_VERSION: "8.3" | |
steps: | |
- name: "Checkout" | |
uses: "actions/checkout@v4" | |
with: | |
submodules: true | |
- name: "Build Driver" | |
id: build-driver | |
uses: ./.github/actions/linux/build | |
with: | |
version: ${{ env.PHP_VERSION }} | |
- name: "Write changelog file for packaging" | |
run: echo "Testing" > changelog | |
- name: "Build package.xml" | |
run: "make package.xml RELEASE_NOTES_FILE=$(pwd)/changelog" | |
- name: "Build PECL package" | |
run: "make package" | |
# PECL always uses the version for the package name. | |
# Read it from the version file and store in env to use when uploading artifacts | |
- name: "Read current package version" | |
run: | | |
PACKAGE_VERSION=$(./bin/update-release-version.php get-version) | |
echo "PACKAGE_VERSION=${PACKAGE_VERSION}" >> "$GITHUB_ENV" | |
echo "PACKAGE_FILE=mongodb-${PACKAGE_VERSION}.tgz" >> "$GITHUB_ENV" | |
- name: "Install release archive to verify correctness" | |
run: sudo pecl install ${{ env.PACKAGE_FILE }} | |
test-windows: | |
name: "Windows Tests" | |
uses: ./.github/workflows/windows-tests.yml | |
with: | |
php: ${{ matrix.php }} | |
arch: ${{ matrix.arch }} | |
ts: ${{ matrix.ts }} | |
secrets: inherit | |
strategy: | |
fail-fast: false | |
matrix: | |
# Note: keep this in sync with the Windows matrix in package-release.yml | |
php: [ "8.1", "8.2", "8.3", "8.4" ] | |
arch: [ x64, x86 ] | |
ts: [ ts, nts ] | |
test-system-libs: | |
name: "System Library Tests" | |
runs-on: "ubuntu-latest" | |
env: | |
PHP_VERSION: "8.3" | |
LIBMONGOCRYPT_VERSION: "1.14" | |
LIBMONGOC_VERSION: "2.0.1" | |
SERVER_VERSION: "8.0" | |
steps: | |
- name: "Checkout" | |
uses: "actions/checkout@v4" | |
with: | |
submodules: true | |
- name: "Install libmongocrypt" | |
uses: ./.github/actions/linux/build-libmongocrypt | |
with: | |
version: ${{ env.LIBMONGOCRYPT_VERSION }} | |
- name: "Build libmongoc" | |
uses: ./.github/actions/linux/build-libmongoc | |
with: | |
version: ${{ env.LIBMONGOC_VERSION }} | |
- name: "Build Driver" | |
uses: ./.github/actions/linux/build | |
with: | |
version: ${{ env.PHP_VERSION }} | |
configureOpts: "--with-mongodb-system-libs=yes" | |
- name: "Check driver version" | |
shell: bash | |
run: make show-config | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: "3.13" | |
- name: Setup MongoDB | |
id: setup-mongodb | |
uses: ./tests/drivers-evergreen-tools | |
with: | |
version: ${{ ENV.SERVER_VERSION }} | |
topology: "server" | |
- name: "Run Tests" | |
run: TEST_PHP_ARGS="-q -x --show-diff -g FAIL,XFAIL,BORK,WARN,LEAK,SKIP" make test | |
env: | |
MONGODB_URI: ${{ steps.setup-mongodb.outputs.cluster-uri }} |