Não consigo criar usuários no GLPI 10 Beta – Como aplicar patches de correção no GLPI

O que é um patch?


Um patch é um grupo de mudanças (+/-) desenhadas para atualizar, corrigir, melhorar ou remover linhas no código fonte do GLPI.

Aqui está um exemplo do myPatch.patch

1 diff --git a/install/mysql/glpi-empty.sql b/install/mysql/glpi-empty.sql
2 index fc48b7c..1019375 100644
3 --- a/install/mysql/glpi-empty.sql
4 +++ b/install/mysql/glpi-empty.sql
5 @@ -3288,6 +3288,7 @@ CREATE TABLE `glpi_infocoms` (
6 `comment` text COLLATE utf8_unicode_ci,
7 `bill` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
8 `budgets_id` int(11) NOT NULL DEFAULT '0',
9 + `invoice_locations_id` int(11) NOT NULL DEFAULT '0',
10 - `alert` int(11) NOT NULL DEFAULT '0',
11 `order_date` date DEFAULT NULL,
12 `delivery_date` date DEFAULT NULL,

O + informa que foi adicionado código

O – informa que houve remoção de código

Você tem um arquivo de patch


O suporte entrega um arquivo, a extensão pode ser patch ou diff

Exemplo: myPatch.patch

Vá para a seção de Aplicar patch

Você tem um número de commit


O suporte entrega um número de commit. exemplo: 09c18704f0bd74788d4dbb41f8b40ae21e682108

Primeiro, você precisa juntar as mudanças do commit:

Vá até https://github.com/glpi-project/glpi/commit/ + Número do Commit

https://github.com/glpi-project/glpi/commit/09c18704f0bd74788d4dbb41f8b40ae21e682108

Pull completo e discussão – fix pending reasons by orthagh · Pull Request #10151 · glpi-project/glpi (github.com)

Então, transforme o commit em patch adicionando .patch ao final da url

Assim:

https://github.com/glpi-project/glpi/commit/09c18704f0bd74788d4dbb41f8b40ae21e682108.patch

Copie e Cole em um arquivo de texto e nomeie ele para nome.patch (por exemplo)

Finalmente, vá até a seção Aplicar patch

Você tem um número de Pull (Pull Request)


O suporte entrega um número de commit. exemplo: 9497

Primeiro, você precisa juntar as mudanças do pull:

Vá até https://github.com/glpi-project/glpi/pull + Número do pull

https://github.com/glpi-project/glpi/pull/10151

Então, transforme o pull em patch adicionando .patch ao final da url

Fazendo assim

https://github.com/glpi-project/glpi/pull/10151.patch 

Copie e Cole em um arquivo de texto e nomeie ele para nome.patch (por exemplo)

Finalmente, vá até a seção Aplicar patch

Aplicar patch


Aplicando patch ao GLPI

Aplicando patch ao GLPI

Mova o arquivo criado anteriormente (.patch) para a pasta raíz do GLPI

Vá até a pasta raiz do GLPI

cd /var/www/html/glpi – #adapte ao caminho necessário

Aplicando patch a um plugin

Mova o arquivo criado anteriormente (.patch) para a pasta raiz do plugin.

Vá até a pasta raiz do GLPI

cd /var/www/html/glpi/plugins/xxxx/ - #adapte ao caminho necessário

Verificar se o recurso patch está instalado

Para saber se o aplicativo de patch está instalado, busque pela versão do patch instalado

patch -v

GNU patch 2.7.5
Copyright (C) 2003, 2009-2012 Free Software Foundation, Inc.
Copyright (C) 1988 Larry Wall

License GPLv3+: GNU GPL version 3 or later .
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Larry Wall and Paul Eggert

Se não estiver instalado você verá isso

command not found: patch

Instale com esse comando

apt-get install patch #Ubuntu / Debian
yum install patch #Cent OS / RHEL

Teste o patch antes de aplicá-lo

Antes de aplicar o patch, você deve testar com este comando e o parâmetro –dry-run

patch = comando
p1 = parâmetro que define a aplicação em qualquer arquivo referenciado no patch
–dry-run = não executará. Apenas testará (Ensaio)
myPatch.patch = nome do arquivo de patch que deseja executar

patch -p1 –dry-run < myPatch.patch

Teste foi um sucesso ✅

Em caso de sucesso você deve ver algo semelhante a isso

patching file inc/config.class.php

ou isso

patching file inc/config.class.php
Hunk #1 succeeded at 891 with fuzz 1 (offset 23 lines).
Hunk #2 succeeded at 1301 with fuzz 2 (offset 41 lines).


Agora você pode aplicar o patch:

patch -p1 < myPatch.patch

Parabéns, o patch foi aplicado e agora você consegue criar usuários na versão Beta do GLPI 10.


Publicado

em

,

por

Tags:

Comentários

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *