Skip to main content

Actualizando Kimai Timetracker

Kimai Timetracker

Es un buen software como timetracker, y aunque podría mejorar mucho lo estoy usando desde hace tiempo, y no puedo ponerme a hacerme uno a medida.

Pero, yo suelo tener mi máquina actualizada a la última versión de PHP, y eso en el software, ya sea OpenSource o Comercial, muchas veces no es lo mejor.

En este caso, Kimai no está preparado para usar la PHP 8.1

Actualización.

Como siempre importante tener un backup rápido de los ficheros y de mysql. (mysqldump y rsync a nuestro servicio)

rsync -avv --progress --delete-after . ~/backups/home
mysqludmp –opt -u <user> -p database_kmai > database_kimai.sql

Leer la documentación

Importante leer la documentación de upgrades ya que en el caso de este software deberemos ir paso a paso, tag a tag.

Error por PHP Version

Use the `composer fund` command to find out more!

Synchronizing package.json with PHP packages
Don't forget to run npm install --force or yarn install --force to refresh your JavaScript dependencies!
Run composer recipes at any time to see the status of your Symfony recipes.

Executing script cache:clear [KO]
 [KO]
Script cache:clear returned with error code 255
!!  PHP Warning:  include_once(/home/kimai/web/timetracker.midominio.tld/src/Command/CreateReleaseCommand.php): Failed to open stream: No such file or directory in /home/kimai/web/timetracker.midominio.tld/var/cache/prod/ContainerGZoxyYu/getCreateReleaseCommandService.php on line 10
!!  PHP Warning:  include_once(): Failed opening '/home/kimai/web/timetracker.midominio.tld/src/Command/CreateReleaseCommand.php' for inclusion (include_path='.:/usr/share/php') in /home/kimai/web/timetracker.midominio.tld/var/cache/prod/ContainerGZoxyYu/getCreateReleaseCommandService.php on line 10
!!  PHP Warning:  include_once(/home/kimai/web/timetracker.midominio.tld/src/Command/ResetCommand.php): Failed to open stream: No such file or directory in /home/kimai/web/timetracker.midominio.tld/var/cache/prod/ContainerGZoxyYu/getResetCommandService.php on line 10
!!  PHP Warning:  include_once(): Failed opening '/home/kimai/web/timetracker.midominio.tld/src/Command/ResetCommand.php' for inclusion (include_path='.:/usr/share/php') in /home/kimai/web/timetracker.midominio.tld/var/cache/prod/ContainerGZoxyYu/getResetCommandService.php on line 10

Ni que mirar más, problema de uso de un PHP que no está soportado por kimai.

Cambiar la versión de PHP para el usuario

¿Por qué tener usuarios independientes para nuestro host virtuales? Por estas cosas. Imagínate que ahora por ahorrar un poco tienes todo en la misma cuenta de usuario. Uf, que problemon.

Si tienes multiples versiones de PHP en tu sistema (que deberías) puedes usar este tip [Cambiar la version php para nuestro shell y composer](] https://wiki.castris.com/books/tips-para-programadores/page/cambiar-la-version-php-para-el-shell-composer)

Tras hacerlo solo deberás usar el alias creado para usar la versión deseada, (en este caso php74)

c74 update
. . . 
136 packages you are using are looking for funding.
Use the `composer fund` command to find out more!

What about running composer global require symfony/thanks && composer thanks now?
This will spread some   by sending a ★  to the GitHub repositories of your fellow package maintainers.

Run composer recipes at any time to see the status of your Symfony recipes.

Unpacking Symfony packs
 - Unpacked symfony/profiler-pack
Loading composer repositories with package information
Updating dependencies
Nothing to modify in lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 0 updates, 1 removal
 - Removing symfony/profiler-pack (v1.0.6)
Package doctrine/reflection is abandoned, you should avoid using it. Use roave/better-reflection instead.
Package symfony/inflector is abandoned, you should avoid using it. Use EnglishInflector from the String component instead.
Package zendframework/zend-escaper is abandoned, you should avoid using it. Use laminas/laminas-escaper instead.
Package fzaninotto/faker is abandoned, you should avoid using it. No replacement was suggested.
Package phpunit/php-token-stream is abandoned, you should avoid using it. No replacement was suggested.
Generating autoload files
composer/package-versions-deprecated: Generating version class...
composer/package-versions-deprecated: ...done generating version class
135 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
Failed to download recipe: The "https://flex.symfony.com/p/zendframework,zend-eventmanager,r3.2.0;zendframework,zend-code,r3.3.0;symfony,profiler-pack,rv1.0.3;symfony,ldap,rv4.2.8;php,r7.2.
9;ocramius,proxy-manager,r2.1.1;ocramius,package-versions,r1.2.0;composer,package-versions-deprecated,i1.11.99.5,1642428864;composer,pcre,i1.0.1,1642796677;symfony,polyfill-php81,iv1.25.0,1
631541491" file could not be downloaded (HTTP/2 410 )                                                                                                                                         

Run composer recipes at any time to see the status of your Symfony recipes.

Info from https://repo.packagist.org: #StandWithUkraine
Executing script cache:clear [OK]
Executing script assets:install [OK]

Después continuar con los pasos exigidos por Kimai para actualizar.

Aviso

Esta documentación y su contenido, no implica que funcione en tu caso o determinados casos. También implica que tienes conocimientos sobre lo que trata, y que en cualquier caso tienes copias de seguridad. El contenido el contenido se entrega, tal y como está, sin que ello implique ningún obligación ni responsabilidad por parte de Castris

Si necesitas soporte profesional puedes contratar con Castris soporte profesional.