New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details → →
Socket
Book a DemoSign in
Socket

@conexean/cli

Package Overview
Dependencies
Maintainers
1
Versions
25
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@conexean/cli

🚀 CLI moderno para deploy de projetos Next.js da Conexean

latest
Source
npmnpm
Version
3.0.24
Version published
Maintainers
1
Created
Source

🚀 Conexean CLI

CLI moderno para deploy de projetos Next.js da Conexean

npm version Version License: MIT

📋 Índice

🚀 Instalação

Instalação Global (Recomendado)

npm install -g @conexean/cli
# ou
pnpm add -g @conexean/cli

Instalação Local

npm install --save-dev @conexean/cli
# ou
pnpm add -D @conexean/cli

Uso Direto

npx @conexean/cli --help

⚡ Uso Rápido

# 1. Inicializar configuração
conexean init

# 2. Criar banco de dados
conexean db create

# 3. Fazer build
conexean build

# 4. Fazer deploy
conexean deploy

# 5. Verificar status
conexean status

# 6. Listar bancos e usuĂĄrios
conexean db list

# 7. Conectar via SSH (se necessĂĄrio)
conexean ssh

## 🔧 Configuração

### 1. Inicializar Projeto

```bash
conexean init

Isso criarå um arquivo deploy.config.json com a configuração båsica.

2. Configurar Servidor

Edite o arquivo deploy.config.json:

{
  "name": "meu-projeto",
  "server": {
    "host": "192.168.1.100",
    "user": "ubuntu",
    "port": "22",
    "path": "/var/www/production"
  },
  "database": {
    "host": "localhost",
    "port": "5432",
    "adminUser": "postgres",
    "adminPassword": "senha_admin",
    "targetUser": "app_user",
    "targetPassword": "senha_app",
    "targetDatabase": "app_db"
  },
  "build": {
    "command": "pnpm build",
    "outputDir": ".next"
  },
  "files": [
    ".next",
    "public",
    "package.json",
    "pnpm-lock.yaml",
    "next.config.mjs",
    "prisma"
  ],
  "excludePatterns": [
    "node_modules",
    ".git",
    ".next/cache",
    "*.log",
    ".env.local",
    "coverage"
  ],
  "commands": {
    "beforeDeploy": [
      "echo 'Preparando deploy...'"
    ],
    "afterDeploy": [
      "pnpm install --production",
      "pnpm prisma generate",
      "pm2 delete ${name} || true",
      "pm2 start npm --name ${name} -- start"
    ]
  }
}

📚 Comandos

Comandos Principais

ComandoDescriçãoOpçÔes
initInicializa configuração do projeto--force
buildBuilda o projeto Next.js--env, --clean
deployFaz deploy para o servidor--env, --force, --no-build, --no-backup
rollbackFaz rollback para versĂŁo anterior--env, --version
statusMostra status do projeto--env
sshAbre conexĂŁo SSH direta no terminal--env, --command

Exemplos de Uso

# Build para produção
conexean build --env production

# Deploy para staging
conexean deploy --env staging

# Deploy forçado (ignora erros)
conexean deploy --env production --force

# Rollback para versĂŁo especĂ­fica
conexean rollback --env production --version v1.2.3

# Status do ambiente de produção
conexean status --env production

# Conectar SSH para ambiente especĂ­fico
conexean ssh --env production

# Executar comando especĂ­fico via SSH
conexean ssh --env production --command "ls -la"

## đŸ—„ïž Comandos de Banco de Dados

### Comandos DisponĂ­veis

| Comando | Descrição | OpçÔes |
|---------|-----------|--------|
| `db backup` | Cria backup do banco de produção | `--env` |
| `db backup-local` | Cria backup do banco local | - |
| `db restore-local` | Restaura backup no banco local | `[file]` |
| `db restore-prod` | Restaura backup local em produção | `[file]` |
| `db create` | Cria banco usando configuração do projeto | - |
| `db list` | Lista bancos de dados e usuĂĄrios | `--env` |
| `db drop` | Remove banco e usuĂĄrio do projeto | `--env`, `--force`, `--user`, `--database` |

### Backup e Restore

```bash
# Criar backup de produção
conexean db backup --env production

# Criar backup local
conexean db backup-local

# Restaurar backup no local
conexean db restore-local

# Restaurar backup especĂ­fico no local
conexean db restore-local backup_projeto_production_2024-01-15.sql

# Restaurar backup local em produção
conexean db restore-prod

# Restaurar backup específico em produção
conexean db restore-prod backup_projeto_production_2024-01-15.sql

🚀 Criar Banco de Dados

Cria banco de dados usando a configuração do projeto (definida no init):

# Criar banco usando configuração do projeto
conexean db create

O comando usa automaticamente as configuraçÔes definidas no deploy.config.json:

  • Nome do banco: config.database.targetDatabase
  • UsuĂĄrio: config.database.targetUser
  • Senha: config.database.targetPassword
  • Host: config.database.host
  • Porta: config.database.port

📋 Listar Bancos e Usuários

# Listar todos os bancos e usuĂĄrios
conexean db list

# Listar para ambiente especĂ­fico
conexean db list --env production

Exibe informaçÔes detalhadas:

  • Bancos: Nome, tamanho, proprietĂĄrio, collation
  • UsuĂĄrios: PermissĂ”es, bancos proprietĂĄrios, status

đŸ—‘ïž Remover Banco e UsuĂĄrio

# Remover banco e usuĂĄrio do projeto atual
conexean db drop

# Remover com confirmação forçada
conexean db drop --force

# Remover usuĂĄrio especĂ­fico
conexean db drop --user nome_do_usuario --force

# Remover banco especĂ­fico
conexean db drop --database nome_do_banco --force

# Remover ambos
conexean db drop --user nome_do_usuario --database nome_do_banco --force

🔧 Configuração de Banco Existente

# Configurar banco existente (usuårio, permissÔes)
conexean db setup --env production

🚀 Fluxo Completo de Banco de Dados

1. Inicializar Projeto

conexean init

2. Criar Banco de Dados

conexean db create

3. Listar Bancos e UsuĂĄrios

conexean db list

4. Fazer Backup

conexean db backup

5. Restaurar Backup (se necessĂĄrio)

conexean db restore-local

6. Remover Banco (se necessĂĄrio)

conexean db drop --force

📊 Exemplo de Saída do db list:

đŸ—„ïž BANCOS DE DADOS:
────────────────────────────────────────────────────────────────────────────────
   📁 postgres
      Tamanho: 7739 kB
      ProprietĂĄrio: conexean
      Collation: en_US.UTF-8

   📁 prod_barradao
      Tamanho: 8947 kB
      ProprietĂĄrio: conexean
      Collation: en_US.UTF-8

đŸ‘„ USUÁRIOS:
────────────────────────────────────────────────────────────────────────────────
   đŸ‘€ conexean
      Super usuário: ❌ Não
      Pode criar DB: ✅ Sim
      Pode fazer login: ✅ Sim
      Bancos proprietĂĄrio: prod_barradao, prod_conexean_portal, prod_cclimp

   đŸ‘€ prod_user_barradao
      Super usuário: ❌ Não
      Pode criar DB: ❌ Não
      Pode fazer login: ✅ Sim

🔧 Configuração Avançada

🔐 Autenticação SSH Melhorada

O CLI suporta mĂșltiplos mĂ©todos de autenticação SSH:

  • SSH Agent (Recomendado - Mais seguro)

    # Adicionar chave ao SSH agent
    ssh-add ~/.ssh/id_rsa
    
    # O CLI detectarĂĄ automaticamente
    conexean db create
    
  • Chaves SSH (AutomĂĄtico)

    • Tenta ~/.ssh/id_ed25519
    • Tenta ~/.ssh/id_rsa
    • Tenta ~/.ssh/id_ecdsa
  • Senha Interativa (Fallback)

    • Solicita senha quando necessĂĄrio
    • NĂŁo requer variĂĄveis de ambiente

🔌 Conexão SSH Direta

Acesse o servidor diretamente via terminal:

# Conectar ao servidor (ambiente padrĂŁo: staging)
conexean ssh

# Conectar ao servidor de produção
conexean ssh --env production

# Executar comando especĂ­fico e sair
conexean ssh --command "ls -la /var/www"

# Verificar logs do PM2
conexean ssh --command "pm2 logs --lines 50"

# Verificar uso de disco
conexean ssh --command "df -h"

Vantagens:

  • ✅ Usa configuraçÔes do projeto automaticamente
  • ✅ Suporte a mĂșltiplos ambientes
  • ✅ Terminal interativo completo
  • ✅ Execução de comandos especĂ­ficos
  • ✅ NĂŁo precisa lembrar credenciais SSH

MĂșltiplos Ambientes

{
  "servers": {
    "staging": {
      "host": "staging.conexean.com",
      "port": 22,
      "username": "deploy"
    },
    "production": {
      "host": "prod.conexean.com",
      "port": 22,
      "username": "deploy"
    }
  }
}

Comandos Customizados

{
  "project": {
    "buildCommand": "pnpm build && pnpm test",
    "installCommand": "pnpm install --frozen-lockfile",
    "restartCommand": "pm2 restart app --update-env"
  }
}

Backup AutomĂĄtico

{
  "backup": {
    "enabled": true,
    "path": "/var/backups",
    "retention": 7,
    "compress": true,
    "includeDatabase": true
  }
}

🔍 Troubleshooting

Problemas Comuns

1. Erro de ConexĂŁo SSH

# Verificar conectividade
ssh -i ~/.ssh/id_rsa usuario@servidor

# Testar com o CLI
node dist/cli.js status --debug

2. Erro de PermissĂŁo

# Verificar permissÔes do diretório remoto
node dist/cli.js status --env production

# Ajustar permissÔes se necessårio
chmod 755 /var/www/projeto

3. Erro de Build

# Build local para testar
node dist/cli.js build --debug

# Verificar dependĂȘncias
pnpm install

4. Erro de Banco de Dados

# Listar bancos e usuĂĄrios
conexean db list

# Testar criação de banco
conexean db create

# Verificar configuraçÔes
cat deploy.config.json

Logs e Debug

# Ativar modo debug
DEBUG=1 node dist/cli.js deploy --env production

# Ver logs detalhados
node dist/cli.js status --env production --debug

đŸ€ Contribuição

  • Fork o projeto
  • Crie uma branch para sua feature (git checkout -b feature/AmazingFeature)
  • Commit suas mudanças (git commit -m 'Add some AmazingFeature')
  • Push para a branch (git push origin feature/AmazingFeature)
  • Abra um Pull Request

📄 Licença

Este projeto estå licenciado sob a Licença MIT - veja o arquivo LICENSE para detalhes.

🆘 Suporte

Desenvolvido com ❀ pela Conexean

Keywords

deploy

FAQs

Package last updated on 07 Aug 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts