NPDD/Baobáxia/Documentação

(Diferença entre revisões)
Ir para: navegação, pesquisa
Fernao (disc | contribs)
(criando página de documentação a partir do plantio da mucua do coco)
Edição posterior →

Edição das 14h28min de 19 de abril de 2015

Documentação do Baobáxia

Conteúdo

Instalação da Mucua

Baixe a versão mais atualizada do Baobáxia (pacotão) em:
http://media.mocambos.net/
Como root, baixe o arquivo
$ su -
# wget http://media.mocambos.net/baobaxia_20150402.tbz
# tar xvf baobaxia_20150402.tbz

Rode o instalador:
# cd baobaxia
# ./install.sh

Cuidando da mucua

Atualmente algumas funcionalidades não tem acesso pela interface web mas são acessíveis diretamente pelo terminal.

Importante Sempre entre como usuário "exu" no coco (ou como root e depois passe ao usuário exu, com "su - exu"):

ssh root@coco (aquela senha)
su - exu

O Baobáxia é instalado em dois repositórios git, um para o software que fica em:

/srv/bbx/baobaxia

e outro do acervo em si em:

/data/bbx/repositories/mocambos

Como todos os repositórios git, podemos verificar e atualizar os links para outros clones "remotos". Para ver como estão configurados:

cd /srv/bbx/baobaxia
git remote -v

No caso do software deveria ter:

github      https://github.com/RedeMocambos/baobaxia

Que podemos adicionar assim:

git remote add github https://github.com/RedeMocambos/baobaxia

Conectando as outras mucuas

Para verificar a conexão dos acervos das mucuas:

cd /data/bbx/repositories/mocambos
git remote -v

deveria ter uma rota para o dpadua (ou outra mucua):

dpadua      ssh://exu@dpadua.mocambos.net:9022/data/bbx/repositories/mocambos

Pode adicionar outra conexão, por exemplo pirriera, com:

git remote add pirriera ssh://exu@pirrieta.mocambos.net/data/bbx/repositories/mocambos

Uma vez verificados os remotes podemos sincronizar os repositórios. Em geral o git pode baixar (pull) ou enviar (push) as mudanças para outros clones.

Atualizando o codigo do Baobáxia

Então para atualizar o código com a ultima versão no github.com

cd /srv/bbx/baobaxia
git pull github master

Uma vez atualizado o codigo precisa rodar alguns comandos para instalar as atualizações:

cd /srv/bbx/baobaxia/app/django-bbx
. /srv/bbx/envs/bbx/bin/activate
python manage.py collectstatic --noinput
python manage.py syncdb --all
python manage.py migrate --all
/srv/bbx/bin/update_templates.sh

Sincronizando o acervo

Em vez desse comando para atualizar o acervo do Baobáxia usamos o comando:

/srv/bbx/bin/bbx-cron.sh

Que alem de baixar (pull), juntar (merge) e enviar (push) as mudanças, atualiza localmente os media no Baobáxia.

Enviar ou pedir copias dos conteúdos

O Baobáxia usa para gerenciar os arquivos o software git-annex que permite gerenciar copias dos arquivos entre as mucuas (clones dos repositórios).

A estrutura da pasta, do repositório do acervo (/data/bbx/repositories/mocambos):

├── chasqui
│   ├── mocambolas
│   └── video
│       └── 14
│           └── 08
│               └── 13
│                   ├── mineral-b8469.json (Arquivo de metadados)
│                   └── mineral-b8469.mp4
├── coco
│   ├── imagem
│   │   └── 14
│   │       └── 10
│   │           ├── 04
│   │           │   ├── grafiti-coco-b0fe2.jpg 
│   │           │   ├── grafiti-coco-b0fe2.json (Arquivo de metadados)
│   │           │   ├── logo-coco-e4b4e.json (Arquivo de metadados)
│   │           │   └── logo-coco-e4b4e.png 
│   │           └── 06
│   │               ├── plantio-mucua-coco-oficina-nufac-a7152.jpg
│   │               └── plantio-mucua-coco-oficina-nufac-a7152.json (Arquivo de metadados)
│   ├── mocambolas
│   │   ├── bethdeoxum@coco.mocambos.net.json
│   │   ├── braza@coco.mocambos.net.json
│   │   ├── daniel@coco.mocambos.net.json
│   │   ├── iris@coco.mocambos.net.json
│   │   ├── meme@coco.mocambos.net.json
│   │   ├── pc@coco.mocambos.net.json
│   │   └── raiol@coco.mocambos.net.json
│   └── video
│       └── 14
│           └── 10
│               ├── 04
│               │   ├── oficina-de-coco-em-cuba-com-mae-beth-dd7d3.json (Arquivo de metadados)
│               │   └── oficina-de-coco-em-cuba-com-mae-beth-dd7d3.ogg 
│               └── 06
│                   ├── alma-no-olho-ff46d.json (Arquivo de metadados)
│                   └── alma-no-olho-ff46d.mp4
└-OUTRAS_MUCUAS...

Para enviar uma copia de um conteúdo para outra mucua, por exemplo o video "oficina-de-coco-em-cuba-com-mae-beth-dd7d3.ogg" entramos na pasta e usamos o comando git annex copy:

cd /data/bbx/repositories/mocambos/coco/video/14/10/06/
git annex copy --to dpadua oficina-de-coco-em-cuba-com-mae-beth-dd7d3.ogg

Para receber uma copia de outra mucua a logica e' a mesma, por exemplo para pegar uma copia do video "mineral-b8469.mp4" publicado no chasqui:

cd /data/bbx/repositories/mocambos/chasqui/video/14/08/13/
git annex get mineral-b8469.mp4

O git annex vai tentar pegar a copia atraves das mucuas configuradas como "remote".

Acesso a Mucua via tunnel

Aqui no Coco não temos acesso a todos os roteadores para reancaminhar a porta do ssh para o acesso externo. Nesse caso usamos um tunnel ssh reverso que cria uma conexao para dpadua. Assim o ssh do coco esta acessivel na porta 6666 do dpadua.

ssh -fNT -R 6666:localhost:22 exu@dpadua.mocambos.net -p 9022

Para manter ativo o tunnel pode colocar esse script no /etc/rc.local (é necessário antes criar as autenticação via chaves para o usuario exu)

HOME=/home/exu/
autossh -f -N -M 10984 -o "PubkeyAuthentication=yes" -o "PasswordAuthentication=no" -i /home/exu/.ssh/id_rsa -R 6666:localhost:22 exu@dpadua.mocambos.net -p 9022 &
exit 0
Ferramentas pessoais
Espaços nominais
Variantes
Ações
Navegação
Ferramentas
Rede Mocambos