Versão desenvolvimento 2.0

rogeriolinorogeriolino Big Time
edited August 2017 in Desenvolvimento
Para quem quiser ir testando a nova versão 2.0 (ainda em fase de desenvolvimento) pode seguir o passo-a-passo abaixo.

Instalar projeto via Composer:

> composer create-project "novosga/novosga:v2.0.x-dev"


Após download das dependências irá solicitar informações referentes à conexão com banco de dados (que já deve estar criado previamente).

Entrar no diretório do projeto:

> cd novosga


Executar comando para criar as tabelas:

> bin/console doctrine:schema:create


Executar comando para adicionar dados para teste:

> bin/console doctrine:fixtures:load


Serão criados 2 usuários, um administrador (admin) e outro gestor da unidade (rogerio). O usuário administrador só tem acesso aos cadastros básicos do sistema (locais, prioridades, cargos, serviços). Ambos usuários possuem a mesma senha: 123456.


Por fim rodar o servidor embutido do PHP para testar a aplicação:

> bin/console server:run


Ao executar com sucesso basta acessar pelo navegador o endereço: http://127.0.0.1:8000


**OBS:** Favor não publicar dúvidas sobre instalação, esse tópico é destinado à desenvolvedores.
**OBS2:** Por enquanto não é possível utilizar o painel-web e a triagem-touch.


Att.
Tagged:
«1

Comments

  • pastteurpastteur Entry Level
    Será que consegue me dar uma luz? Eu coloco as informações do banco de dados, no próximo passo da um erro:
    "Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache handling the symfony-scripts event terminated with an exception"
    " [RuntimeException]
    An error occurred when executing the "'cache:clear --no-warmup'" command:
    PHP Parse error: syntax error, unexpected '.', expecting ',' or ';' in /tm
    p/novosga/src/AppBundle/Service/ModuleService.php on line 20"

    O que pode ser?
  • @pastteur qual é a sua versão do PHP?

    > php --version

  • Oops!
    [Doctrine\DBAL\Exception\DriverException]
    An exception occured in driver: SQLSTATE[HY000] [2003] Can't connect to MyS
    QL server on '127.0.0.1' (111)

    Coloco as informações do banco, mas estou usando Postgresql.
  • christopherchristopher Entry Level
    Ao tentar instalar acontece a seguinte mensagem.

    >novosga@novosga:/var/www$ composer create-project "novosga/novosga:v2.0.x-dev"
    Installing novosga/novosga (v2.0.x-dev e1415fcd1e13053f416e76ce22e63dfd4f298531)
    - Installing novosga/novosga (v2.0.x-dev e1415fc) Cloning e1415fcd1e
    Failed to download novosga/novosga from source: Failed to clone https://github.com/novosga/novosga.git, git was not found, check that it is installed and in your PATH env.

    sh: 1: git: not found

    Now trying to download from dist
    - Installing novosga/novosga (v2.0.x-dev e1415fc) Downloading: 100%
    Created project in /var/www/novosga
    Loading composer repositories with package information
    Updating dependencies (including require-dev)
    Package operations: 55 installs, 0 updates, 0 removals
    - Installing novosga/composer-installer-plugin (v1.0) Downloading: Connecting. Downloading: 100%The following exception is caused by a lack of memory or swap, or not having swap configured
    Check https://getcomposer.org/doc/articles/troubleshooting.md#proc-open-fork-failed-errors for details

    PHP Warning: proc_open(): fork failed - Cannot allocate memory in phar:///usr/local/bin/composer/vendor/symfony/console/Application.php on line 973

    Warning: proc_open(): fork failed - Cannot allocate memory in phar:///usr/local/bin/composer/vendor/symfony/console/Application.php on line 973

    [ErrorException]
    proc_open(): fork failed - Cannot allocate memory


    create-project [-s|--stability STABILITY] [--prefer-source] [--prefer-dist] [--repository REPOSITORY] [--repository-url REPOSITORY-URL] [--dev] [--no-dev] [--no-custom-installers] [--no-scripts] [--no-progress] [--no-secure-http] [--keep-vcs] [--no-install] [--ignore-platform-reqs] [--] [] [] []

    >novosga@novosga:/var/www$ dir
    html novosga
  • rogeriolinorogeriolino Big Time
    edited March 2017
    @fielcomunista

    Para usar o postgresql é preciso alterar a configuração do driver de banco, no arquivo app/config/config.yml

    doctrine:
    dbal:
    driver: pdo_mysql
    Trocar pdo_mysql por pdo_pgsql


    @christopher Você precisa ter o git instalado na sua máquina.
  • Obrigado, @rogeriolino!
  • higorribeirohigorribeiro Entry Level
    @rogeriolino so consegui acessar via usuario admin
    o gestor qual é o usuario, não localizei no banco
  • higorribeirohigorribeiro Entry Level
    edited April 2017
    resolvi aqui.
    Como faço para ir contribuindo com as melhorias e ou alertando de inconsistência e ou bugs?
  • Carla_cpbcCarla_cpbc Entry Level
    Oi @rogeriolino ,
    Quero parabenizá-lo pelo grande trabalho que você fez com esse projeto. Tentei versão 1.5.1 e parece fantástico !!!.
    Gostaria de tentar a versão 2.0, mas não sei em que ponto é, se é preciso muito para terminar. Você está totalmente funcional ou está faltando módulos essenciais?
    Oh, e eu perdoe a minha portugese, eu estou usando um tradutor ...
  • @Carla_cpbc obrigado!

    Ainda não está 100%. Tem ajustes a serem feitos. Quando estiver funcional, avisarei aqui.

    Att.
  • higorribeirohigorribeiro Entry Level
    edited July 2017
    @rogeriolino esta apresentando erro ao enviar comando para criar tabelas.
    Erro informado refere-se a linha de cadastro do endereço do servidor de mail. ja tentei com ele e colocando entre aspas simples.

    #php bin/console doctrine:schema:create
    PHP Fatal error: Uncaught Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException: You have requested a non-existent service "". in C:\xampp\htdocs\sca\vendor\symfony\symfony\src\Symfony\Component\DependencyInjection\ContainerBuilder.php:800
    Stack trace:
    #0 C:\xampp\htdocs\sca\vendor\symfony\symfony\src\Symfony\Component\DependencyInjection\Compiler\ReplaceAliasByActualDefinitionPass.php(61): Symfony\Component\DependencyInjection\ContainerBuilder->getDefinition('')
    #1 C:\xampp\htdocs\sca\vendor\symfony\symfony\src\Symfony\Component\DependencyInjection\Compiler\Compiler.php(120): Symfony\Component\DependencyInjection\Compiler\ReplaceAliasByActualDefinitionPass->process(Object(Symfony\Component\DependencyInjection\ContainerBuilder))
    #2 C:\xampp\htdocs\sca\vendor\symfony\symfony\src\Symfony\Component\DependencyInjection\ContainerBuilder.php(573): Symfony\Component\DependencyInjection\Compiler\Compiler->compile(Object(Symfony\Component\DependencyInjection\ContainerBuilder))
    #3 C:\xampp\htdocs\sca\vendor\symfony\s in C:\xampp\htdocs\sca\vendor\symfony\symfony\src\Symfony\Component\DependencyInjection\Compiler\ReplaceAliasByActualDefinitionPass.php on line 63

    Fatal error: Uncaught Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException: You have requested a non-existent service "". in C:\xampp\htdocs\sca\vendor\symfony\symfony\src\Symfony\Component\DependencyInjection\ContainerBuilder.php:800
    Stack trace:
    #0 C:\xampp\htdocs\sca\vendor\symfony\symfony\src\Symfony\Component\DependencyInjection\Compiler\ReplaceAliasByActualDefinitionPass.php(61): Symfony\Component\DependencyInjection\ContainerBuilder->getDefinition('')
    #1 C:\xampp\htdocs\sca\vendor\symfony\symfony\src\Symfony\Component\DependencyInjection\Compiler\Compiler.php(120): Symfony\Component\DependencyInjection\Compiler\ReplaceAliasByActualDefinitionPass->process(Object(Symfony\Component\DependencyInjection\ContainerBuilder))
    #2 C:\xampp\htdocs\sca\vendor\symfony\symfony\src\Symfony\Component\DependencyInjection\ContainerBuilder.php(573): Symfony\Component\DependencyInjection\Compiler\Compiler->compile(Object(Symfony\Component\DependencyInjection\ContainerBuilder))
    #3 C:\xampp\htdocs\sca\vendor\symfony\s in C:\xampp\htdocs\sca\vendor\symfony\symfony\src\Symfony\Component\DependencyInjection\Compiler\ReplaceAliasByActualDefinitionPass.php on line 63
  • Carla_cpbcCarla_cpbc Entry Level
    Obrigado, @rogeriolino!!!
  • @higorribeiro enviei as alterações que fiz. Tente instalar novamente.


    @fielcomunista
  • Testando as alterações. Obrigado, @rogeriolino.
  • fielcomunistafielcomunista Entry Level
    edited August 2017
    @rogeriolino, php7.0? :-/

    Loading composer repositories with package information
    Updating dependencies (including require-dev)
    Your requirements could not be resolved to an installable set of packages.

    Problem 1
    - The requested PHP extension ext-pdo ~1.0 has the wrong version (7.0.19-1) installed. Install or enable PHP's pdo extension.

    ----
    Meu ambiente de testes atualmente é um Debian 9 Stretch - com todos os pacotes da nova versão.
  • @fielcomunista você tentou a instalação pelo comando (v2.0.x-dev):

    composer create-project "novosga/novosga:v2.0.x-dev"

    ?
  • Estava fazendo a instalação via git + composer install

    Com o composer criando o projeto este foi o resultado inicial:

    The "https://packagist.org/packages.json" file could not be downloaded: SSL operation failed with code 1. OpenSSL Error messages:
    error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
    Failed to enable crypto
    failed to open stream: operation failed
    https://packagist.org could not be fully loaded, package information was loaded from the local cache and may be out of date.

    Como forma de resolver este problema baixei o cacert.pem usando o WGET.
    $wget http://curl.haxx.se/ca/cacert.pem

    Editei o arquivo php.ini (que no Debian fica localizado em /etc/php/7.0/apache2/) na variável:
    ;openssl.cafile=

    Descomentando (apagando o ;) e adicionando, entre aspas, o endereço do arquivo cacert.pem baixado no passo anterior.

    Então, como root (o usuário comum não conseguia criar o diretório novosga ou usar um existente com mesmo nome) consegui executar o comando:

    composer create-project "novosga/novosga:v2.0.x-dev"

    Após início de instalação normal e passar parâmetros de sistema, banco e e-mail, a instalação terminou de forma anormal com a seguinte mensagem:

    > Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap
    > Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache
    PHP Fatal error: Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted to load class "DOMDocument" from the global namespace.
    Did you forget a "use" statement? in /var/www/html/novosga/vendor/symfony/symfony/src/Symfony/Component/Config/Util/XmlUtils.php:52
    Stack trace:
    #0 /var/www/html/novosga/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Loader/XmlFileLoader.php(263): Symfony\Component\Config\Util\XmlUtils::loadFile('/var/www/html/n...', Array)
    #1 /var/www/html/novosga/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Loader/XmlFileLoader.php(41): Symfony\Component\DependencyInjection\Loader\XmlFileLoader->parseFileToDOM('/var/www/html/n...')
    #2 /var/www/html/novosga/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php(72): Symfony\Component\DependencyInjection\Loader\XmlFileLoader->load('web.xml')
    #3 /var/www/html/novosga/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Compiler/MergeExtensionConfigurati in /var/www/html/novosga/vendor/symfony/symfony/src/Symfony/Component/Config/Util/XmlUtils.php on line 52
    Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache handling the symfony-scripts event terminated with an exception


    [RuntimeException]
    An error occurred when executing the "'cache:clear --no-warmup'" command:
    PHP Fatal error: Uncaught Symfony\Component\Debug\Exception\ClassNotFoundEx
    ception: Attempted to load class "DOMDocument" from the global namespace.
    Did you forget a "use" statement? in /var/www/html/novosga/vendor/symfony/sy
    mfony/src/Symfony/Component/Config/Util/XmlUtils.php:52
    Stack trace:
    #0 /var/www/html/novosga/vendor/symfony/symfony/src/Symfony/Component/Depend
    encyInjection/Loader/XmlFileLoader.php(263): Symfony\Component\Config\Util\X
    mlUtils::loadFile('/var/www/html/n...', Array)
    #1 /var/www/html/novosga/vendor/symfony/symfony/src/Symfony/Component/Depend
    encyInjection/Loader/XmlFileLoader.php(41): Symfony\Component\DependencyInje
    ction\Loader\XmlFileLoader->parseFileToDOM('/var/www/html/n...')
    #2 /var/www/html/novosga/vendor/symfony/symfony/src/Symfony/Bundle/Framework
    Bundle/DependencyInjection/FrameworkExtension.php(72): Symfony\Component\Dep
    endencyInjection\Loader\XmlFileLoader->load('web.xml')
    #3 /var/www/html/novosga/vendor/symfony/symfony/src/Symfony/Component/Depend
    encyInjection/Compiler/MergeExtensionConfigurati in /var/www/html/novosga/ve
    ndor/symfony/symfony/src/Symfony/Component/Config/Util/XmlUtils.php on line
    52

    Não conheço o Symfony. Vou pesquisar, @rogeriolino. Obrigado por enquanto.
  • O problema de não encontrar a classe DOMDocument é porque está faltando a extensão php-xml
  • Ok, @rogeriolino!

    Todos os outros passos foram seguidos e após a instalação do php7.0-xml a instalação terminou com sucesso.

    Acessei o NovoSGA 2.0 no endereço 127.0.0.1:8000 e utilizei os dois usuários (administrador e gestor), mas a mensagem foi Invalid credentials.

    Verifiquei as mensagens do Symfony, mas não encontrei algo que pudesse me indicar a solução.
  • Oooops!

    Consegui aqui. Já estou testando o sistema e te retorno.
    O usuário criado foi admin e não administrador.

    Abraços.
  • @rogeriolino essa semana voltarei a testar o sistema. Posto retorno.
  • @rogeriolino executamos a instalação para verificar erros anteriores e de fato ela concclui. Mas ao acessar a pagina, /novosga/web/
    apresenta a seguinte mensagem de erro. Não tive tempo de tratar, somente relatando para ciencia.

    Parse error: syntax error, unexpected ':', expecting ';' or '{' in C:\xampp\htdocs\sga2\novosga\vendor\novosga\core\Entity\Usuario.php on line 232

    Fatal error: Uncaught exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Parse Error: syntax error, unexpected ':', expecting ';' or '{'' in C:\xampp\htdocs\sga2\novosga\vendor\novosga\core\Entity\Usuario.php:232 Stack trace: #0 {main} Next exception 'Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException' with message 'Circular reference detected for service "fos_oauth_server.server", path: "security.firewall.map.context.main -> fos_oauth_server.server -> fos_oauth_server.storage -> fos_oauth_server.access_token_manager.default -> twig.controller.exception -> twig -> security.authorization_checker".' in C:\xampp\htdocs\sga2\novosga\var\cache\prod\classes.php:3524 Stack trace: #0 C:\xampp\htdocs\sga2\novosga\var\cache\prod\appProdProjectContainer.php(3275): Symfony\Component\DependencyInjection\Container->get('fos_oauth_serve...') #1 C:\xampp\htdocs\sga2\novosga\var\cache\prod\appProdProjectContainer.php(2141): appProdProjectContainer->getSecurity_Authentication_Man in C:\xampp\htdocs\sga2\novosga\var\cache\prod\classes.php on line 3524
  • ao criar tabelas via comando php bin/console doctrine:schema:create apresenta a seguinte mensagem de erro.

    PHP Parse error: syntax error, unexpected ':', expecting ';' or '{' in C:\xampp\htdocs\sga2\novosga\vendor\novosga\core\Entity\Unidade.php on line 83

    Parse error: syntax error, unexpected ':', expecting ';' or '{' in C:\xampp\htdocs\sga2\novosga\vendor\novosga\core\Entity\Unidade.php on line 83
    [2017-08-03 16:14:49] php.CRITICAL: Fatal Parse Error: syntax error, unexpected ':', expecting ';' or '{' {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalErrorException(code: 0): Parse Error: syntax error, unexpected ':', expecting ';' or '{' at C:\\xampp\\htdocs\\sga2\\novosga\\vendor\\novosga\\core\\Entity\\Unidade.php:83)"}


    [Symfony\Component\Debug\Exception\FatalErrorException]
    Parse Error: syntax error, unexpected ':', expecting ';' or '{'


    doctrine:schema:create [--dump-sql] [--em [EM]] [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [-e|--env ENV] [--no-debug] [--]
  • @fielcomunista

    Foi falha minha. Não especifiquei os usernames.


    @higorribeiro

    Está usando PHP 7?

    Não é para acessar direto o diretório /web, quando executar o comando server:start irá iniciar um servidor na porta 8000: http://127.0.0.1:8000
  • Ooops!

    Foi alterado o tipo da coluna prioridade?

    An exception occurred while executing '
    INSERT INTO servicos_unidades
    (unidade_id, servico_id, local_id, sigla, ativo, peso, numero_inicial, incremento, prioridade)
    SELECT
    ?, id, ?, ?, false, peso, 1, 1, 1
    FROM
    servicos
    WHERE
    macro_id IS NULL AND
    id NOT IN (SELECT servico_id FROM servicos_unidades WHERE unidade_id = ?)
    ' with params [1, 1, "A", 1]:

    SQLSTATE[42804]: Datatype mismatch: 7 ERRO: coluna "prioridade" é do tipo boolean mas expressão é do tipo integer
    LINE 5: $1, id, $2, $3, false, peso, 1, 1, 1
  • @rogeriolino no campo NOME do Gerenciamento de Usuários há uma "falha" já que ele não aceita nomes com menos de 5 caracteres. Rs.

    Me chamo José e tenho um colega chamado Ian que usa o sistema. Na presente configuração nenhum de nós poderia ser cadastrado no sistema. Kkkkkkkkk
  • @rogeirolino, na realidade o erro é na criação das tabelas ao executar o comando bin/console doctrine:schema:create apresenta este erro.
    Sim estou usando o php 7
  • MoisesMoises Entry Level
    edited August 2017
    Bom Dia,
    Tenho um servidor virtual que possui ip fixo, quando digito http://127.0.0.1:8000 ou o ip da maquina, a resposta é conexão recusada.
    Tem como mudar -> bin/console server:run para rodar o ip fixo?
    Peço desculpas, já resolvi este problema. é só acrescentar na frente do -> bin/console server:run 192.168.0.x:8000.
    o problema agora é :
    vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php line 389
    389 $version = $this->getDatabasePlatformVersion();

    Moises
  • fielcomunistafielcomunista Entry Level
    edited August 2017
    @rogeriolino, utilizo a estrutura de Grupos como um organograma, o que muito me auxilia, mas na nova estrutura não encontrei essa categorização. Como se dará a amarração dos níveis e/ou unidades?

    Menus versão 2.0
    http://ftp.santoandre.sp.gov.br/pydio/public/novosga2

    Grupos versão 1.5
    http://ftp.santoandre.sp.gov.br/pydio/public/novosga15

    Não consigo cadastrar usuários ainda. Dá erro na senha ou na "amarração" com a lotação.
    Não encontrei cadastro de Cargos também. O que, se não houver mais, inviabilizará atualizações em nosso sistema, pois trabalhamos com níveis diferentes de hierarquia e existem cargos com acesso a um ou outro módulo. Há, por exemplo, pessoas que acessam apenas os relatórios.

    Obrigado.
This discussion has been closed.