diff --git a/.github/workflows/test-extensions.yml b/.github/workflows/test-extensions.yml index 2dcaa80..847c2e1 100644 --- a/.github/workflows/test-extensions.yml +++ b/.github/workflows/test-extensions.yml @@ -4,13 +4,16 @@ on: - pull_request jobs: + check_syntax_data: name: Check data syntax runs-on: ubuntu-latest steps: - - name: Checkout + - + name: Checkout uses: actions/checkout@v4 - - name: Check order supported extensions list + - + name: Check order supported extensions list run: | sort -o data/supported-extensions.sorted data/supported-extensions if ! DIFF="$(diff -u data/supported-extensions data/supported-extensions.sorted)"; then @@ -24,36 +27,47 @@ jobs: exit 1 fi rm data/special-requirements.sorted + check_syntax_shell: name: Check shell coding style runs-on: ubuntu-latest steps: - - name: Install Go + - + name: Install Go uses: actions/setup-go@v5 with: go-version: ">=1.22.6" cache: false - - name: Install shfmt - run: GO111MODULE=on go install mvdan.cc/sh/v3/cmd/shfmt@v3.9.0 - - name: Checkout + - + name: Install shfmt + run: GO111MODULE=on go install mvdan.cc/sh/v3/cmd/shfmt@v3.10.0 + - + name: Checkout uses: actions/checkout@v4 - - name: Check coding style + - + name: Check coding style run: ./scripts/invoke-shfmt check + check_syntax_php: name: Check PHP coding style runs-on: ubuntu-latest steps: - - name: Install PHP + - + name: Install PHP uses: shivammathur/setup-php@v2 with: php-version: "7.4" tools: composer - - name: Checkout + - + name: Checkout uses: actions/checkout@v4 - - name: Install Composer dependencies + - + name: Install Composer dependencies run: composer install --no-progress --classmap-authoritative - - name: Check coding style + - + name: Check coding style run: composer run-script lint -- --dry-run --diff + test_extensions: needs: - check_syntax_data @@ -86,12 +100,15 @@ jobs: env: IPETEST_DOCKER_DISTRO: ${{ matrix.distro }} steps: - - name: Checkout + - + name: Checkout uses: actions/checkout@v4 with: fetch-depth: 0 - - name: Test extensions + - + name: Test extensions run: ./scripts/ci-test-extensions from-commits "${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }}" + test_restoring_packages: name: Test restoring packages needs: @@ -100,9 +117,12 @@ jobs: - check_syntax_php runs-on: ubuntu-latest steps: - - name: Checkout + - + name: Checkout uses: actions/checkout@v4 - - run: docker run --rm --volume "$(pwd):/app" --workdir /app php:8.2-bullseye ./scripts/test-restore-apt + - + run: docker run --rm --volume "$(pwd):/app" --workdir /app php:8.2-bullseye ./scripts/test-restore-apt + test_custom_version: name: Test installing specific versions needs: @@ -120,9 +140,12 @@ jobs: - ^2.8 - ^2.8@stable steps: - - name: Checkout + - + name: Checkout uses: actions/checkout@v4 - - run: docker run --rm --volume "$(pwd):/app" --workdir /app php:7.4-alpine ./scripts/test-installversion "${{ matrix.xdebug_version }}" + - + run: docker run --rm --volume "$(pwd):/app" --workdir /app php:7.4-alpine ./scripts/test-installversion "${{ matrix.xdebug_version }}" + test_composer: name: Test installing composer needs: @@ -137,10 +160,12 @@ jobs: - '1' - '2.0.1' steps: - - name: Checkout + - + name: Checkout uses: actions/checkout@v4 - - run: | - docker run --rm --volume "$(pwd):/app" --workdir /app php:7.4-alpine ./scripts/test-installcomposer "${{ matrix.composer_version }}" + - + run: docker run --rm --volume "$(pwd):/app" --workdir /app php:7.4-alpine ./scripts/test-installcomposer "${{ matrix.composer_version }}" + test_marking_packages: name: Test marking pre-installed packages needs: @@ -154,9 +179,12 @@ jobs: - alpine - buster steps: - - name: Checkout + - + name: Checkout uses: actions/checkout@v4 - - run: docker run --rm --volume "$(pwd):/app" --workdir /app "php:7.4-${{ matrix.distro }}" "./scripts/ci-markused-${{ matrix.distro }}" + - + run: docker run --rm --volume "$(pwd):/app" --workdir /app "php:7.4-${{ matrix.distro }}" "./scripts/ci-markused-${{ matrix.distro }}" + test_instantclient_basic: name: Test using Oracle Instant Client Basic needs: @@ -166,9 +194,12 @@ jobs: runs-on: ubuntu-latest container: php:8.1-cli-alpine steps: - - name: Checkout + - + name: Checkout uses: actions/checkout@v4 - - run: IPE_INSTANTCLIENT_BASIC=1 ./install-php-extensions oci8 pdo_oci + - + run: IPE_INSTANTCLIENT_BASIC=1 ./install-php-extensions oci8 pdo_oci + test_install_fromsource: name: Test installing from source needs: @@ -194,9 +225,12 @@ jobs: container: php:7.4-cli-alpine source: php-memcached-dev/php-memcached@v3.2.0RC2 steps: - - name: Checkout + - + name: Checkout uses: actions/checkout@v4 - - run: ./install-php-extensions ${{ matrix.source }} + - + run: ./install-php-extensions ${{ matrix.source }} + test_upgrading_icu_data_en: name: Test that icu-data-en can be upgraded needs: @@ -205,6 +239,8 @@ jobs: - check_syntax_php runs-on: ubuntu-latest steps: - - name: Checkout + - + name: Checkout uses: actions/checkout@v4 - - run: docker run --rm --volume "$(pwd):/app" --workdir /app php:8.2-cli-alpine ./scripts/test-icu-data-en-upgradable + - + run: docker run --rm --volume "$(pwd):/app" --workdir /app php:8.2-cli-alpine ./scripts/test-icu-data-en-upgradable diff --git a/scripts/lint b/scripts/lint index 6c176eb..90c654c 100755 --- a/scripts/lint +++ b/scripts/lint @@ -11,7 +11,7 @@ echo '# Linting shell scripts' if ! docker --version >/dev/null 2>/dev/null; then echo 'Docker is not installed, or it is not running.' >&2 rc=1 -elif ! docker run --rm -v "$SRC_DIR:/src" -w /src --entrypoint /src/scripts/invoke-shfmt mvdan/shfmt:v3.9.0-alpine fix; then +elif ! docker run --rm -v "$SRC_DIR:/src" -w /src --entrypoint /src/scripts/invoke-shfmt mvdan/shfmt:v3.10.0-alpine fix; then echo 'ERROR!' >&2 rc=1 fi diff --git a/scripts/lint.bat b/scripts/lint.bat index 0190967..d88c61d 100644 --- a/scripts/lint.bat +++ b/scripts/lint.bat @@ -16,7 +16,7 @@ if errorlevel 1 ( echo Docker is not installed, or it's not running >&2 set rc=1 ) else ( - docker run --rm -v "%SRC_DIR%:/src" -w /src --entrypoint /src/scripts/invoke-shfmt mvdan/shfmt:v3.9.0-alpine fix + docker run --rm -v "%SRC_DIR%:/src" -w /src --entrypoint /src/scripts/invoke-shfmt mvdan/shfmt:v3.10.0-alpine fix if errorlevel 1 ( echo ERROR! >&2 set rc=1