mlocati/docker-php-extension-installer

Unable to find the package.xml file in the directory - opentelemetry-php-instrumentation

Closed this issue · 2 comments

Version of install-php-extensions

latest

Error description

When installing this PHP extension with install-php-extensions open-telemetry/opentelemetry-php-instrumentation@main, there is a problem and Docker stops:

#0 682.7 install-php-extensions v.2.1.30
#0 682.7 #StandWithUkraine
#0 682.7 Downloading source from https://codeload.github.com/open-telemetry/opentelemetry-php-instrumentation/tar.gz/main
#0 682.7 **Unable to find the package.xml file in the directory**
#0 682.7 /tmp/src/tmp.Mbbfbo/opentelemetry-php-instrumentation-main

Commands used:

curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions open-telemetry/opentelemetry-php-instrumentation@main

Docker image

php:8.2.7-fpm-alpine3.18

Minimal Dockerfile

No response

Working workaround - Dockerfile:

FROM php:8.2.7-fpm-alpine3.18

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    curl -Lo /tmp/opentelemetry.zip https://github.com/open-telemetry/opentelemetry-php-instrumentation/archive/refs/tags/1.0.0beta6.zip && \
    unzip /tmp/opentelemetry.zip -d /tmp/opentelemetry && \
    install-php-extensions /tmp/opentelemetry/*

Yep, downloading the whole repo, decompressing it and telling install-php-extensions the path to the directory containing the package.xml file is the only solution (otherwise the install-php-extensions should have to parse all the directories to find a package.xml file).