Magento – Magento2: Missing commands on build server

deploymentdockergruntmagento2magento2.2

I try to make a Magento2 Pipeline Deployment and running in a awkward error.

But first a few words to the deployment:
I use a docker container with installed php and nodejs.

  1. I copy in the container my magento application directory
  2. I execute composer install –no-dev –prefer-dist
  3. I execute php bin/magento setup:di:compile
  4. I execute npm install
  5. I execute grunt exec –myTheme

Step 5 is where the error occurs:

[Symfony\Component\Console\Exception\CommandNotFoundException] There are no commands defined in the "dev:source-theme" namespace. 

When entering the docker container at this state and running bin/magento list , There are only the following commands:

    Available commands:
  help                                     Displays help for a command
  list                                     Lists commands
 admin
  admin:user:create                        Creates an administrator
 app
  app:config:import                        Import data from shared configuration files to appropriate data storage
 i18n
  i18n:collect-phrases                     Discovers phrases in the codebase
  i18n:pack                                Saves language package
 info
  info:adminuri                            Displays the Magento Admin URI
  info:backups:list                        Prints list of available backup files
  info:currency:list                       Displays the list of available currencies
  info:dependencies:show-framework         Shows number of dependencies on Magento framework
  info:dependencies:show-modules           Shows number of dependencies between modules
  info:dependencies:show-modules-circular  Shows number of circular dependencies between modules
  info:language:list                       Displays the list of available language locales
  info:timezone:list                       Displays the list of available timezones
 maintenance
  maintenance:allow-ips                    Sets maintenance mode exempt IPs
  maintenance:disable                      Disables maintenance mode
  maintenance:enable                       Enables maintenance mode
  maintenance:status                       Displays maintenance mode status
 module
  module:disable                           Disables specified modules
  module:enable                            Enables specified modules
  module:status                            Displays status of modules
  module:uninstall                         Uninstalls modules installed by composer
 setup
  setup:backup                             Takes backup of Magento Application code base, media and database
  setup:config:set                         Creates or modifies the deployment configuration
  setup:cron:run                           Runs cron job scheduled for setup application
  setup:db-data:upgrade                    Installs and upgrades data in the DB
  setup:db-schema:upgrade                  Installs and upgrades the DB schema
  setup:db:status                          Checks if DB schema or data requires upgrade
  setup:di:compile                         Generates DI configuration and all missing classes that can be auto-generated
  setup:install                            Installs the Magento application
  setup:performance:generate-fixtures      Generates fixtures
  setup:rollback                           Rolls back Magento Application codebase, media and database
  setup:static-content:deploy              Deploys static view files
  setup:store-config:set                   Installs the store configuration. Deprecated since 2.2.0. Use config:set instead
  setup:uninstall                          Uninstalls the Magento application
  setup:upgrade                            Upgrades the Magento application, DB data, and schema

The dev:source-theme command is missing…

After reading a lot about the pipeline deployment I found that the problem is maybe that there is no db connection.
But I need to build the assets without db connection because I don't have a db connection in my Gitlab CI.

Is there anyone out there who can help me pls 🙁

Best Answer

It is because in step 2 you have installed magento using --no-dev param, it has skipped installing dev packages ( source );

--no-dev: Skip installing packages listed in require-dev. The autoloader generation skips the autoload-dev rules.

Related Topic