Resultado do que aprendemos no #library do Discord.
Este projeto utiliza:
- Firebase
- Discord.js
- create-react-app
- CSS modules
- Sass
- Redux
- Redux Thunk
cp .env.example .envnpm installnpm run startpara iniciar o sitenpm run botpara iniciar o bot
Se utiliza o Buddy para colocar o projeto no ar (tanto o site quanto o bot). Ele é um aplicativo automatizador de tarefas (como fazer build, entrar no SSH e rodar comandos, etc.). As pipelines para ele já existem, mas você pode saber como funciona indo até a pasta _buddy, onde tem todos os passos.
Cada uma das duas pipelines fazem conexão com o SSH do CITi e a senha original foi omitida por razões óbvias.
| Bot | Site |
|---|---|
O bot da library não roda no mesmo arquivo que o bot do Joãozinho. O comando /library é ignorado no Joãozinho para ser lidado com nosso outro bot.
Apesar disso, o bot da library está no mesmo diretório do Joãozinho no servidor (no webfaction: webapps/discord_joaozinho) e eles rodam em dois processos diferentes.
-
Se conecte no SSH
-
Vá até o diretório do discord_joaozinho:
cd ~/webapps/discord_joaozinho -
Como cada aplicação é isolada no Webfaction, você precisa exportar o diretório
binpara poder chamar comandos comonpmounode.export PATH=$HOME/webapps/discord_joaozinho/bin:$PATH
-
Digite
forever liste veja as aplicações rodando.
-
Se conecte no SSH
-
Vá até o diretório do discord_joaozinho:
cd ~/webapps/discord_joaozinho -
Como cada aplicação é isolada no Webfaction, você precisa exportar o diretório
binpara poder chamar comandos comonpmounode.export PATH=$HOME/webapps/discord_joaozinho/bin:$PATH
-
Digite
forever liste veja quais aplicações estão rodando. Você pode pegar o caminho de cada log e digitarvim caminho/do/log -
Para reiniciar, digite
forever restartall
A título de informação, o banco de dados do bot da library (eu realmente deveria escolher um nome pra ele) é completamente independente do Joãozinho.
- Baixe o site para seu computador
- Rode
npm install - Rode
npm run buildpara gerar os arquivos - Digite
scp build/* citi@citi.org.br:webapps/discord_librarye insira a senha do SSH - Espere todos os arquivos serem transferidos
- Logue-se no SSH, vá até o diretório
discord_library - Digite
export PATH=$HOME/webapps/discord_library/bin:$PATH - Digite
forever restart server.js - Done! ✨
É uma boa depois passar o bot pra o repositório do Joãozinho, que tem deploy automático.
- Baixe o site para seu computador
- Rode
npm install - Modifique o que precisar no bot (e garanta que ele está funcionando com suas modificações)
- Do diretório principal, digite
scp bot/index.js citi@citi.org.br:webapps/discord_joaozinho/library.jse insira a senha do SSH - Espere tudo ser transferido
- Logue no SSH, vá até o diretório
discord_joaozinho - Digite
export PATH=$HOME/webapps/discord_joaozinho/bin:$PATH - Digite
forever restartall - Done! ✨
- Baixe o site para seu computador
- Rode
npm install - Use
nodemon bot/index.jspara rodar (toda vez que você atualizar algo no arquivo, o bot reiniciará)