“Recurso público retorna ao público”.
Nós somos o pátio digital, uma iniciativa da Secretaria Municipal de Educação de São Paulo que, por meio do fortalecimento da transparência, da participação social e do desenvolvimento de novas tecnologias, aproxima diferentes grupos da sociedade civil por um objetivo maior: a melhoria da educação na cidade de São Paulo.
Para que docentes e comunidade tenham acesso as orientações didáticas e materiais de apoio propostos nas escolas Municipais da Cidade de São Paulo atraves de uma platafoma informatizada, a Secretária Municipal de educação, por meio da iniciativa de governo aberto Pátio Digital, está em processo de implantação digital do curriculo da cidade.
Canal de comunicação | Objetivos |
---|---|
Issues do Github | - Sugestão de novas funcionalidades - Reportar bugs - Discussões técnicas |
Telegram | - Comunicar novidades sobre os projetos - Movimentar a comunidade - Falar tópicos que não demandem discussões profundas |
Qualquer outro grupo de discussão não é reconhecido oficialmente.
Contribuições são super bem vindas! Se você tem vontade de construir o curriculo digital conosco, veja o nosso guia de contribuição onde explicamos detalhadamente como trabalhamos e de que formas você pode nos ajudar a alcançar nossos objetivos. Lembrando que todos devem seguir nosso código de conduta.
- CentOS 7
- Ruby 2.5.1
- Rails 5.2.0
- Rubygems
- Bundler (
gem install bundler
) - PostgreSQL
Este projeto vem equipado para ser executado dentro do Docker, mas isso requer algumas dependêcias locais. Para instruções de instalação e outras duvidas sobre o Docker acesse here e docker-compose
.
É necessário definir paramêtros de banco de dados no ambiente de desenvolvimento.
- Copie
config/database.yml.example
paraconfig/database.yml
- Copie
config/secrets.yml.example
paraconfig/secrets.yml
- Copie
.docker-env-dev.example
para.docker-env-dev
e defina as variáveis de ambiente, certificando que todas estão definidas corretamente.
Execute o docker build para criar o banco de dados e criar o seu aplicativo:
$ docker-compose build app_development
Depois que todas as dependências estiverem instaladas e o projeto foi criado, execute o aplicativo:
$ docker-compose up app_development
Após a configuração, você pode executar o aplicativo e as dependências usando [docker-compose]:
$ docker-compose up app_development
Seu host do docker está sendo executado em localhost:3000
Primeiro, você precisará configurar as variáveis de ambiente no seu docker-compose. Certifique-se que todas as variáveis abaixo foram definidas.
- Variáveis de ambiente do aplicativo rails (ambiente de produção):
APPLICATION_ROOT_PATH
PLATAFORMA_USERNAME
PLATAFORMA_DATABASE
PLATAFORMA_PASSWORD
PLATAFORMA_HOST
- Banco de dados:
POSTGRES_USER
POSTGRES_PASSWORD
POSTGRES_DB
Use o Capistrano para deploy, mas configure alguns arquivos necessários antes:
-
Crie uma nginx.conf em
<shared_path>/docker/web/nginx.conf
. Na mesma pasta há um arquivo de amostra. -
Crie um arquivo docker-compose em
<shared_path>/docker-compose.yml
. Pegue o arquivo docker-compose.yml no aplicativo raiz e crie suas variáveis de ambiente.- Variaveis de ambiente do Rails (ambiente de produção):
PLATAFORMA_USERNAME
PLATAFORMA_DATABASE
PLATAFORMA_PASSWORD
PLATAFORMA_HOST
- banco de dados:
POSTGRES_USER
POSTGRES_PASSWORD
POSTGRES_DB
-
Na pasta compartilhada
<shared_path>/config
, crie os arquivos de configuração necessários para executar o rails (master.key, database.yml, storage.yml, secrets.yml ). -
Instale o Docker e
docker-compose
no servidor que irá executar o deploy.
Execute o cap <environment> deploy:check
para verificar se todas as dependências foram criadas.
Se todos os arquivos de configuração foram criados, execute o comando acima para deploy da aplicação, crie o docker build, e carregue o container.
$ cap <environment> deploy
Se for a primeira execução, execute os comandos abaixo para criar e executar as migrações do banco de dados.
$ cap <environment> docker:setup_db
$ cap <environment> docker:migrate
- Execute o seguinte teste
$ rspec
- Execute o analisador de código estático do ruby
Este projeto usa o rubocop gem para o analisador de código estático do ruby executar a análise
$ rubocop
Baseado no Readme do i-educar