Migration fails for latest update (mail/configure-dovecot)

Description

While trying to update to the latest version, apiscp fails the migration and sends me an email with the error

Steps to Reproduce

Update is trying to migrate and failing periodically

Actual Behavior

I get this at the end of the log:

Migrations have not completed yet. Update cannot proceed!
Run the following command to apply migrations, correcting failure as necessary:

cd /usr/local/apnscp && ./artisan migrate --force

To force an update to latest code, run the following command:

cd /usr/local/apnscp && upcp -f && ./artisan migrate --force

I ran cd /usr/local/apnscp && ./artisan migrate --force but same results. I haven’t run the second command.

Environment

ApisCP version:

revision: 972767348c16e11bd7231e3a055d8bfa69828bdf
timestamp: 1745515762
ver_maj: 3
ver_min: 2
ver_patch: 47
ver_pre: ''
dirty: false
debug: false

Operating System:

4.18.0-553.44.1.el8_10.x86_64

Additional Information

TASK [include_role : mail/configure-dovecot] ***********************************

TASK [mail/configure-dovecot : Install Dovecot RPMs] ***************************
fatal: [localhost]: FAILED! => changed=false
  failures:
  - 'dovecot*-apnscp All matches were filtered out by exclude filtering for argument: dovecot*-apnscp'
  msg: Failed to install some of the specified packages
  rc: 1
  results: []

PLAY RECAP *********************************************************************
localhost                  : ok=40   changed=1    unreachable=0    failed=1    skipped=18   rescued=0    ignored=0



STDERR:
[/usr/local/apnscp/lib/Lararia/Database/Migrations/PlatformMigrator.php:212]
         0. Lararia\Database\Migrations\PlatformMigrator->runMigration("2025_04_17_094912_update-mailbox-lookup", "up", [step:true])
            [/usr/local/apnscp/lib/Lararia/Database/Migrations/PlatformMigrator.php:129]
         1. Lararia\Database\Migrations\PlatformMigrator->runUp("/usr/local/apnscp/resources/playbooks/migrations/2025_04_17_094912_update-mailbox-lookup.yml", 21, false)
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:165]
         2. Illuminate\Database\Migrations\Migrator->runPending(["/usr/local/apnscp/resources/playbooks/migrations/2025_04_17_094912_update-mailbox-lookup.yml"], [pretend:false, step:0, rollback:false, ff:false])
            [/usr/local/apnscp/lib/Lararia/Database/Migrations/PlatformMigrator.php:93]
         3. Lararia\Database\Migrations\PlatformMigrator->runPending(["/usr/local/apnscp/resources/playbooks/migrations/2025_04_17_094912_update-mailbox-lookup.yml"], [pretend:false, step:0, rollback:false, ff:false])
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:110]
         4. Illuminate\Database\Migrations\Migrator->run(["/usr/local/apnscp/resources/playbooks/migrations"], [pretend:false, step:0, rollback:false, ff:false])
            [/usr/local/apnscp/lib/Lararia/Database/Migrations/PlatformMigrator.php:41]
         5. Lararia\Database\Migrations\PlatformMigrator->run(["/usr/local/apnscp/resources/playbooks/migrations"], [pretend:false, step:0, rollback:false, ff:false])
            [/usr/local/apnscp/lib/Lararia/Console/Commands/PlatformMigration.php:76]
         6. Lararia\Console\Commands\PlatformMigration->handle()
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:36]
         7. Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Container/Util.php:37]
         8. Illuminate\Container\Util::unwrapIfClosure()
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:93]
         9. Illuminate\Container\BoundMethod::callBoundMethod(Lararia\Application, [], [Lararia\Console\Commands\PlatformMigration, "handle"], )
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:37]
        10. Illuminate\Container\BoundMethod::call(Lararia\Application, [], [Lararia\Console\Commands\PlatformMigration, "handle"], null)
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Container/Container.php:596]
        11. Illuminate\Container\Container->call([Lararia\Console\Commands\PlatformMigration, "handle"])
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Console/Command.php:134]
        12. Illuminate\Console\Command->execute(Symfony\Component\Console\Input\ArrayInput, Illuminate\Console\OutputStyle)
            [/usr/local/apnscp/vendor/symfony/console/Command/Command.php:298]
        13. Symfony\Component\Console\Command\Command->run(Symfony\Component\Console\Input\ArrayInput, Illuminate\Console\OutputStyle)
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Console/Command.php:121]
        14. Illuminate\Console\Command->run(Symfony\Component\Console\Input\ArrayInput, Illuminate\Console\OutputStyle)
            [/usr/local/apnscp/vendor/symfony/console/Application.php:1040]
        15. Symfony\Component\Console\Application->doRunCommand(Lararia\Console\Commands\PlatformMigration, Symfony\Component\Console\Input\ArrayInput, Illuminate\Console\OutputStyle)
            [/usr/local/apnscp/vendor/symfony/console/Application.php:301]
        16. Symfony\Component\Console\Application->doRun(Symfony\Component\Console\Input\ArrayInput, Illuminate\Console\OutputStyle)
            [/usr/local/apnscp/vendor/symfony/console/Application.php:171]
        17. Symfony\Component\Console\Application->run(Symfony\Component\Console\Input\ArrayInput, Illuminate\Console\OutputStyle)
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Console/Application.php:93]
        18. Illuminate\Console\Application->run(Symfony\Component\Console\Input\ArrayInput, Illuminate\Console\OutputStyle)
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Console/Application.php:185]
        19. Illuminate\Console\Application->call("migrate:platform", [--force:true, --pretend:false], Illuminate\Console\OutputStyle)
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:263]
        20. Illuminate\Foundation\Console\Kernel->call("migrate:platform", [--force:true, --pretend:false], Illuminate\Console\OutputStyle)
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:261]
        21. Illuminate\Support\Facades\Facade::__callStatic("call", ["migrate:platform", [[--force:true, --pretend:false], Illuminate\Console\OutputStyle]])
            [/usr/local/apnscp/lib/Lararia/Console/Commands/Migrate.php:55]
        22. Lararia\Console\Commands\Migrate->handle()
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:36]
        23. Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Container/Util.php:37]
        24. Illuminate\Container\Util::unwrapIfClosure()
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:93]
        25. Illuminate\Container\BoundMethod::callBoundMethod(Lararia\Application, [], [Lararia\Console\Commands\Migrate, "handle"], )
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:37]
        26. Illuminate\Container\BoundMethod::call(Lararia\Application, [], [Lararia\Console\Commands\Migrate, "handle"], null)
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Container/Container.php:596]
        27. Illuminate\Container\Container->call([Lararia\Console\Commands\Migrate, "handle"])
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Console/Command.php:134]
        28. Illuminate\Console\Command->execute(Symfony\Component\Console\Input\ArgvInput, Illuminate\Console\OutputStyle)
            [/usr/local/apnscp/vendor/symfony/console/Command/Command.php:298]
        29. Symfony\Component\Console\Command\Command->run(Symfony\Component\Console\Input\ArgvInput, Illuminate\Console\OutputStyle)
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Console/Command.php:121]
        30. Illuminate\Console\Command->run(Symfony\Component\Console\Input\ArgvInput, Symfony\Component\Console\Output\ConsoleOutput)
            [/usr/local/apnscp/vendor/symfony/console/Application.php:1040]
        31. Symfony\Component\Console\Application->doRunCommand(Lararia\Console\Commands\Migrate, Symfony\Component\Console\Input\ArgvInput, Symfony\Component\Console\Output\ConsoleOutput)
            [/usr/local/apnscp/vendor/symfony/console/Application.php:301]
        32. Symfony\Component\Console\Application->doRun(Symfony\Component\Console\Input\ArgvInput, Symfony\Component\Console\Output\ConsoleOutput)
            [/usr/local/apnscp/vendor/symfony/console/Application.php:171]
        33. Symfony\Component\Console\Application->run(Symfony\Component\Console\Input\ArgvInput, Symfony\Component\Console\Output\ConsoleOutput)
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Console/Application.php:93]
        34. Illuminate\Console\Application->run(Symfony\Component\Console\Input\ArgvInput, Symfony\Component\Console\Output\ConsoleOutput)
            [/usr/local/apnscp/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:129]
        35. Illuminate\Foundation\Console\Kernel->handle(Symfony\Component\Console\Input\ArgvInput, Symfony\Component\Console\Output\ConsoleOutput)
            [/usr/local/apnscp/lib/Lararia/Console/Kernel.php:31]
        36. Lararia\Console\Kernel->handle(Symfony\Component\Console\Input\ArgvInput, Symfony\Component\Console\Output\ConsoleOutput)
            [/usr/local/apnscp/artisan:60]

License is signed with an expired intermediary (X1), so yum update cannot query any ApisCP repo. There’s a hotfix in place now to renew the license before applying migrations, which will run automatically otherwise you can perform this manually with:

/usr/local/apnscp/bin/scripts/license.php renew -f

This affects any lifetime license issued before October 31, 2024. There was a 1 in 10 lottery to renew on restart; not everyone won the lottery. :upside_down_face:

1 Like

Same issue here. Nothing works though…

tried: dnf --disablerepo=‘*’ --enablerepo=‘apnscp-testing’ list

Errors during downloading metadata for repository ‘apnscp-testing’:

tried dnf clean all:
[root@s1 apnscp]# yum update
ApisCP Packages for CentOS Linux 8 - x86_64 539 B/s | 521 B 00:00
Errors during downloading metadata for repository ‘apnscp’:

  • Status code: 402 for https://yum.apiscp.com/os/8/x86_64/repodata/repomd.xml (IP: 45.32.193.57)
    Error: Failed to download metadata for repo ‘apnscp’: Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
    ApisCP Package Updates for CentOS Linux 8 - x86_64 448 B/s | 521 B 00:01
    Errors during downloading metadata for repository ‘apnscp-updates’:
  • Status code: 402 for https://yum.apiscp.com/updates/8/x86_64/repodata/repomd.xml (IP: 45.32.193.57)
    Error: Failed to download metadata for repo ‘apnscp-updates’: Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried

tried: ```
/usr/local/apnscp/bin/scripts/license.php renew -f

[root@s1 apnscp]# /usr/local/apnscp/bin/scripts/license.php renew -f
ERROR  : Opcenter\License::reissue(): failed to fetch license: `Certificates may only be renewed within 10 days', will try again later
         0. Error_Reporter::add_error("failed to fetch license: `%s', will try again later", ["Certificates may only be renewed within 10 days"])
            [/usr/local/apnscp/lib/log_wrapper.php:72]
         1. error("failed to fetch license: `%s', will try again later", "Certificates may only be renewed within 10 days")
            [/usr/local/apnscp/lib/Opcenter/License.php:176]
         2. Opcenter\License->reissue(true)
            [/usr/local/apnscp/bin/scripts/license.php:180]
         3. app\renew()
            [/usr/local/apnscp/bin/scripts/license.php:71]


tried:  cd /usr/local/apnscp && upcp -f && ./artisan migrate --force

PM me the result of:

/usr/local/apnscp/bin/scripts/license.php info
clock

Smells like your system clock is off.