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

@conexean/deploy

Package Overview
Dependencies
Maintainers
1
Versions
62
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@conexean/deploy

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

latest
Source
npmnpm
Version
2.2.6
Version published
Maintainers
1
Created
Source

🚀 Conexean Deploy 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/deploy
# ou
pnpm add -g @conexean/deploy

Instalação Local

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

Uso Direto

npx @conexean/deploy --help

⚡ Uso Rápido

# 1. Inicializar configuração
conexean-deploy init

# 2. Criar banco de dados
conexean-deploy db create

# 3. Fazer build
conexean-deploy build

# 4. Fazer deploy
conexean-deploy deploy

# 5. Verificar status
conexean-deploy status

# 6. Listar bancos e usuários
conexean-deploy db list

🔧 Configuração

1. Inicializar Projeto

conexean-deploy 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

Exemplos de Uso

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

# Deploy para staging
conexean-deploy deploy --env staging

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

# Rollback para versão específica
conexean-deploy rollback --env production --version v1.2.3

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

🗄️ Comandos de Banco de Dados

Comandos Disponíveis

ComandoDescriçãoOpções
db backupCria backup do banco de produção--env
db backup-localCria backup do banco local-
db restore-localRestaura backup no banco local[file]
db restore-prodRestaura backup local em produção[file]
db createCria banco usando configuração do projeto-
db listLista bancos de dados e usuários--env
db dropRemove banco e usuário do projeto--env, --force, --user, --database

Backup e Restore

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

# Criar backup local
conexean-deploy db backup-local

# Restaurar backup no local
conexean-deploy db restore-local

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

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

# Restaurar backup específico em produção
conexean-deploy 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-deploy 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-deploy db list

# Listar para ambiente específico
conexean-deploy 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-deploy db drop

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

# Remover usuário específico
conexean-deploy db drop --user nome_do_usuario --force

# Remover banco específico
conexean-deploy db drop --database nome_do_banco --force

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

🔧 Configuração de Banco Existente

# Configurar banco existente (usuário, permissões)
conexean-deploy db setup --env production

🚀 Fluxo Completo de Banco de Dados

1. Inicializar Projeto

conexean-deploy init

2. Criar Banco de Dados

conexean-deploy db create

3. Listar Bancos e Usuários

conexean-deploy db list

4. Fazer Backup

conexean-deploy db backup

5. Restaurar Backup (se necessário)

conexean-deploy db restore-local

6. Remover Banco (se necessário)

conexean-deploy 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-deploy 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

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-deploy db list

# Testar criação de banco
conexean-deploy 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 06 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