@akash-chowdhury-24/deployhub 2.0.28 → 2.0.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@akash-chowdhury-24/deployhub",
3
- "version": "2.0.28",
3
+ "version": "2.0.29",
4
4
  "description": "Zero-configuration deployment and artifact manager",
5
5
  "type": "module",
6
6
  "main": "./src/cli/index.js",
@@ -471,20 +471,25 @@ function generateLaravelDockerfile(settings) {
471
471
  `--port=${port}`,
472
472
  ]);
473
473
 
474
+ // Vendor stage copies only composer.json/lock for layer caching. Laravel's
475
+ // post-autoload-dump runs `php artisan package:discover`, which needs the
476
+ // full app — so install with --no-scripts here, then dump-autoload after COPY.
474
477
  return `${GENERATED_HEADER}
475
478
  FROM composer:2 AS vendor
476
479
  WORKDIR /app
477
480
  COPY composer.json composer.lock* ./
478
- RUN composer install --no-dev --optimize-autoloader --no-interaction --ignore-platform-reqs
481
+ RUN composer install --no-dev --optimize-autoloader --no-interaction --ignore-platform-reqs --no-scripts
479
482
 
480
483
  FROM php:8.2-cli-alpine
481
484
  WORKDIR /var/www/html
485
+ COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
482
486
  RUN apk add --no-cache icu-libs libzip \\
483
487
  && apk add --no-cache --virtual .build-deps $PHPIZE_DEPS icu-dev libzip-dev oniguruma-dev \\
484
488
  && docker-php-ext-install -j$(nproc) pdo_mysql mbstring zip opcache \\
485
489
  && apk del .build-deps
486
490
  COPY --from=vendor /app/vendor ./vendor
487
491
  COPY . .
492
+ RUN composer dump-autoload --optimize --no-dev --no-interaction
488
493
  RUN chown -R www-data:www-data storage bootstrap/cache || true
489
494
  EXPOSE ${port}
490
495
  CMD ${cmd}
@@ -500,20 +505,24 @@ function generateSymfonyDockerfile(settings) {
500
505
  // Prefer a production reverse-proxy image if you outgrow this starter template.
501
506
  const cmd = JSON.stringify(['php', '-S', `0.0.0.0:${port}`, '-t', 'public']);
502
507
 
508
+ // Same as Laravel: vendor stage has no app source, so skip Composer scripts
509
+ // (Flex recipes / auto-scripts often need bin/console & the project tree).
503
510
  return `${GENERATED_HEADER}
504
511
  FROM composer:2 AS vendor
505
512
  WORKDIR /app
506
513
  COPY composer.json composer.lock* ./
507
- RUN composer install --no-dev --optimize-autoloader --no-interaction --ignore-platform-reqs
514
+ RUN composer install --no-dev --optimize-autoloader --no-interaction --ignore-platform-reqs --no-scripts
508
515
 
509
516
  FROM php:8.2-cli-alpine
510
517
  WORKDIR /var/www/html
518
+ COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
511
519
  RUN apk add --no-cache icu-libs libzip \\
512
520
  && apk add --no-cache --virtual .build-deps $PHPIZE_DEPS icu-dev libzip-dev oniguruma-dev \\
513
521
  && docker-php-ext-install -j$(nproc) pdo_mysql mbstring zip opcache \\
514
522
  && apk del .build-deps
515
523
  COPY --from=vendor /app/vendor ./vendor
516
524
  COPY . .
525
+ RUN composer dump-autoload --optimize --no-dev --no-interaction
517
526
  EXPOSE ${port}
518
527
  CMD ${cmd}
519
528
  `;