[gitec] SAPL 3.1

Edward de Oliveira Ribeiro edwardr em senado.leg.br
Sexta Setembro 30 20:00:16 BRT 2016


Olá,


Nós temos uma pessoa que está trabalhando nesta parte da migração de dados. Na segunda, vou pedir para ele entrar em contato contigo para ver se consegue te ajudar a resolver o problema, ok?


Se vc precisar de uma base de testes fictícia para ter uma idéia do uso do sistema, podemos fornecer também.


Att,

Edward​


________________________________
De: gitec-bounces em listas.interlegis.gov.br <gitec-bounces em listas.interlegis.gov.br> em nome de Marcio Vilas Boas <marcio em divinopolis.mg.leg.br>
Enviado: sexta-feira, 30 de setembro de 2016 15:37
Para: Grupo Interlegis de Tecnologia
Assunto: Re: [gitec] SAPL 3.1

Ao rodar este comando único pip install abaixo, deu erro. Acrescentei --upgrade, rodou, mas no final deu esta msg
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-2huo21ex/mysqlclient/



Em 30-09-2016 08:28, Leandro Roberto Silva escreveu:
opa...

o processo de migração pode ser rodado quantas vezes você quiser...
para resolver o problema do mysqldb, é necessário rodar uma única vez essa instrução:

pip install -r requirements/migration-requirements.txt

Leandro, pra não mexer no servidor em produção, dá pra copiar o banco para algum lugar no 3.1 e fazer o procedimento?
Sim, basta fazer uma cópia da base do mysql, colocar em qualquer outra instalação e, no arquivo sapl.legacy_migration_settings apontar para essa instalação

E o Data.fs e DocumentosfSapl.fs como é que vem pro 3.1?
a migração de arquivos não está pronta, por enquanto está migrando apenas a base de dados...


Em qui, 29 de set de 2016 às 16:36, Marcio Vilas Boas <marcio em divinopolis.mg.leg.br<mailto:marcio em divinopolis.mg.leg.br>> escreveu:
Leandro,

Fiz outra  instalação completa do 2.5 para migar de lá.
Ao executar ./manage.py shell_plus --settings=sapl.legacy_migration_settings
Não importa  'MySQLdb', o que pode ser?

(sapl) sapl31 em ubuntu-server16-sapl:~/Envs/sapl$ ./manage.py shell_plus --settings=sapl.legacy_migration_settings
/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/db/utils.py:316: RemovedInDjango110Warning: The signature of allow_migrate has changed from allow_migrate(self, db, model) to allow_migrate(self, db, app_label, model_name=None, **hints). Support for the old signature will be removed in Django 1.10.
  RemovedInDjango110Warning)

Traceback (most recent call last):
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/db/backends/mysql/base.py", line 25, in <module>
    import MySQLdb as Database
ImportError: No module named 'MySQLdb'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "./manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/core/management/__init__.py", line 353, in execute_from_command_line
    utility.execute()
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/core/management/__init__.py", line 345, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/core/management/base.py", line 348, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/core/management/base.py", line 398, in execute
    self.check()
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/core/management/base.py", line 426, in check
    include_deployment_checks=include_deployment_checks,
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/core/checks/registry.py", line 75, in run_checks
    new_errors = check(app_configs=app_configs)
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/core/checks/model_checks.py", line 28, in check_all_models
    errors.extend(model.check(**kwargs))
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/db/models/base.py", line 1180, in check
    errors.extend(cls._check_long_column_names())
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/db/models/base.py", line 1595, in _check_long_column_names
    connection = connections[db]
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/db/utils.py", line 212, in __getitem__
    backend = load_backend(db['ENGINE'])
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/db/utils.py", line 116, in load_backend
    return import_module('%s.base' % backend_name)
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 986, in _gcd_import
  File "<frozen importlib._bootstrap>", line 969, in _find_and_load
  File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 673, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 665, in exec_module
  File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
  File "/home/sapl31/.virtualenvs/sapl/lib/python3.5/site-packages/django/db/backends/mysql/base.py", line 28, in <module>
    raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named 'MySQLdb'
(sapl) sapl31 em ubuntu-server16-sapl:~/Envs/sapl$

Em 29-09-2016 15:53, Marcio Vilas Boas escreveu:
Leandro, pra não mexer no servidor em produção, dá pra copiar o banco para algum lugar no 3.1 e fazer o procedimento?
E o Data.fs e DocumentosfSapl.fs como é que vem pro 3.1?

abs,

Em 29-09-2016 08:50, Leandro Roberto Silva escreveu:
Olá Marcio

Em qua, 28 de set de 2016 às 14:26, Marcio Vilas Boas <marcio em divinopolis.mg.leg.br<mailto:marcio em divinopolis.mg.leg.br>> escreveu:
Certinho Leandro, positivo e operante rs
Já dá pra testar com uma base do 2.5 ?

abs


Dá pra testar sim... tem um procedimentozinho pra fazer...


a configuração para o banco do 3.1 é feita no .env...
para a solução de migração saber onde está seu sapl 2.5, vc deve configurar esse arquivo
https://github.com/interlegis/sapl/blob/master/sapl/legacy_migration_settings.py

fazê-lo apontar para o banco do 2.5, além de dar as devidas permissões lá no mysql...

ATENÇÃO: faça cópia antes... talvez até restaure com outro nome de banco de dados e aponte o legacy, citado acima, para essa restauração

com o banco configurado, vc deve entrar no prompt no python assim:
 ./manage.py shell_plus --settings=sapl.legacy_migration_settings

estando no prompt, digitar:
%run sapl/legacy/migration.py
migrate()

enquanto executa o migrate, vá beber um café! ;)

se der algum problema,
possivelmente a estrutura de sua base 2.5 está diferente da oficial, encontrada aqui:
https://colab.interlegis.leg.br/browser/publico/ILSAPL/trunk/instalacao/sapl.sql

diferenças na base são permitidas na migração mas pode ocorrer de causar erro...
por exemplo:
se na base oficial do 2.5 um campo é VARCHAR(30), na versão oficial do 3.1 também é de tamanho 30. Se, por algum motivo, alguém da sua casa legislativa, alterou isso para VARCHAR(50) e existe registros que usa esse espaço excedente, na migração ocorrerá erro... caberá a você, ajustar sua base, para rodar novamente o migrate
--
att.
Leandro Roberto Silva
Câmara Municipal de Jataí





--
Márcio Vilas Boas
Consultoria de Informática
CM - Divinópolis - MG
(37) 2102-8236





--
Márcio Vilas Boas
Consultoria de Informática
CM - Divinópolis - MG
(37) 2102-8236
--
Histórico do grupo:
http://colab.interlegis.leg.br/search/?type=thread&order=latest&list=gitec

Regras de participação:
http://colab.interlegis.leg.br/wiki/ComoParticiparComunidade

Para administrar ou excluir sua conta visite:
https://listas.interlegis.gov.br/mailman/listinfo/gitec
--
att.
Leandro Roberto Silva
Câmara Municipal de Jataí





--
Márcio Vilas Boas
Consultoria de Informática
CM - Divinópolis - MG
(37) 2102-8236
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.interlegis.gov.br/pipermail/gitec/attachments/20160930/35edbb7f/attachment.html>


Mais detalhes sobre a lista de discussão GITEC