O intuito deste repositório é facilitar o deployment da plataforma Mapas Culturais como solução para os cadastros da Lei Aldir Blanc, assim como servir de ambiente de desenvolvimento do Plugin AldirBlanc, submódulo deste repositório.
Este repositório já utiliza como autenticador o plugin MultipleLocalAuth.
- compose
- common - arquivos comuns dos ambientes de desenvolvimento e produção
- local - arquivos exclusivamente para o ambiente de desenvolvimento
- production - arquivos exclusivamente para o ambiente de produção
- dev-scripts - scripts auxiliares para o desenvolvimento
- start-dev.sh - script que inicializa o ambiente de desenvolvimento
- bash.sh - entra no container da aplicação
- shell.sh - entra no shell do mapas culturais
- psql.sh - entra no banco de dados da aplicação
- docker-compose.local.yml - arquivo de definição do docker-compose utilizado pelos scripts acima
- plugins - pasta com os plugins desenvolvidos exclusivamente para o projeto
- AldirBlanc - plugin que implementa os formulários de cadastro do inciso I e II da Lei Aldir Blanc
- themes - pasta com os temas desenvolvidos exclusivaente para o projeto
- SampleTheme - esqueleto de tema filho do BaseV1 para demostração e para servir de base para o desenvolvimento de outros temas
Antes de tudo certifique-se de ter os pacotes git, docker e docker-compose instalados e estar utilizando sistema operacional Linux ou MacOS.
Nos exemplos é usado o comando sudo para que os scripts tenham os privilégios requeridos pelo docker.
Crie um repositório vazio no github ou gitlab (usarei de exemplo o nome https://github.com/organizacao/meu-mapas)
Clone o repositório do projeto base no seu computador
$ git clone https://github.com/mapasculturais/mapasculturais-aldirblanc.git meu-mapas --recursive
$ cd meu-mapas
Substitua a url do remote origin para a url de seu repositório
meu-mapas/$ git remote set-url origin https://github.com/organizacao/meu-mapas
# ou, se você tiver sua chave no github
meu-mapas/$ git remote set-url origin git@github.com:organizacao/meu-mapas
Dê git push no repositório para enviar a versão inicial para seu repositório vazio.
meu-mapas/$ git push
To github.com:organizacao/meu-mapas
* [new branch] master -> master
Para subir o ambiente de desenvolvimento basta entrar na pasta dev-scripts
e rodar o script start-dev.sh
.
meu-mapas/dev-scripts/$ sudo ./start-dev.sh
acesse no seu navegador http://localhost:8080/
Este ambiente roda com o built-in web server do PHP, o que possibilita que seja utilizado o PsySH, um console interativo para debug e desenvolvimento.
no lugar desejado, adicione a linha eval(\psy\sh());
e você obterá um console. Ctrl + D
para continuar a execução do código.
Para parar o ambiente de desenvolvimento usar as teclas Ctrl + C
O banco de dados inicial inclui um usuário de role saasSuperAdmin
de id 1
e email Admin@local
.
Este usuário possui permissão de criar, modificar e deletar qualquer objeto do banco.
- email:
Admin@local
- senha:
mapas123
Usaremos para exemplo o nome de tema NovoTema
- copie a pasta
themes/SampleTheme
parathemes/NovoTema
;
meu-mapas/themes$ cp -a SamplesTheme NovoTema
- edite o arquivo
dev-scripts/docker-compose.yml
adicionando uma linha na seção volumes para o tema:
- ../themes/NovoTema:/var/www/html/protected/application/themes/NovoTema
- edite o arquivo
themes/NovoTema/Theme.php
e substitua o namespace (linha 2) porNovoTema
:
<?php
namespace NovoTema;
@todo
@todo
@todo
meu-mapas$ sudo docker-compose -f docker-compose.prod.yml up
Modifique a versão do Mapas Culturais no início do arquivo compose/production/Dockerfile
e execute os comandos abaixo:
meu-mapas$ sudo docker-compose -f docker-compose.prod.yml build
meu-mapas$ sudo docker-compose -f docker-compose.prod.yml restart mapasculturais
@todo
@todo