Hi,
I’m trying to install OctoberCMS on DigitalOcean as an App using a buildpack.
The problem arises when the Buildpack tries installing composer packages before setting the license as below:
╭──────────── buildpack detection ───────────╼
› using Ubuntu 18.04 stack
Detected the following buildpacks suitable to build your app:
heroku/nodejs-engine v0.5.1
digitalocean/node v0.3.4 (Node.js)
digitalocean/php-appdetect v0.0.3
heroku/php v1.225.4 (PHP)
digitalocean/procfile v0.0.3 (Procfile)
digitalocean/custom v0.1.1 (Custom Build Command)
For documentation on the buildpacks used to build your app, please see:
Node.js v0.3.4 https://do.co/apps-buildpack-node
PHP v1.225.4 https://do.co/apps-buildpack-php
────────────────────────────────────────────╼
─────────── app build ───────────╼
---> Node.js Buildpack
---> Installing toolbox
---> - jq
---> - yj
---> Getting Node version
---> Resolving Node version
---> Downloading and extracting Node v16.19.0
---> Parsing package.json
---> No file to start server
---> either use 'docker run' to start container or add index.js or server.js
Project contains package-lock.json, using npm
Using npm v8.19.3. To configure a different version of npm, set the engines.npm property in package.json.
See https://do.co/apps-buildpack-node for further instructions.
Installing node_modules using npm (from package-lock.json)
Running npm ci
npm WARN deprecated stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated popper.js@1.16.1: You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1
added 779 packages, and audited 780 packages in 15s
80 packages are looking for funding
run `npm fund` for details
3 high severity vulnerabilities
To address all issues (including breaking changes), run:
npm audit fix --force
Run `npm audit` for details.
npm notice
npm notice New major version of npm available! 8.19.3 -> 9.4.0
npm notice Changelog: <https://github.com/npm/cli/releases/tag/v9.4.0>
npm notice Run `npm install -g npm@9.4.0` to update!
npm notice
-----> Bootstrapping...
-----> Preparing platform package installation...
-----> Installing platform packages...
- php (8.1.14)
- apache (2.4.55)
- composer (2.5.1)
- nginx (1.22.1)
NOTICE: detected userland polyfill packages for PHP extensions
NOTICE: now attempting to install native extension packages
Installing extensions provided by symfony/polyfill-mbstring:
- ext-mbstring (bundled with php) - ext-mbstring...
Installing extensions provided by symfony/polyfill-ctype:
- ext-ctype (already enabled) - ext-ctype...
-----> Installing dependencies...
Composer version 2.5.1 2022-12-22 15:33:54
Installing dependencies from lock file
Verifying lock file contents can be installed on current platform.
Package operations: 111 installs, 0 updates, 0 removals
- Downloading composer/installers (v1.12.0)
- Downloading aws/aws-crt-php (v1.0.2)
- Downloading symfony/process (v6.2.5)
- Downloading symfony/polyfill-php81 (v1.27.0)
- Downloading symfony/polyfill-php80 (v1.27.0)
- Downloading symfony/polyfill-php73 (v1.27.0)
- Downloading symfony/finder (v6.2.5)
- Downloading symfony/polyfill-mbstring (v1.27.0)
- Downloading symfony/polyfill-ctype (v1.27.0)
- Downloading symfony/filesystem (v6.2.5)
- Downloading symfony/polyfill-intl-normalizer (v1.27.0)
- Downloading symfony/polyfill-intl-grapheme (v1.27.0)
- Downloading symfony/string (v6.2.5)
- Downloading psr/container (2.0.2)
- Downloading symfony/service-contracts (v3.2.0)
- Downloading symfony/deprecation-contracts (v3.2.0)
- Downloading symfony/console (v6.2.5)
- Downloading seld/signal-handler (2.0.1)
- Downloading seld/phar-utils (1.2.1)
- Downloading seld/jsonlint (1.9.0)
- Downloading react/promise (v2.9.0)
- Downloading psr/log (3.0.0)
- Downloading justinrainbow/json-schema (5.2.12)
- Downloading composer/pcre (3.1.0)
- Downloading composer/xdebug-handler (3.0.3)
- Downloading composer/spdx-licenses (1.5.7)
- Downloading composer/semver (3.3.2)
- Downloading composer/metadata-minifier (1.0.0)
- Downloading composer/class-map-generator (1.0.0)
- Downloading composer/ca-bundle (1.3.5)
- Downloading composer/composer (2.5.1)
- Downloading doctrine/deprecations (v1.0.0)
- Downloading doctrine/event-manager (1.2.0)
- Downloading doctrine/cache (2.2.0)
- Downloading doctrine/dbal (2.13.9)
- Downloading doctrine/inflector (2.0.6)
- Downloading doctrine/lexer (3.0.0)
- Downloading webmozart/assert (1.11.0)
- Downloading dragonmantank/cron-expression (v3.3.2)
- Downloading symfony/http-foundation (v6.2.5)
- Downloading fruitcake/php-cors (v1.2.0)
- Downloading psr/http-message (1.0.1)
- Downloading psr/http-client (1.0.1)
- Downloading ralouphie/getallheaders (3.0.3)
- Downloading psr/http-factory (1.0.1)
- Downloading guzzlehttp/psr7 (2.4.3)
- Downloading guzzlehttp/promises (1.5.2)
- Downloading guzzlehttp/guzzle (7.5.0)
- Downloading voku/portable-ascii (2.0.1)
- Downloading phpoption/phpoption (1.9.0)
- Downloading graham-campbell/result-type (v1.1.0)
- Downloading vlucas/phpdotenv (v5.5.0)
- Downloading symfony/css-selector (v6.2.5)
- Downloading tijsverkoyen/css-to-inline-styles (2.2.6)
- Downloading symfony/var-dumper (v6.2.5)
- Downloading symfony/polyfill-uuid (v1.27.0)
- Downloading symfony/uid (v6.2.5)
- Downloading symfony/routing (v6.2.5)
- Downloading symfony/polyfill-php72 (v1.27.0)
- Downloading symfony/polyfill-intl-idn (v1.27.0)
- Downloading symfony/mime (v6.2.5)
- Downloading psr/event-dispatcher (1.0.0)
- Downloading symfony/event-dispatcher-contracts (v3.2.0)
- Downloading symfony/event-dispatcher (v6.2.5)
- Downloading egulias/email-validator (4.0.1)
- Downloading symfony/mailer (v6.2.5)
- Downloading symfony/error-handler (v6.2.5)
- Downloading symfony/http-kernel (v6.2.5)
- Downloading ramsey/collection (2.0.0)
- Downloading brick/math (0.10.2)
- Downloading ramsey/uuid (4.7.3)
- Downloading psr/simple-cache (3.0.0)
- Downloading nunomaduro/termwind (v1.15.0)
- Downloading symfony/translation-contracts (v3.2.0)
- Downloading symfony/translation (v6.2.5)
- Downloading nesbot/carbon (2.65.0)
- Downloading monolog/monolog (2.8.0)
- Downloading league/mime-type-detection (1.11.0)
- Downloading league/flysystem (3.12.2)
- Downloading nette/utils (v3.2.9)
- Downloading nette/schema (v1.2.3)
- Downloading dflydev/dot-access-data (v3.0.2)
- Downloading league/config (v1.2.0)
- Downloading league/commonmark (2.3.8)
- Downloading laravel/serializable-closure (v1.2.2)
- Downloading laravel/framework (v9.48.0)
- Downloading laravel/sail (v1.18.1)
- Downloading nikic/php-parser (v4.15.3)
- Downloading psy/psysh (v0.11.11)
- Downloading laravel/tinker (v2.8.0)
- Downloading league/csv (9.8.0)
- Downloading mtdowling/jmespath.php (2.6.1)
- Downloading aws/aws-sdk-php (3.257.10)
- Downloading league/flysystem-aws-s3-v3 (3.12.2)
- Downloading linkorb/jsmin-php (1.0.0)
- Downloading october/tailor (v3.2.10)
- Downloading october/system (v3.2.10)
- Downloading october/media (v3.2.10)
- Downloading october/editor (v3.2.10)
- Downloading october/cms (v3.2.10)
- Downloading october/backend (v3.2.10)
- Downloading october/all (v3.2.0)
- Downloading rainlab/blog-plugin (v1.6.3)
- Downloading rainlab/pages-plugin (v1.5.8)
- Downloading wikimedia/less.php (v3.2.0)
- Downloading twig/twig (v3.5.0)
- Downloading symfony/yaml (v6.2.5)
- Downloading scssphp/scssphp (v1.11.0)
- Downloading october/rain (v3.2.8)
- Downloading rainlab/translate-plugin (v2.2.2)
- Downloading rainlab/user-plugin (v1.6.4)
In AuthHelper.php line 197:
The 'https://gateway.octobercms.com/composer/dist/october/cms/october-cms-v
3.2.10-9cc332.zip' URL could not be accessed (HTTP 403): HTTP/1.1 403 Forbi
dden
install [--prefer-source] [--prefer-dist] [--prefer-install PREFER-INSTALL] [--dry-run] [--download-only] [--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>...]
! ERROR: Dependency installation failed!
!
! The 'composer install' process failed with an error. The cause
! may be the download or installation of packages, or a pre- or
! post-install hook (e.g. a 'post-install-cmd' item in 'scripts')
! in your 'composer.json'.
!
! Typical error cases are out-of-date or missing parts of code,
! timeouts when making external connections, or memory limits.
!
! Check the above error output closely to determine the cause of
! the problem, ensure the code you're pushing is functioning
! properly, and that all local changes are committed correctly.
!
! For more information on builds for PHP on Heroku, refer to
! https://devcenter.heroku.com/articles/php-support
ERROR: failed to build: exit status 1
For documentation on the buildpacks used to build your app, please see:
Node.js v0.3.4 https://do.co/apps-buildpack-node
PHP v1.225.4 https://do.co/apps-buildpack-php
✘ build failed
Any clever ideas to get around this problem?
It would be great if we could set the license as env variable.
Thanks