default: tags: [docker] retry: 2 interruptible: true stages: - build - reduce .job: image: ${DISTRO}:${CODENAME} stage: build variables: LANG: C DEBIAN_FRONTEND: noninteractive script: - apt-get update -yqq - apt-get install -yq php-cli - mkdir public - php ./map-exts.php > public/${DISTRO}-${CODENAME}.yml artifacts: name: php_packages-${DISTRO}-${CODENAME} paths: - public/ debian: extends: .job variables: DISTRO: debian parallel: matrix: - CODENAME: [stretch, buster] before_script: - apt-get update -yqq - apt-get install -yqq apt-transport-https ca-certificates curl - curl -sSL -o /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg - echo "deb https://packages.sury.org/php/ $CODENAME main" > /etc/apt/sources.list.d/php.list ubuntu: extends: .job variables: DISTRO: ubuntu parallel: matrix: - CODENAME: [xenial, bionic, focal] before_script: - apt-get update -yqq - apt-get install -yqq apt-transport-https ca-certificates curl gnupg - gpg --keyserver keyserver.ubuntu.com --recv-keys 14AA40EC0831756756D7F66C4F4EA0AAE5267A6C - gpg --export 14AA40EC0831756756D7F66C4F4EA0AAE5267A6C | apt-key add - - echo "deb http://ppa.launchpad.net/ondrej/pxenialhp/ubuntu $CODENAME main" > /etc/apt/sources.list.d/php.list archive: image: busybox stage: reduce needs: - debian - ubuntu script: - ls public/ artifacts: name: php_packages paths: - public/