Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

mathewparet's avatar

Composer install failing for Laravel Dusk in bitbucket pipeleine

I am getting the below error in my bitbucket pipeline when trying to install dusk:

Do not run Composer as root/super user! See https://getcomposer.org/root for details
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.
  Problem 1
    - Installation request for facebook/webdriver 1.6.0 -> satisfiable by facebook/webdriver[1.6.0].
    - facebook/webdriver 1.6.0 requires ext-zip * -> the requested PHP extension zip is missing from your system.
  Problem 2
    - facebook/webdriver 1.6.0 requires ext-zip * -> the requested PHP extension zip is missing from your system.
    - laravel/dusk v3.0.8 requires facebook/webdriver ~1.0 -> satisfiable by facebook/webdriver[1.6.0].
    - Installation request for laravel/dusk v3.0.8 -> satisfiable by laravel/dusk[v3.0.8].

My pipeline file looks like this:

# This is a sample build configuration for PHP.
# Check our guides at https://confluence.atlassian.com/x/VYk8Lw for more examples.
# Only use spaces to indent your .yml configuration.
# -----
# You can specify a custom docker image from Docker Hub as your build environment.
image: php:7-fpm

pipelines:
  branches:
    master:
      - step:
          name: Build and test
          script: # Modify the commands below to build your repository.
            - apt-get update && apt-get install -y unzip git curl libmcrypt-dev mysql-client
            - yes | pecl install mcrypt-1.0.1
            - docker-php-ext-install pdo_mysql
            - curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
            - composer -V
            - composer install
            - export DB_CONNECTION=mysql
            - php artisan key:generate --env=testing
            - cat .env.testing | grep KEY
            - cp .env.testing .env
            - php artisan migrate:install --env=testing
            - php artisan migrate --env=testing
            - php artisan config:cache
            - vendor/bin/phpunit
            - php artisan dusk
          services:
            - mysql

      - step:
          name: Deploy to Prod
          deployment: production
          script:
            - apt-get update && apt-get install -y git curl
            - curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
            - composer -V
            - echo "Deploying to production"
            - composer global require laravel/envoy
            - ~/.composer/vendor/bin/envoy run deploy

definitions:
  services:
    mysql:
      image: mysql:5.7
      environment:
        MYSQL_DATABASE: 'fifa_test'
        MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
        MYSQL_USER: 'test_user'
        MYSQL_PASSWORD: 'test_secret'
0 likes
0 replies

Please or to participate in this conversation.