Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error when setting up active extensions #925

Closed
instruccionesaldorso opened this issue Jul 5, 2020 · 15 comments · Fixed by #927
Closed

Error when setting up active extensions #925

instruccionesaldorso opened this issue Jul 5, 2020 · 15 comments · Fixed by #927

Comments

@instruccionesaldorso
Copy link

I got a composer-based v10.4 instance, where I use typo3-console/composer-auto-commands (0.4.2) composer package.
In a TYPO3.Surf deployment, I receive this error:

TYPO3 Console command executed

"cd '/home/website/releases/20200705210625' && TYPO3_CONTEXT='Production/Production' /usr/local/php74/bin/php-cli 'vendor/bin/typo3cms' 'extension:setupactive'"
    > 
    > [ Doctrine\DBAL\Exception\TableNotFoundException ]                              An exception occurred while executing 'SELECT `content` FROM `cf_cache_hash     ` WHERE (`identifier` = ?) AND (`expires` >= ?)' with params ["ad69c5707546     5c346b6c930cf452d67e", 1593975998]:                                                                                                                             Table 'dbwedyr6a532xn.cf_cache_hash' doesn't exist                                                                                                             Caused by:                                                          [ Doctrine\DBAL\Driver\Mysqli\MysqliException ]        Table 'database.cf_cache_hash' doesn't exist                                                           extension:setupactive
Got exception "Command returned non-zero return code: 1" but rollback disabled. Stopping.

Environment

  • TYPO3 Console version(s): [e.g. 4.9.3, 5.2.0]
  • TYPO3 version(s): 6.3.2
  • PHP version(s): 7.4.5
  • Is your TYPO3 installation set up with Composer (Composer Mode): yes
  • OS: UNIX (ddev)

Is this caused by typo3-console/composer-auto-commands package or helhum/typo3-console?

@helhum
Copy link
Member

helhum commented Jul 6, 2020

Thanks for your report.
Can you please post the full exception trace of this command?

cd '/home/website/releases/20200705210625' && TYPO3_CONTEXT='Production/Production' /usr/local/php74/bin/php-cli 'vendor/bin/typo3cms' 'extension:setupactive' -vvv

Thanks.

@instruccionesaldorso
Copy link
Author

instruccionesaldorso commented Jul 7, 2020


  [ Doctrine\DBAL\Exception\TableNotFoundException ]
  An exception occurred while executing 'SELECT `content` FROM `cf_cache_hash` WHERE (`identifier` = ?) AND (`exp
  ires` >= ?)' with params ["ad69c57075465c346b6c930cf452d67e", 1594115386]:

  Table 'database.cf_cache_hash' doesn't exist


Exception trace:
#0 ()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php:42
#1 Doctrine\DBAL\Driver\AbstractMySQLDriver->convertException()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php:169
#2 Doctrine\DBAL\DBALException::wrapException()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php:149
#3 Doctrine\DBAL\DBALException::driverExceptionDuringQuery()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:914
#4 Doctrine\DBAL\Connection->executeQuery()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Query/QueryBuilder.php:206
#5 Doctrine\DBAL\Query\QueryBuilder->execute()
   typo3/sysext/core/Classes/Database/Query/QueryBuilder.php:191
#6 TYPO3\CMS\Core\Database\Query\QueryBuilder->execute()
   typo3/sysext/core/Classes/Cache/Backend/Typo3DatabaseBackend.php:150
#7 TYPO3\CMS\Core\Cache\Backend\Typo3DatabaseBackend->get()
   typo3/sysext/core/Classes/Cache/Frontend/VariableFrontend.php:80
#8 TYPO3\CMS\Core\Cache\Frontend\VariableFrontend->get()
   typo3/sysext/backend/Classes/Configuration/TsConfigParser.php:59
#9 TYPO3\CMS\Backend\Configuration\TsConfigParser->parseTSconfig()
   typo3/sysext/core/Classes/Authentication/BackendUserAuthentication.php:1469
#10 TYPO3\CMS\Core\Authentication\BackendUserAuthentication->fetchGroupData()
   typo3/sysext/core/Classes/Authentication/CommandLineUserAuthentication.php:98
#11 TYPO3\CMS\Core\Authentication\CommandLineUserAuthentication->authenticate()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Scripts.php:156
#12 Helhum\Typo3Console\Core\Booting\Scripts::loadCommandLineBackendUser()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Scripts.php:139
#13 Helhum\Typo3Console\Core\Booting\Scripts::initializeAuthenticatedOperations()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Step.php:54
#14 Helhum\Typo3Console\Core\Booting\Step->__invoke()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Sequence.php:112
#15 Helhum\Typo3Console\Core\Booting\Sequence->invokeStep()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Sequence.php:118
#16 Helhum\Typo3Console\Core\Booting\Sequence->invokeStep()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Sequence.php:94
#17 Helhum\Typo3Console\Core\Booting\Sequence->invoke()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/RunLevel.php:97
#18 Helhum\Typo3Console\Core\Booting\RunLevel->runSequenceForCommand()
   vendor/helhum/typo3-console/Classes/Console/Core/Kernel.php:135
#19 Helhum\Typo3Console\Core\Kernel->handle()
   vendor/helhum/typo3-console/Scripts/typo3-console.php:30
#20 {closure}()
   vendor/helhum/typo3-console/Scripts/typo3-console.php:32
#21 require()
   vendor/helhum/typo3-console/typo3cms:3

Caused by:

  [ Doctrine\DBAL\Driver\Mysqli\MysqliException ]
  Table 'dbwedyr6a532xn.cf_cache_hash' doesn't exist


Exception trace:
#0 ()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/Mysqli/MysqliStatement.php:86
#1 Doctrine\DBAL\Driver\Mysqli\MysqliStatement->__construct()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/Mysqli/MysqliConnection.php:131
#2 Doctrine\DBAL\Driver\Mysqli\MysqliConnection->prepare()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:903
#3 Doctrine\DBAL\Connection->executeQuery()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Query/QueryBuilder.php:206
#4 Doctrine\DBAL\Query\QueryBuilder->execute()
   typo3/sysext/core/Classes/Database/Query/QueryBuilder.php:191
#5 TYPO3\CMS\Core\Database\Query\QueryBuilder->execute()
   typo3/sysext/core/Classes/Cache/Backend/Typo3DatabaseBackend.php:150
#6 TYPO3\CMS\Core\Cache\Backend\Typo3DatabaseBackend->get()
   typo3/sysext/core/Classes/Cache/Frontend/VariableFrontend.php:80
#7 TYPO3\CMS\Core\Cache\Frontend\VariableFrontend->get()
   typo3/sysext/backend/Classes/Configuration/TsConfigParser.php:59
#8 TYPO3\CMS\Backend\Configuration\TsConfigParser->parseTSconfig()
   typo3/sysext/core/Classes/Authentication/BackendUserAuthentication.php:1469
#9 TYPO3\CMS\Core\Authentication\BackendUserAuthentication->fetchGroupData()
   typo3/sysext/core/Classes/Authentication/CommandLineUserAuthentication.php:98
#10 TYPO3\CMS\Core\Authentication\CommandLineUserAuthentication->authenticate()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Scripts.php:156
#11 Helhum\Typo3Console\Core\Booting\Scripts::loadCommandLineBackendUser()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Scripts.php:139
#12 Helhum\Typo3Console\Core\Booting\Scripts::initializeAuthenticatedOperations()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Step.php:54
#13 Helhum\Typo3Console\Core\Booting\Step->__invoke()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Sequence.php:112
#14 Helhum\Typo3Console\Core\Booting\Sequence->invokeStep()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Sequence.php:118
#15 Helhum\Typo3Console\Core\Booting\Sequence->invokeStep()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Sequence.php:94
#16 Helhum\Typo3Console\Core\Booting\Sequence->invoke()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/RunLevel.php:97
#17 Helhum\Typo3Console\Core\Booting\RunLevel->runSequenceForCommand()
   vendor/helhum/typo3-console/Classes/Console/Core/Kernel.php:135
#18 Helhum\Typo3Console\Core\Kernel->handle()
   vendor/helhum/typo3-console/Scripts/typo3-console.php:30
#19 {closure}()
   vendor/helhum/typo3-console/Scripts/typo3-console.php:32
#20 require()
   vendor/helhum/typo3-console/typo3cms:3

extension:setupactive

@helhum
Copy link
Member

helhum commented Jul 7, 2020

Hm, OK, thanks. is database:updateschema executed before extension:setupactive in your deployment?
If not, this is mandatory, exactly to deal with such cases

@instruccionesaldorso
Copy link
Author

Even if our deployment log in Gitlab doesn't show this command is executed, database:updateschema is supposed to be executed BEFORE extension:setupactive silently, if we use typo3-console/composer-auto-commands, under stage package in TYPO3.Surf and task TYPO3\Surf\DefinedTask\Composer\LocalInstallTask.
Or am I wrong?

However, if I execute the command, I receive the next error:

cd '/home/website/releases/20200707114824' && TYPO3_CONTEXT='Production/Production' /usr/local/php74/bin/php-cli 'vendor/bin/typo3cms' 'database:updateschema' -vvv


  [ Doctrine\DBAL\Exception\InvalidFieldNameException ]
  An exception occurred while executing 'SELECT `pid`, `uid`, `t3ver_oid`, `t3ver_wsid`, `t3ver_state`, `title`, `alias`, `nav_title`, `media`, `layout`, `hidden`, `starttime`, `endtime`, `fe_group`, `extendToSubpages`, `dok
  type`, `TSconfig`, `tsconfig_includes`, `is_siteroot`, `mount_pid`, `mount_pid_ol`, `fe_login_mode`, `backend_layout_next_level`, `abstract`, `keywords`, `nav_hide`, `shortcut`, `shortcut_mode` FROM `pages` WHERE (`uid` =
  ?) AND (`pages`.`deleted` = 0)' with params [1]:

  Unknown column 'alias' in 'field list'


Exception trace:
#0 ()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php:60
#1 Doctrine\DBAL\Driver\AbstractMySQLDriver->convertException()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php:169
#2 Doctrine\DBAL\DBALException::wrapException()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php:149
#3 Doctrine\DBAL\DBALException::driverExceptionDuringQuery()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:914
#4 Doctrine\DBAL\Connection->executeQuery()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Query/QueryBuilder.php:206
#5 Doctrine\DBAL\Query\QueryBuilder->execute()
   typo3/sysext/core/Classes/Database/Query/QueryBuilder.php:191
#6 TYPO3\CMS\Core\Database\Query\QueryBuilder->execute()
   typo3/sysext/core/Classes/Utility/RootlineUtility.php:259
#7 TYPO3\CMS\Core\Utility\RootlineUtility->getRecordArray()
   typo3/sysext/core/Classes/Utility/RootlineUtility.php:396
#8 TYPO3\CMS\Core\Utility\RootlineUtility->generateRootlineCache()
   typo3/sysext/core/Classes/Utility/RootlineUtility.php:217
#9 TYPO3\CMS\Core\Utility\RootlineUtility->get()
   typo3/sysext/extbase/Classes/Configuration/BackendConfigurationManager.php:66
#10 TYPO3\CMS\Extbase\Configuration\BackendConfigurationManager->getTypoScriptSetup()
   typo3/sysext/extbase/Classes/Configuration/AbstractConfigurationManager.php:215
#11 TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager->getExtbaseConfiguration()
   typo3/sysext/extbase/Classes/Configuration/AbstractConfigurationManager.php:151
#12 TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager->getConfiguration()
   typo3/sysext/extbase/Classes/Configuration/ConfigurationManager.php:124
#13 TYPO3\CMS\Extbase\Configuration\ConfigurationManager->getConfiguration()
   typo3conf/ext/yoast_seo/Classes/Utility/YoastUtility.php:198
#14 YoastSeoForTypo3\YoastSeo\Utility\YoastUtility::getTypoScriptConfiguration()
   typo3conf/ext/yoast_seo/Classes/Utility/YoastUtility.php:42
#15 YoastSeoForTypo3\YoastSeo\Utility\YoastUtility::getAllowedDoktypes()
   typo3conf/ext/yoast_seo/Configuration/TCA/Overrides/pages.php:163
#16 require()
   typo3/sysext/core/Classes/Utility/ExtensionManagementUtility.php:1717
#17 TYPO3\CMS\Core\Utility\ExtensionManagementUtility::buildBaseTcaFromSingleFiles()
   typo3/sysext/core/Classes/Utility/ExtensionManagementUtility.php:1667
#18 TYPO3\CMS\Core\Utility\ExtensionManagementUtility::loadBaseTca()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Scripts.php:129
#19 Helhum\Typo3Console\Core\Booting\Scripts::initializePersistence()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Step.php:54
#20 Helhum\Typo3Console\Core\Booting\Step->__invoke()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Sequence.php:112
#21 Helhum\Typo3Console\Core\Booting\Sequence->invokeStep()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Sequence.php:118
#22 Helhum\Typo3Console\Core\Booting\Sequence->invokeStep()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Sequence.php:94
#23 Helhum\Typo3Console\Core\Booting\Sequence->invoke()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/RunLevel.php:97
#24 Helhum\Typo3Console\Core\Booting\RunLevel->runSequenceForCommand()
   vendor/helhum/typo3-console/Classes/Console/Core/Kernel.php:135
#25 Helhum\Typo3Console\Core\Kernel->handle()
   vendor/helhum/typo3-console/Scripts/typo3-console.php:30
#26 {closure}()
   vendor/helhum/typo3-console/Scripts/typo3-console.php:32
#27 require()
   vendor/helhum/typo3-console/typo3cms:3

Caused by:

  [ Doctrine\DBAL\Driver\Mysqli\MysqliException ]
  Unknown column 'alias' in 'field list'


Exception trace:
#0 ()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/Mysqli/MysqliStatement.php:86
#1 Doctrine\DBAL\Driver\Mysqli\MysqliStatement->__construct()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/Mysqli/MysqliConnection.php:131
#2 Doctrine\DBAL\Driver\Mysqli\MysqliConnection->prepare()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:903
#3 Doctrine\DBAL\Connection->executeQuery()
   vendor/doctrine/dbal/lib/Doctrine/DBAL/Query/QueryBuilder.php:206
#4 Doctrine\DBAL\Query\QueryBuilder->execute()
   typo3/sysext/core/Classes/Database/Query/QueryBuilder.php:191
#5 TYPO3\CMS\Core\Database\Query\QueryBuilder->execute()
   typo3/sysext/core/Classes/Utility/RootlineUtility.php:259
#6 TYPO3\CMS\Core\Utility\RootlineUtility->getRecordArray()
   typo3/sysext/core/Classes/Utility/RootlineUtility.php:396
#7 TYPO3\CMS\Core\Utility\RootlineUtility->generateRootlineCache()
   typo3/sysext/core/Classes/Utility/RootlineUtility.php:217
#8 TYPO3\CMS\Core\Utility\RootlineUtility->get()
   typo3/sysext/extbase/Classes/Configuration/BackendConfigurationManager.php:66
#9 TYPO3\CMS\Extbase\Configuration\BackendConfigurationManager->getTypoScriptSetup()
   typo3/sysext/extbase/Classes/Configuration/AbstractConfigurationManager.php:215
#10 TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager->getExtbaseConfiguration()
   typo3/sysext/extbase/Classes/Configuration/AbstractConfigurationManager.php:151
#11 TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager->getConfiguration()
   typo3/sysext/extbase/Classes/Configuration/ConfigurationManager.php:124
#12 TYPO3\CMS\Extbase\Configuration\ConfigurationManager->getConfiguration()
   typo3conf/ext/yoast_seo/Classes/Utility/YoastUtility.php:198
#13 YoastSeoForTypo3\YoastSeo\Utility\YoastUtility::getTypoScriptConfiguration()
   typo3conf/ext/yoast_seo/Classes/Utility/YoastUtility.php:42
#14 YoastSeoForTypo3\YoastSeo\Utility\YoastUtility::getAllowedDoktypes()
   typo3conf/ext/yoast_seo/Configuration/TCA/Overrides/pages.php:163
#15 require()
   typo3/sysext/core/Classes/Utility/ExtensionManagementUtility.php:1717
#16 TYPO3\CMS\Core\Utility\ExtensionManagementUtility::buildBaseTcaFromSingleFiles()
   typo3/sysext/core/Classes/Utility/ExtensionManagementUtility.php:1667
#17 TYPO3\CMS\Core\Utility\ExtensionManagementUtility::loadBaseTca()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Scripts.php:129
#18 Helhum\Typo3Console\Core\Booting\Scripts::initializePersistence()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Step.php:54
#19 Helhum\Typo3Console\Core\Booting\Step->__invoke()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Sequence.php:112
#20 Helhum\Typo3Console\Core\Booting\Sequence->invokeStep()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Sequence.php:118
#21 Helhum\Typo3Console\Core\Booting\Sequence->invokeStep()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/Sequence.php:94
#22 Helhum\Typo3Console\Core\Booting\Sequence->invoke()
   vendor/helhum/typo3-console/Classes/Console/Core/Booting/RunLevel.php:97
#23 Helhum\Typo3Console\Core\Booting\RunLevel->runSequenceForCommand()
   vendor/helhum/typo3-console/Classes/Console/Core/Kernel.php:135
#24 Helhum\Typo3Console\Core\Kernel->handle()
   vendor/helhum/typo3-console/Scripts/typo3-console.php:30
#25 {closure}()
   vendor/helhum/typo3-console/Scripts/typo3-console.php:32
#26 require()
   vendor/helhum/typo3-console/typo3cms:3

database:updateschema [--dry-run] [--] [<schemaUpdateTypes>]

@helhum
Copy link
Member

helhum commented Jul 7, 2020

database:updateschema is supposed to be executed BEFORE extension:setupactive silently, if we use typo3-console/composer-auto-commands, under stage package in TYPO3.Surf and task TYPO3\Surf\DefinedTask\Composer\LocalInstallTask.

Well, packaging isn't done on the target server, therefore there is no database:updateschema done on the target server either. You need to add this task to cover such case.

However, if I execute the command, I receive the next error

That can't be fixed by TYPO3 Console. The extension yoast_seo accesses the database when building TCA, however TCA is required to be loaded to generate the DB schema. This chicken/egg issue cannot be tackled. yoast_seo needs to be changed to not require DB access for providing TCA.

The only way you can solve this is to deploy to the target system without this extension once (to prepare the basic DB structure) and then deploy again with this extension.

@helhum
Copy link
Member

helhum commented Jul 7, 2020

This issue in yoast_seo should have been fixed in Yoast/Yoast-SEO-for-TYPO3@9552c0a

Do you have an up to date version? If so, you may consider reporting that back.

@helhum
Copy link
Member

helhum commented Jul 7, 2020

Created a ticket myself now: Yoast/Yoast-SEO-for-TYPO3#350

@instruccionesaldorso
Copy link
Author

I have version 6.0.1 installed, which should be covered by the bugfix they applied.
However, I uninstalled locally the extension, but when deploying, I face the same issue. It's like EXT:yoast_seo is still present when I run command database:updateschema.
I guess I'll wait for the issue to be checked.
Thanks for reporting it there!

@t3easy
Copy link
Contributor

t3easy commented Jul 8, 2020

Hi @helhum :)
Just to clearify, you suggest to run database:updateschema before extension:setupactive?
I thought, extension:setupactive does that already

$this->schemaService->updateSchema(SchemaUpdateType::expandSchemaUpdateTypes(['safe']));

$result = $schemaService->updateSchema($expandedSchemaUpdateTypes, $dryRun);

Both run safe updates or am I wrong?

@helhum
Copy link
Member

helhum commented Jul 8, 2020

@t3easy
Yes, it is included, however database:updateschema runs in a different (low level) context:

'runLevel' => \Helhum\Typo3Console\Core\Booting\RunLevel::LEVEL_MINIMAL,

whereas extension:setupactive fully boots before doing anything. If booting already leads to an error(due to accessing a table or field that does not exist, the code to update the schema won't be executed

@t3easy
Copy link
Contributor

t3easy commented Jul 8, 2020

OK, thanks for clarifying!
Maybe we should add database:updateschema as Task in Surf before extension:setupactive then.

@helhum
Copy link
Member

helhum commented Jul 8, 2020

The main differences between these two commands are, that extension:setupactive needs the backend user table to exist and the database caches tables need to exist.

@instruccionesaldorso
Copy link
Author

@helhum @t3easy After/before which task in TYPO3.Surf would you add that database:updateschema Task?

Stages:

TYPO3 SURF

1) initialize
TYPO3\Surf\Task\CreateDirectoriesTask
TYPO3\Surf\Task\Generic\CreateDirectoriesTask

2) lock
TYPO3\Surf\Task\LockDeploymentTask

3) package
TYPO3\Surf\Task\Package\GitTask
TYPO3\Surf\DefinedTask\Composer\LocalInstallTask

4) transfer
TYPO3\Surf\Task\Transfer\RsyncTask
TYPO3\Surf\Task\Generic\CreateSymlinksTask

5) update
TYPO3\Surf\Task\TYPO3\CMS\SymlinkDataTask
TYPO3\Surf\Task\TYPO3\CMS\CopyConfigurationTask (removed)

6) migrate
TYPO3\Surf\Task\TYPO3\CMS\SetUpExtensionsTask

7) finalize

8) test

9) switch
TYPO3\Surf\Task\SymlinkReleaseTask
TYPO3\Surf\Task\TYPO3\CMS\FlushCachesTask

10) cleanup
TYPO3\Surf\Task\CleanupReleasesTask

11) unlock
TYPO3\Surf\Task\UnlockDeploymentTask

@t3easy
Copy link
Contributor

t3easy commented Jul 9, 2020

Just before extension:setupactive

@helhum
Copy link
Member

helhum commented Jul 17, 2020

I just checked again. I cannot do much about this, because the extension setup process needs a backend user for import of data functionality via DataHandler.

What I did now, though is extend the install:extensionsetupifpossible command to optionally fail,
so that this single command can be used for deploymnent scripts.

helhum added a commit to helhum/TYPO3-Console that referenced this issue Jul 17, 2020
This command is a wrapper to execute:

database:updateschema
cache:flush
extension:setupactive

Initially this was meant to be used in Composer scripts to
not interfere Composer install on build systems, but at the same
time perform necessary steps in dev systems.

It was, until now, not suitable for deployment scenarios though,
because during a deployment it is important that the command fails
when something goes wrong to avoid a broken state after a deployment.

The added option makes it now suitable for deployments, too.

Fixes: TYPO3-Console#925
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants