Question

App Platform Composer gets 404 from private GitHub repositories despite being granted access via DigitalOcean GitHub app

Hi there. I just got started with using App Platform, and have given my app access to our private GitHub repositories. Even in doing that, my build is failing due to Composer not being able to access the private repositories, getting a 404. For our old host, we set up deploy keys for every repository to allow Git access to those repositories, but I can’t seem to find any such setting on App Platform. I’ve double and triple checked that the DigitalOcean GitHub app has access granted to the repositories in question, but I’m guessing this isn’t being used by Git when it’s invoked via Composer?

Here’s the build log where you can see the four private drupal/omnipedia_* repositories returning a 404 towards the end:

[2022-10-07 06:01:20] => Initializing build
[2022-10-07 06:01:20] => Retrieving source code to /workspace
[2022-10-07 06:01:20] => Selecting branch "3.x_digitalocean"
[2022-10-07 06:01:24] => Checking out commit "2613d085e91a230c14e9ed1cb6a62a5c5eff87fb"
[2022-10-07 06:01:24] => Cloning submodules
[2022-10-07 06:01:25] => Got source_dir: /
[2022-10-07 06:01:25] => Using workspace root /workspace
[2022-10-07 06:01:25] 
[2022-10-07 06:01:25] => Building app using buildpacks
[2022-10-07 06:01:25] => Running buildpack detection
[2022-10-07 06:01:25] 
[2022-10-07 06:01:26]    heroku/nodejs-engine        v0.5.1    
[2022-10-07 06:01:26]    digitalocean/node           v0.3.4    (Node.js)
[2022-10-07 06:01:26]    digitalocean/php-appdetect  v0.0.3    
[2022-10-07 06:01:26]    heroku/php                  v0.210.4  (PHP)
[2022-10-07 06:01:26]    digitalocean/procfile       v0.0.3    (Procfile)
[2022-10-07 06:01:26]    digitalocean/custom         v0.1.1    (Custom Build Command)
[2022-10-07 06:01:26] 
[2022-10-07 06:01:26] For documentation on the buildpacks used to build your app, please see:
[2022-10-07 06:01:26] 
[2022-10-07 06:01:26]    Node.js  v0.3.4    https://do.co/apps-buildpack-node
[2022-10-07 06:01:26]    PHP      v0.210.4  https://do.co/apps-buildpack-php
[2022-10-07 06:01:26] 
[2022-10-07 06:01:26] => Building app
[2022-10-07 06:01:26] 
[2022-10-07 06:01:26] ---> Node.js Buildpack
[2022-10-07 06:01:26] ---> Installing toolbox
[2022-10-07 06:01:26] ---> - jq
[2022-10-07 06:01:26] ---> - yj
[2022-10-07 06:01:26] ---> Getting Node version
[2022-10-07 06:01:26] ---> Resolving Node version
[2022-10-07 06:01:27] ---> Downloading and extracting Node v16.17.1
[2022-10-07 06:01:30] ---> Parsing package.json
[2022-10-07 06:01:30] ---> No file to start server
[2022-10-07 06:01:30] ---> either use 'docker run' to start container or add index.js or server.js
[2022-10-07 06:01:30] Project contains package-lock.json, using npm
[2022-10-07 06:01:30] Using npm v8.15.0. To configure a different version of npm, set the engines.npm property in package.json.
[2022-10-07 06:01:30]   See https://do.co/apps-buildpack-node for further instructions.
[2022-10-07 06:01:30] Installing node_modules using npm (from package-lock.json)
[2022-10-07 06:01:31] Running npm ci
[2022-10-07 06:01:31] 
[2022-10-07 06:01:31] npm WARN old lockfile 
[2022-10-07 06:01:31] npm WARN old lockfile The package-lock.json file was created with an old version of npm,
[2022-10-07 06:01:31] npm WARN old lockfile so supplemental metadata must be fetched from the registry.
[2022-10-07 06:01:31] npm WARN old lockfile 
[2022-10-07 06:01:31] npm WARN old lockfile This is a one-time fix-up, please be patient...
[2022-10-07 06:01:31] npm WARN old lockfile 
[2022-10-07 06:01:34] 
[2022-10-07 06:01:34] added 109 packages, and audited 110 packages in 3s
[2022-10-07 06:01:34] 
[2022-10-07 06:01:34] 8 packages are looking for funding
[2022-10-07 06:01:34]   run `npm fund` for details
[2022-10-07 06:01:34] 
[2022-10-07 06:01:34] found 0 vulnerabilities
[2022-10-07 06:01:34] npm notice 
[2022-10-07 06:01:34] npm notice New minor version of npm available! 8.15.0 -> 8.19.2
[2022-10-07 06:01:34] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v8.19.2>
[2022-10-07 06:01:34] npm notice Run `npm install -g npm@8.19.2` to update!
[2022-10-07 06:01:34] npm notice 
[2022-10-07 06:01:34] 
[2022-10-07 06:01:35] -----> Bootstrapping...
[2022-10-07 06:01:37] -----> Preparing platform package installation...
[2022-10-07 06:01:37] -----> Installing platform packages...
[2022-10-07 06:01:41]        - php (8.1.11)
[2022-10-07 06:01:41]        - ext-bcmath (bundled with php)
[2022-10-07 06:01:41]        - ext-gd (bundled with php)
[2022-10-07 06:01:41]        - apache (2.4.54)
[2022-10-07 06:01:41]        - composer (2.4.2)
[2022-10-07 06:01:41]        - nginx (1.22.0)
[2022-10-07 06:01:42]        NOTICE: detected userland polyfill packages for PHP extensions
[2022-10-07 06:01:42]        NOTICE: now attempting to install native extension packages
[2022-10-07 06:01:42]        Installing extensions provided by symfony/polyfill-mbstring:
       - ext-mbstring (bundled with php)ing... 
[2022-10-07 06:01:42]        Installing extensions provided by symfony/polyfill-iconv:
       - ext-iconv (already enabled)conv... 
[2022-10-07 06:01:43]        Installing extensions provided by symfony/polyfill-ctype:
       - ext-ctype (already enabled)type... 
[2022-10-07 06:01:44] -----> Installing dependencies...
[2022-10-07 06:01:44]        Composer version 2.4.2 2022-09-14 16:11:15
[2022-10-07 06:01:44]        Installing dependencies from lock file
[2022-10-07 06:01:44]        Verifying lock file contents can be installed on current platform.
[2022-10-07 06:01:44]        Package operations: 224 installs, 0 updates, 0 removals
[2022-10-07 06:01:44]          - Downloading cweagans/composer-patches (1.7.2)
[2022-10-07 06:01:44]          - Downloading drupal/core-composer-scaffold (9.4.7)
[2022-10-07 06:01:44]          - Downloading composer/installers (v2.2.0)
[2022-10-07 06:01:44]          - Downloading oomphinc/composer-installers-extender (2.0.1)
[2022-10-07 06:01:44]          - Downloading chillerlan/php-settings-container (2.1.4)
[2022-10-07 06:01:44]          - Downloading commerceguys/intl (v1.1.1)
[2022-10-07 06:01:44]          - Downloading symfony/deprecation-contracts (v2.5.2)
[2022-10-07 06:01:44]          - Downloading psr/container (1.1.2)
[2022-10-07 06:01:44]          - Downloading symfony/service-contracts (v2.5.2)
[2022-10-07 06:01:44]          - Downloading symfony/polyfill-php80 (v1.25.0)
[2022-10-07 06:01:44]          - Downloading symfony/polyfill-php73 (v1.26.0)
[2022-10-07 06:01:44]          - Downloading symfony/polyfill-mbstring (v1.25.0)
[2022-10-07 06:01:44]          - Downloading symfony/console (v4.4.45)
[2022-10-07 06:01:44]          - Downloading psr/log (1.1.4)
[2022-10-07 06:01:44]          - Downloading consolidation/log (2.1.1)
[2022-10-07 06:01:44]          - Downloading symfony/finder (v4.4.44)
[2022-10-07 06:01:44]          - Downloading dflydev/dot-access-data (v3.0.1)
[2022-10-07 06:01:44]          - Downloading consolidation/output-formatters (4.2.2)
[2022-10-07 06:01:44]          - Downloading symfony/polyfill-ctype (v1.25.0)
[2022-10-07 06:01:44]          - Downloading symfony/filesystem (v4.4.42)
[2022-10-07 06:01:44]          - Downloading composer/semver (3.3.2)
[2022-10-07 06:01:44]          - Downloading consolidation/self-update (2.0.5)
[2022-10-07 06:01:44]          - Downloading doctrine/deprecations (v1.0.0)
[2022-10-07 06:01:44]          - Downloading doctrine/collections (1.7.2)
[2022-10-07 06:01:44]          - Downloading typo3/phar-stream-wrapper (v3.1.7)
[2022-10-07 06:01:44]          - Downloading symfony/polyfill-php72 (v1.26.0)
[2022-10-07 06:01:44]          - Downloading twig/twig (v2.15.3)
[2022-10-07 06:01:44]          - Downloading symfony/yaml (v4.4.45)
[2022-10-07 06:01:44]          - Downloading symfony/translation-contracts (v2.5.2)
[2022-10-07 06:01:44]          - Downloading symfony/validator (v4.4.45)
[2022-10-07 06:01:44]          - Downloading symfony/translation (v4.4.45)
[2022-10-07 06:01:44]          - Downloading symfony/serializer (v4.4.45)
[2022-10-07 06:01:44]          - Downloading symfony/routing (v4.4.44)
[2022-10-07 06:01:44]          - Downloading symfony/polyfill-intl-normalizer (v1.25.0)
[2022-10-07 06:01:44]          - Downloading symfony/polyfill-intl-idn (v1.25.0)
[2022-10-07 06:01:44]          - Downloading symfony/mime (v5.4.12)
[2022-10-07 06:01:44]          - Downloading symfony/http-foundation (v4.4.45)
[2022-10-07 06:01:44]          - Downloading psr/http-message (1.0.1)
[2022-10-07 06:01:44]          - Downloading symfony/psr-http-message-bridge (v2.1.3)
[2022-10-07 06:01:44]          - Downloading symfony/process (v4.4.44)
[2022-10-07 06:01:44]          - Downloading symfony/polyfill-iconv (v1.25.0)
[2022-10-07 06:01:44]          - Downloading symfony/http-client-contracts (v2.5.2)
[2022-10-07 06:01:44]          - Downloading symfony/event-dispatcher-contracts (v1.1.13)
[2022-10-07 06:01:44]          - Downloading symfony/event-dispatcher (v4.4.44)
[2022-10-07 06:01:44]          - Downloading symfony/var-dumper (v5.4.11)
[2022-10-07 06:01:44]          - Downloading symfony/debug (v4.4.44)
[2022-10-07 06:01:44]          - Downloading symfony/error-handler (v4.4.44)
[2022-10-07 06:01:44]          - Downloading symfony/http-kernel (v4.4.45)
[2022-10-07 06:01:44]          - Downloading symfony/dependency-injection (v4.4.44)
[2022-10-07 06:01:44]          - Downloading symfony-cmf/routing (2.3.4)
[2022-10-07 06:01:44]          - Downloading stack/builder (v1.0.6)
[2022-10-07 06:01:44]          - Downloading pear/pear_exception (v1.0.2)
[2022-10-07 06:01:44]          - Downloading pear/console_getopt (v1.4.3)
[2022-10-07 06:01:44]          - Downloading pear/pear-core-minimal (v1.10.11)
[2022-10-07 06:01:44]          - Downloading pear/archive_tar (1.4.14)
[2022-10-07 06:01:44]          - Downloading masterminds/html5 (2.7.6)
[2022-10-07 06:01:44]          - Downloading laminas/laminas-stdlib (3.7.1)
[2022-10-07 06:01:44]          - Downloading laminas/laminas-escaper (2.9.0)
[2022-10-07 06:01:44]          - Downloading laminas/laminas-feed (2.17.0)
[2022-10-07 06:01:44]          - Downloading psr/http-factory (1.0.1)
[2022-10-07 06:01:44]          - Downloading laminas/laminas-diactoros (2.11.3)
[2022-10-07 06:01:44]          - Downloading ralouphie/getallheaders (3.0.3)
[2022-10-07 06:01:44]          - Downloading guzzlehttp/psr7 (1.9.0)
[2022-10-07 06:01:44]          - Downloading guzzlehttp/promises (1.5.2)
[2022-10-07 06:01:44]          - Downloading guzzlehttp/guzzle (6.5.8)
[2022-10-07 06:01:44]          - Downloading doctrine/lexer (1.2.3)
[2022-10-07 06:01:44]          - Downloading egulias/email-validator (3.2.1)
[2022-10-07 06:01:44]          - Downloading psr/cache (1.0.1)
[2022-10-07 06:01:44]          - Downloading doctrine/annotations (1.13.3)
[2022-10-07 06:01:44]          - Downloading doctrine/reflection (1.2.3)
[2022-10-07 06:01:44]          - Downloading asm89/stack-cors (1.3.0)
[2022-10-07 06:01:44]          - Downloading drupal/core (9.4.7)
[2022-10-07 06:01:44]          - Downloading commerceguys/addressing (v1.4.1)
[2022-10-07 06:01:44]          - Downloading drupal/address (1.11.0)
[2022-10-07 06:01:44]          - Downloading drupal/advagg (4.1.0)
[2022-10-07 06:01:44]          - Downloading symfony/dom-crawler (v4.4.45)
[2022-10-07 06:01:44]          - Downloading symfony/css-selector (v4.4.44)
[2022-10-07 06:01:44]          - Downloading npm-asset/js-cookie (2.1.4)
[2022-10-07 06:01:44]          - Downloading npm-asset/strictdom (1.0.1)
[2022-10-07 06:01:44]          - Downloading npm-asset/fastdom (1.0.10)
[2022-10-07 06:01:44]          - Downloading npm-asset/chillout (3.1.9)
[2022-10-07 06:01:44]          - Downloading npm-asset/platform (1.3.3)
[2022-10-07 06:01:44]          - Downloading npm-asset/css.escape (1.5.1)
[2022-10-07 06:01:44]          - Downloading npm-asset/ally.js (1.4.1)
[2022-10-07 06:01:44]          - Downloading drupal/hook_event_dispatcher (3.3.1)
[2022-10-07 06:01:44]          - Syncing drupal-library/jquery.onfontresize (master master) into cache
[2022-10-07 06:01:45]          - Downloading league/commonmark (1.6.7)
[2022-10-07 06:01:45]          - Downloading drupal/markdown (3.0.0-rc2)
[2022-10-07 06:01:45]          - Downloading drupal/image_field_caption (1.2.0)
[2022-10-07 06:01:45]          - Downloading bower-asset/photoswipe (v4.1.3)
[2022-10-07 06:01:45]          - Downloading npm-asset/popper.js (1.15.0)
[2022-10-07 06:01:45]          - Downloading npm-asset/tippy.js (2.6.0)
[2022-10-07 06:01:45]          - Downloading npm-asset/jquery (3.6.0)
[2022-10-07 06:01:45]          - Downloading npm-asset/jquery-hoverintent (1.10.0)
[2022-10-07 06:01:45]          - Downloading npm-asset/headroom.js (0.10.4)
[2022-10-07 06:01:45]          - Downloading npm-asset/fr-offcanvas (1.1.1)
[2022-10-07 06:01:45]          - Downloading npm-asset/fontfaceobserver (2.1.0)
[2022-10-07 06:01:45]          - Downloading npm-asset/autosize (4.0.2)
[2022-10-07 06:01:45]          - Downloading bower-asset/stickyfill (1.1.4)
[2022-10-07 06:01:45]          - Downloading bower-asset/smoothscroll (v0.4.4)
[2022-10-07 06:01:45]          - Downloading drupal/autoban (1.7.0)
[2022-10-07 06:01:45]          - Downloading drupal/token (1.11.0)
[2022-10-07 06:01:45]          - Downloading drupal/state_machine (1.6.0)
[2022-10-07 06:01:45]          - Downloading drupal/entity (1.4.0)
[2022-10-07 06:01:45]          - Downloading drupal/profile (1.4.0)
[2022-10-07 06:01:45]          - Downloading drupal/inline_entity_form (1.0.0-rc12)
[2022-10-07 06:01:45]          - Downloading drupal/entity_reference_revisions (1.10.0)
[2022-10-07 06:01:45]          - Downloading drupal/commerce (2.31.0)
[2022-10-07 06:01:45]          - Downloading drupal/config_filter (1.10.0)
[2022-10-07 06:01:45]          - Downloading drupal/config_split (1.9.0)
[2022-10-07 06:01:45]          - Downloading drupal/csp (1.16.0)
[2022-10-07 06:01:45]          - Downloading drupal/dblog_persistent (2.1.1)
[2022-10-07 06:01:45]          - Downloading drupal/development_environment (2.0.0)
[2022-10-07 06:01:45]          - Downloading drupal/disable_link_rel (1.0.0-beta2)
[2022-10-07 06:01:45]          - Downloading drupal/eu_cookie_compliance (1.21.0)
[2022-10-07 06:01:45]          - Downloading drupal/views_bulk_operations (4.1.4)
[2022-10-07 06:01:45]          - Downloading drupal/fancy_file_delete (2.0.7)
[2022-10-07 06:01:45]          - Downloading drupal/flood_control (2.2.3)
[2022-10-07 06:01:45]          - Downloading drupal/key (1.16.0)
[2022-10-07 06:01:45]          - Downloading drupal/encrypt (3.0.0)
[2022-10-07 06:01:45]          - Downloading drupal/tfa (1.0.0-alpha8)
[2022-10-07 06:01:45]          - Downloading paragonie/random_compat (v9.99.100)
[2022-10-07 06:01:45]          - Downloading paragonie/constant_time_encoding (v2.6.3)
[2022-10-07 06:01:45]          - Downloading christian-riesen/otp (2.7.0)
[2022-10-07 06:01:45]          - Downloading chillerlan/php-qrcode (4.3.4)
[2022-10-07 06:01:45]          - Downloading drupal/ga_login (1.0.0-alpha6)
[2022-10-07 06:01:45]          - Downloading drupal/gin_toolbar (1.0.0-beta22)
[2022-10-07 06:01:45]          - Downloading drupal/gin (3.0.0-beta5)
[2022-10-07 06:01:45]          - Downloading drupal/honeypot (2.1.1)
[2022-10-07 06:01:45]          - Downloading drupal/login_destination (2.0.0-beta1)
[2022-10-07 06:01:45]          - Downloading drupal/login_security (2.0.0)
[2022-10-07 06:01:45]          - Downloading drupal/media_entity_file_replace (1.0.0)
[2022-10-07 06:01:45]          - Downloading drupal/metatag (1.21.0)
[2022-10-07 06:01:45]          - Downloading drupal/permissions_by_term (3.1.19)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_access (3.x-dev 7a96b3d)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_attached_data (3.x-dev d90dc45)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_block (3.x-dev 963909c)
[2022-10-07 06:01:45]          - Downloading vipnytt/sitemapparser (v1.1.5)
[2022-10-07 06:01:45]          - Downloading drupal/warmer (2.0.5)
[2022-10-07 06:01:45]          - Downloading drupal/queue_ui (3.1.0)
[2022-10-07 06:01:45]          - Downloading drupal/pcb (3.0.1)
[2022-10-07 06:01:45]          - Downloading ezyang/htmlpurifier (v4.14.0)
[2022-10-07 06:01:45]          - Downloading caxy/php-htmldiff (v0.1.14)
[2022-10-07 06:01:45]          - Downloading mkalkbrenner/php-htmldiff-advanced (0.0.8)
[2022-10-07 06:01:45]          - Downloading drupal/diff (1.0.0)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_changes (3.x-dev a7c9144)
[2022-10-07 06:01:45]          - Downloading stripe/stripe-php (v7.128.0)
[2022-10-07 06:01:45]          - Downloading drupal/commerce_stripe (1.0.0-rc6)
[2022-10-07 06:01:45]          - Downloading drupal/commerce_product_limits (1.0.0)
[2022-10-07 06:01:45]          - Downloading firebase/php-jwt (v6.3.0)
[2022-10-07 06:01:45]          - Downloading sainsburys/guzzle-oauth2-plugin (v3.0.7)
[2022-10-07 06:01:45]          - Downloading drupal/commerce_paypal (1.0.0-rc7)
[2022-10-07 06:01:45]          - Downloading drupal/commerce_cart_redirection (3.1.1)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_commerce (3.x-dev 626e78e)
[2022-10-07 06:01:45]          - Downloading 8fold/commonmark-abbreviations (1.2.0)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_content (3.x-dev aadda44)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_core (3.x-dev 47f3e26)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_date (3.x-dev 1b2c052)
[2022-10-07 06:01:45]          - Downloading monolog/monolog (2.8.0)
[2022-10-07 06:01:45]          - Downloading drupal/monolog (2.2.0)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_logger (3.x-dev a2e20bd)
[2022-10-07 06:01:45]          - Downloading drupal/webp (1.0.0-beta6)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_media (3.x-dev 102a66f)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_menu (3.x-dev f880d2e)
[2022-10-07 06:01:45]          - Downloading drupal/search_api (1.25.0)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_search (3.x-dev 08f4a64)
[2022-10-07 06:01:45]          - Downloading npm-asset/fontsource--exo-2 (4.5.9)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_site_theme (3.x-dev 986ac55)
[2022-10-07 06:01:45]          - Downloading drupal/omnipedia_user (3.x-dev 442cf21)
[2022-10-07 06:01:45]          - Downloading drupal/ctools (3.11.0)
[2022-10-07 06:01:45]          - Downloading drupal/password_policy (3.1.0)
[2022-10-07 06:01:45]          - Downloading drupal/pathauto (1.11.0)
[2022-10-07 06:01:45]          - Downloading drupal/rebuilder (1.0.0)
[2022-10-07 06:01:45]          - Downloading drupal/redirect (1.8.0)
[2022-10-07 06:01:45]          - Downloading drupal/remove_http_headers (1.0.0)
[2022-10-07 06:01:45]          - Downloading drupal/typed_data (1.0.0-beta1)
[2022-10-07 06:01:45]          - Downloading drupal/rules (3.0.0-alpha7)
[2022-10-07 06:01:45]          - Downloading drupal/seckit (2.0.0)
[2022-10-07 06:01:45]          - Downloading drupal/security_review (1.0.0-alpha2)
[2022-10-07 06:01:45]          - Downloading drupal/session_limit (2.0.0-beta2)
[2022-10-07 06:01:45]          - Downloading paragonie/sodium_compat (v1.17.1)
[2022-10-07 06:01:45]          - Downloading paragonie/hidden-string (v2.0.0)
[2022-10-07 06:01:45]          - Downloading paragonie/halite (v5.1.0)
[2022-10-07 06:01:45]          - Downloading drupal/sodium (2.3.0)
[2022-10-07 06:01:45]          - Downloading drupal/subpathauto (1.2.0)
[2022-10-07 06:01:45]          - Downloading tijsverkoyen/css-to-inline-styles (2.2.4)
[2022-10-07 06:01:45]          - Downloading swiftmailer/swiftmailer (v6.3.0)
[2022-10-07 06:01:45]          - Downloading html2text/html2text (4.3.1)
[2022-10-07 06:01:45]          - Downloading drupal/mailsystem (4.4.0)
[2022-10-07 06:01:45]          - Downloading drupal/swiftmailer (2.2.0)
[2022-10-07 06:01:45]          - Downloading drupal/token_filter (1.4.0)
[2022-10-07 06:01:45]          - Downloading drupal/views_bulk_edit (2.6.0)
[2022-10-07 06:01:45]          - Downloading webmozart/assert (1.11.0)
[2022-10-07 06:01:45]          - Downloading webmozart/path-util (2.3.0)
[2022-10-07 06:01:45]          - Downloading webflo/drupal-finder (1.2.2)
[2022-10-07 06:01:45]          - Downloading nikic/php-parser (v4.15.1)
[2022-10-07 06:01:45]          - Downloading psy/psysh (v0.11.8)
[2022-10-07 06:01:45]          - Downloading league/container (4.2.0)
[2022-10-07 06:01:45]          - Downloading enlightn/security-checker (v1.10.0)
[2022-10-07 06:01:45]          - Downloading grasmash/expander (2.0.3)
[2022-10-07 06:01:45]          - Downloading consolidation/config (2.1.1)
[2022-10-07 06:01:45]          - Downloading consolidation/site-alias (3.1.5)
[2022-10-07 06:01:45]          - Downloading consolidation/site-process (4.2.0)
[2022-10-07 06:01:45]          - Downloading consolidation/annotated-command (4.5.6)
[2022-10-07 06:01:45]          - Downloading consolidation/robo (3.0.10)
[2022-10-07 06:01:45]          - Downloading consolidation/filter-via-dot-access-data (2.0.2)
[2022-10-07 06:01:45]          - Downloading symfony/polyfill-intl-grapheme (v1.26.0)
[2022-10-07 06:01:45]          - Downloading symfony/string (v6.1.4)
[2022-10-07 06:01:45]          - Downloading chi-teck/drupal-code-generator (2.5.3)
[2022-10-07 06:01:45]          - Downloading drush/drush (11.1.1)
[2022-10-07 06:01:46]            Failed to download drupal/omnipedia_access from dist: The "https://api.github.com/repos/neurocracy/drupal-omnipedia-access/zipball/7a96b3dcd4a011da1bedf90b1dd37499edc7e443" file could not be downloaded (HTTP/2 404 ):
[2022-10-07 06:01:46]        {"message":"Not Found","documentation_url":"https://docs.github.com/rest/reference/repos#download-a-repository-archive"}
[2022-10-07 06:01:46]            Now trying to download from source
[2022-10-07 06:01:46]          - Syncing drupal/omnipedia_access (3.x-dev 7a96b3d) into cache
[2022-10-07 06:01:47]            Failed to download drupal/omnipedia_block from dist: The "https://api.github.com/repos/neurocracy/drupal-omnipedia-block/zipball/963909cd53b8f4093eaf55e7f2b03f61cd361f71" file could not be downloaded (HTTP/2 404 ):
[2022-10-07 06:01:47]        {"message":"Not Found","documentation_url":"https://docs.github.com/rest/reference/repos#download-a-repository-archive"}
[2022-10-07 06:01:47]            Now trying to download from source
[2022-10-07 06:01:47]          - Syncing drupal/omnipedia_block (3.x-dev 963909c) into cache
[2022-10-07 06:01:48]            Failed to download drupal/omnipedia_commerce from dist: The "https://api.github.com/repos/neurocracy/drupal-omnipedia-commerce/zipball/626e78e599c31e5dad438754d7a0a6631f0870d4" file could not be downloaded (HTTP/2 404 ):
[2022-10-07 06:01:48]        {"message":"Not Found","documentation_url":"https://docs.github.com/rest/reference/repos#download-a-repository-archive"}
[2022-10-07 06:01:48]            Now trying to download from source
[2022-10-07 06:01:48]          - Syncing drupal/omnipedia_commerce (3.x-dev 626e78e) into cache
[2022-10-07 06:01:49]            Failed to download drupal/omnipedia_user from dist: The "https://api.github.com/repos/neurocracy/drupal-omnipedia-user/zipball/442cf21ec002af0789ca4e83826953947e0c91b1" file could not be downloaded (HTTP/2 404 ):
[2022-10-07 06:01:49]        {"message":"Not Found","documentation_url":"https://docs.github.com/rest/reference/repos#download-a-repository-archive"}
[2022-10-07 06:01:49]            Now trying to download from source
[2022-10-07 06:01:49]          - Syncing drupal/omnipedia_user (3.x-dev 442cf21) into cache
[2022-10-07 06:01:50]        
[2022-10-07 06:01:50]        In Git.php line 471:
[2022-10-07 06:01:50]                                                                                       
[2022-10-07 06:01:50]          Failed to execute git clone --mirror -- 'git@github.com:neurocracy/drupal-o  
[2022-10-07 06:01:50]          mnipedia-access.git' '/layers/heroku_php/shim/php/.composer/cache/vcs/git-g  
[2022-10-07 06:01:50]          ithub.com-neurocracy-drupal-omnipedia-access.git/'                           
[2022-10-07 06:01:50]                                                                                       
[2022-10-07 06:01:50]          Cloning into bare repository '/layers/heroku_php/shim/php/.composer/cache/v  
[2022-10-07 06:01:50]          cs/git-github.com-neurocracy-drupal-omnipedia-access.git'...                 
[2022-10-07 06:01:50]          Warning: Permanently added the ECDSA host key for IP address '140.82.121.3'  
[2022-10-07 06:01:50]           to the list of known hosts.                                                 
[2022-10-07 06:01:50]          git@github.com: Permission denied (publickey).                               
[2022-10-07 06:01:50]          fatal: Could not read from remote repository.                                
[2022-10-07 06:01:50]                                                                                       
[2022-10-07 06:01:50]          Please make sure you have the correct access rights                          
[2022-10-07 06:01:50]          and the repository exists.                                                   
[2022-10-07 06:01:50]                                                                                       
[2022-10-07 06:01:50]        
[2022-10-07 06:01:50]        install [--prefer-source] [--prefer-dist] [--prefer-install PREFER-INSTALL] [--dry-run] [--dev] [--no-suggest] [--no-dev] [--no-autoloader] [--no-progress] [--no-install] [--audit] [--audit-format AUDIT-FORMAT] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [-a|--classmap-authoritative] [--apcu-autoloader] [--apcu-autoloader-prefix APCU-AUTOLOADER-PREFIX] [--ignore-platform-req IGNORE-PLATFORM-REQ] [--ignore-platform-reqs] [--] [<packages>...]
[2022-10-07 06:01:50]        
[2022-10-07 06:01:50] 
[2022-10-07 06:01:50]  !     ERROR: Dependency installation failed!
[2022-10-07 06:01:50]  !     
[2022-10-07 06:01:50]  !     The 'composer install' process failed with an error. The cause
[2022-10-07 06:01:50]  !     may be the download or installation of packages, or a pre- or
[2022-10-07 06:01:50]  !     post-install hook (e.g. a 'post-install-cmd' item in 'scripts')
[2022-10-07 06:01:50]  !     in your 'composer.json'.
[2022-10-07 06:01:50]  !     
[2022-10-07 06:01:50]  !     Typical error cases are out-of-date or missing parts of code,
[2022-10-07 06:01:50]  !     timeouts when making external connections, or memory limits.
[2022-10-07 06:01:50]  !     
[2022-10-07 06:01:50]  !     Check the above error output closely to determine the cause of
[2022-10-07 06:01:50]  !     the problem, ensure the code you're pushing is functioning
[2022-10-07 06:01:50]  !     properly, and that all local changes are committed correctly.
[2022-10-07 06:01:50]  !     
[2022-10-07 06:01:50]  !     For more information on builds for PHP on Heroku, refer to
[2022-10-07 06:01:50]  !     https://devcenter.heroku.com/articles/php-support
[2022-10-07 06:01:50] 
[2022-10-07 06:01:50] ERROR: failed to build: exit status 1
[2022-10-07 06:01:50] 
[2022-10-07 06:01:50] For documentation on the buildpacks used to build your app, please see:
[2022-10-07 06:01:50] 
[2022-10-07 06:01:50]    Node.js  v0.3.4    https://do.co/apps-buildpack-node
[2022-10-07 06:01:50]    PHP      v0.210.4  https://do.co/apps-buildpack-php
[2022-10-07 06:01:50] 
[2022-10-07 06:01:50]  ! Build failed
[]

Submit an answer

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Sign In or Sign Up to Answer

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Accepted Answer

Hi there,

I believe that you need to create a GitHub private access token and add it as an environment variable. After that you can run the following to configure composer to use that access token:

composer config -g github-oauth.github.com $GITHUB_ACCESS_TOKEN
composer install

An alternative option, which might be more suitable for the App Platform, is to create an auth.json so that composer could use the auth details from there. For more information you could take a look at the official documentation here:

https://getcomposer.org/doc/articles/authentication-for-private-packages.md

EDIT: Rather than committing the auth.json file to your repository, you can get this to work by setting it in the COMPOSER_AUTH (build time only) environment variable.

Let me know how it goes!

Best,

Bobby