Skip to content

Commit

Permalink
Merge pull request #617 from institutotim/master
Browse files Browse the repository at this point in the history
update documentation
  • Loading branch information
Robert Kapa authored Nov 8, 2016
2 parents d7bb873 + e7ee1e7 commit 44c9f58
Show file tree
Hide file tree
Showing 3 changed files with 106 additions and 52 deletions.
20 changes: 0 additions & 20 deletions docs/instalacao_e_configuracao/Atualização.md

This file was deleted.

83 changes: 51 additions & 32 deletions docs/instalacao_e_configuracao/timtec_deploy.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,81 +20,100 @@ Sugerimos que o usuário usado para fazer a instalação não seja o root. Aqui,
Este tutorial pressupões que você esteja logado com o usuário timtec-production, que ele esteja no grupo sudo.

É possível verificar se o usuário timtec-production existe através do comando:

grep timtec-production /etc/passwd
```
root@server# grep timtec-production /etc/passwd
```

Caso o usuário exista, o comando acima deve retornar uma linha semelhante a seguinte:

timtec-production:x:999:999::/home/timtec-production:
```
timtec-production:x:999:999::/home/timtec-production:
```

Caso não exista é possível criá-lo com:

```
$ sudo useradd --groups sudo --create-home timtec-production
root@server# useradd --groups sudo --create-home timtec-production
```

Depois mude a senha:

```
$ sudo passwd timtec-production
root@server# passwd timtec-production
```

Se você estiver usando Debian, pode acontecer do sistema criar uma instância do novo usuário com acesso a um terminal sh. Se você quiser usar o bash (terminal mais completo e com mais funcionalidades), você pode alterar essa informação no arquivo de configuração de usuários. Proceda da seguinte maneira:

1) Abra o arquivo /etc/passwd e verifique a linha onde está o usuário timtec-production. Você pode ver uma linha assim:

timtec-production:x:1001:1001::/home/timtec-production:/bin/sh
```
timtec-production:x:1001:1001::/home/timtec-production:/bin/sh
```

2) Repare que a linha tem indicação para o terminal sh. Mude para bash e salve o arquivo com a linha desta maneira (use vim, nano ou qualquer editor de sua preferência):

timtec-production:x:1001:1001::/home/timtec-production:/bin/bash
```
timtec-production:x:1001:1001::/home/timtec-production:/bin/bash
```

## Obtendo o código
Dentro da home do usuário, primeiro vamos instalar o git e clonar o repositório

* Atualize o índice de pacotes e instale o git

```
root@server# apt-get update
root@server# apt-get install git
```
* Com usuário da aplicação - no nosso caso timtec-production - faça a clonagem do repositório:
```
$ sudo apt-get update
$ sudo apt-get install git
$ git clone ~/https://github.com/hacklabr/timtec.git
timtec-production@server$ git clone ~/https://github.com/hacklabr/timtec.git
```

Em seguida, escolha a versão desejada e atualize o código para ela com o comando abaixo. Aqui você encontra uma lista de versões do TIMTec: https://github.com/hacklabr/timtec/releases

cd timtec
git checkout <tag-da-versão>
```
timtec-production@server$ cd timtec
timtec-production@server$ git checkout <tag-da-versão>
```

Substitua a tag da versão por uma tag do git válida. Ex: `git checkout v3.0.3`

### Dependências
## Dependências
Primeiro, vamos instalar as dependências:

```
$ sudo apt-get update
$ sudo apt-get install -y libpq-dev libjpeg-dev libpng12-dev build-essential python-dev gettext python-virtualenv
root@server# apt-get update
root@server# apt-get install -y libpq-dev libjpeg-dev libpng12-dev build-essential python-dev gettext python-virtualenv
```

### Instalando o nodejs

#### Ubuntu
sudo apt-get install -y nodejs npm
```
root@server# apt-get install -y nodejs npm
```

Diferente de todas as outras distribuições, o ubuntu usa o comando node para o nodejs por padrão, então vamos fazer isso:

sudo update-alternatives --install /usr/bin/node node /usr/bin/nodejs 10
```
root@server# update-alternatives --install /usr/bin/node node /usr/bin/nodejs 10
```

#### Debian

sudo apt-get install curl
sudo curl -sL https://deb.nodesource.com/setup | bash -
sudo apt-get install nodejs
```
root@server# apt-get install curl
root@server# curl -sL https://deb.nodesource.com/setup | bash -
root@server# apt-get install nodejs
```

Mais informações [neste link](https://github.com/joyent/node/wiki/installing-node.js-via-package-manager#debian-and-ubuntu-based-linux-distributions)

### Banco de dados
Recomendamos o postgreSQL, mas o django suporta outros bancos de dados relacionais.
```
root@server# apt-get install -y postgresql
root@server# sudo su - postgres -c "createuser -d timtec-production"
```

$ sudo apt-get install -y postgresql
$ sudo su - postgres -c "createuser -d timtec-production"
$ createdb --encoding "UTF-8" --locale "pt_BR.UTF-8" timtec-production

Com usuário da aplicação, crie então a base:
```
timtec-production@server$ createdb --encoding "UTF-8" --locale "pt_BR.UTF-8" timtec-production
```
obs: caso ocorra algum problema relacionado a locale faltante no sistema, [veja como alterar o locale para pt_BR](Alterando-locale-para-pt_BR.md).

### Ambiente virtual python e dependências de javascript
Expand All @@ -108,7 +127,7 @@ $ make install

Se ocorrer algum erro, tente rodar o comando make novamente, pois falhas podem ocorrer devido a problemas com a internet.

### Criando ambiente virtual manualmente (opcional, use este ou o make create-production)
### Criando ambiente virtual manualmente
Em seguida, vamos criar o ambiente virtual python:

$ virtualenv /home/NOME-DO-SEU-USUARIO-OU-DIRETORIO/env
Expand Down
55 changes: 55 additions & 0 deletions docs/instalacao_e_configuracao/timtec_update.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
## Atualizando para uma nova versão

> Atenção: estas orientações são para a versão 3.1 ou superior. Se seu ambiente é inferior a esta versão, não siga estes passos.
### 1. Faça um backup de todos os seus arquivos e de sua base de dados
* 1.1 Recomendamos que faça uma cópia dos diretório /timtec e /webfiles antes de começar esse processo:
```
timtec-production@server:$ cp ~/timtec-production/timtec /SEU-DIRETORIO-DE-BACKUP/
timtec-production@server:$ cp ~/timtec-production/webfiles /SEU-DIRETORIO-DE-BACKUP/
```
* 1.2 Faça um backup da base de dados e salve no mesmo diretório de backup da aplicação:
```
timtec-production@server:$ pg_dump timtec-production > yyyy_mm_dd_timtec_backup_database.sql
```

### 2. Verifique qual é a sua versão

* 2.1. As versões do TIMTec estão disponíveis aqui: https://github.com/hacklabr/timtec/releases Cada versão do TIMTec é uma tag no repositório git.
* 2.2. No seu servidor, logado com usuário da aplicação (se você seguiu a documentação deve ser o usuário timtec-production), entre na pasta da aplicação e de um git status:

```
timtec-production@server:$ git status
HEAD detached at v3.2
```

### 3. Baixe as atualizações e mude o checkout
No seu servidor, logado com usuário da aplicação (se você seguiu a documentação deve ser o usuário timtec-production), entre na pasta da aplicação e de um git pull:

```
timtec-production@server:$ git checkout master
timtec-production@server:$ git pull --all
timtec-production@server:$ git checkout v3.3
```
### 4. Faça o update

* 4.1 ative o ambiente virtual python:

```
timtec-production@server:$ virtualenv /home/NOME-DO-SEU-USUARIO-OU-DIRETORIO/env
timtec-production@server:$ source /home/NOME-DO-SEU-USUARIO-OU-DIRETORIO/env/bin/activate
```

Se você estiver seguindo a documentação, você pode deverá dar o comando da seguinte maneira:
```
timtec-production@server:$ virtualenv /home/timtec-production/env
timtec-production@server:$ source /home/timtec-production/env/bin/activate
```

* 4.2 Rode o make update na pasta da aplicação:
```
timtec-production@server:$ cd ~/timtec/
timtec-production@server:$ make update
```

Feito isso, o software estará atualizado.

0 comments on commit 44c9f58

Please sign in to comment.