devpaulopaixao / mantis-bugcatcher
Laravel mantis bugtracker api integration
Requires
- guzzlehttp/guzzle: ^6.0
This package is auto-updated.
Last update: 2025-05-29 01:56:20 UTC
README
Integração com a API do Mantis BUG Tracker
Sobre o Mantis
MantisBT é um rastreador de problemas de código aberto que fornece um equilíbrio delicado entre simplicidade e poder. Os usuários podem começar em minutos e começar a gerenciar seus projetos enquanto colaboram com seus colegas de equipe e clientes de forma eficaz. Depois de começar a usar, você nunca mais vai voltar!
Por que o Mantis?
Gratuito e de código aberto, o MantisBT é uma ferramenta de gestão de projetos e rastreamento de erros que dá às equipes de desenvolvimento a flexibilidade de personalizar tíquetes de problemas e processos de fluxo de trabalho.
Requisitos
- "guzzlehttp/guzzle": "^7.3"
Instalação
Instale o Composer caso você não o tenha.
composer require devpaulopaixao/mantis-bugcatcher
Ou, em seu 'composer.json' adicione:
{ "require": { "devpaulopaixao/laravel-tools": "dev-main" } }
Em seguida, execute o comando de instalação do gerenciador de pacotes:
composer install
Depois, adicione a seguinte linha ao seu 'config/app.php' em 'providers':
Devpaulopaixao\MantisBugcatcher\MantisServiceProvider::class,
Com isso, o pacote está pronto para ser utilizado.
Variáveis de ambiente
Adicione ao seu arquivo '.env' as variáveis de ambiente que possibilitarão a comunicação com o servidor onde está localizado o sistema de monitoramento do Mantis:
MANTIS_URL="URL DO SERVIDOR"
MANTIS_SECRET="CHAVE DE ACESSO AO MANTIS"
MANTIS_PROJECT_ID="ID DO RESPECTIVO PROJETO"
MANTIS_PROJECT_NAME="NOME DO RESPECTIVO PROJETO"
MANTIS_TIMEOUT="LIMITE PARA EXPIRAR CONEXÃO COM O SERVIDOR(OPCIONAL)"
Endpoints de API
-
/** * Create an issue minimal * * @access public * @param array $data [ * * Array contendo os parâmetros necessários para executar a funcionalidade. * * @param string $summary * @param string $description * @param array $category[ * @param string $name * ] * * ] * @return Object */ MantisBugcatcher::createAnIssueMinimal([ 'summary' => '', 'description' => '', 'category' => [ 'name' => '' ] ]);
Esta função retorna um objeto com as seguintes propriedades em caso de sucesso ou erro:
return (object)[ "status" => 'success', "data" => json_decode($response->getBody()->getContents()) ];
return (object)[ "status" => 'error', "code" => $response->getStatusCode() != null ? $response->getStatusCode() : 000, "message" => $e->getMessage(), ];
-
/** * Create an issue minimal * * @access public * @param array $data [ * * Array contendo os parâmetros necessários para registrar a issue completa. * * @param string $summary * @param string $description * @param string $additional_information (optional) * @param array $project[ * @param integer $id * @param string $name * ] * @param array|integer $category[ * @param integer $id * @param string $name * ] * @param array $handler[ * @param string $name * ] * @param array|integer $view_state[ * @param integer $id * @param string $name * ] * @param array $priority[ * @param string $name * ] * @param array $severity[ * @param string $name * ] * @param array $reproducibility[ * @param string $name * ] * @param bool $sticky (optional) false * @param array $custom_fields (optional)[ * @param array $field[ * @param integer $id * @param string $name * ] * @param string $value * ] * @param array $tags (optional)[ * @param string $name * ] * * ] * @return Object */ MantisBugcatcher::createAnIssue([ 'summary' => '', 'description' => '', 'additional_information' => '', 'category' => [ 'id' => '' 'name' => '' ], 'handler' => [ 'name' => '' ], 'view_state' => [ 'id' => '' 'name' => '' ], 'priority' => [ 'name' => '' ], 'severity' => [ 'name' => '' ], 'reproducibility' => [ 'name' => '' ], 'sticky' => '', 'custom_fields' => [], 'tags'=> [], ]);
Esta função retorna um objeto com os mesmos parâmetros especificados no primeiro exemplo.
Licença
MIT