desenvolvimento · Referência do comando
qzx deployProject
O que faz
Visualiza ou implanta um artefato explícito por SSH com backup remoto verificado, validação SHA-256, promoção atômica, verificação de saúde e rollback automático.
Maturidade do comando: Alpha
Disponível para uso real e feedback enquanto a interface e o comportamento ainda podem evoluir. Esta é a avaliação atual do checkout de desenvolvimento. Cada tag de release imutável futuro preservará a avaliação exata incluída nessa versão. Disponível no PyPI 0.2.2.0.9. A documentação corresponde ao checkout alpha 0.2.2.0.9.
Comportamento e proteções integradas
O modo real aplica as alterações solicitadas
Prévia disponível
Usa uma ferramenta nativa quando necessário
Usa a rede para a tarefa documentada
Usa suas permissões atuais; o resultado pode variar
O modo padrão apenas mostra uma prévia e não abre conexão. Um deploy real exige uma identidade SSH já conhecida —pelo arquivo normal do OpenSSH ou por known_hosts explícito—, faz primeiro backup do artefato local e do estado remoto, envia para um diretório novo, verifica cada arquivo com SHA-256, promove dentro do mesmo sistema de arquivos e exige uma verificação HTTP(S) sem segredos na URL. Se ela falhar, restaura automaticamente o estado remoto anterior. O QZX não compila, não usa rsync --delete, não altera permissões, não executa comandos remotos arbitrários nem reinicia serviços; também não exclui automaticamente os caminhos de backup ou recuperação retornados.
O QZX cria um arquivo de recuperação antes das alterações reais; use --dangerously-bypass-approvals-and-sandbox/--yolo somente quando decidir ignorá-lo deliberadamente.
Usa o serviço externo documentado e compartilha somente os dados descritos abaixo.
Esta classificação de segurança foi revisada por OpenAI GPT-5.6 Pro em relação ao digest de implementação sha256:240e73f477e23633addd75a0fcc9da0ec756665594164338a747bec91d09d58d em 2026-08-25.
Sintaxe exata
qzx deployProject <target_host> [path] <target_path> [port] [ssh_key] [known_hosts] [health_url] [health_expect] [health_attempts] [health_interval] [health_timeout] [deployment_id] [dry_run] --jsonParâmetros
Deslize ou use a barra horizontal para ver todas as colunas.
| Nome | Tipo | Obrigatório | Padrão | Descrição |
|---|---|---|---|---|
| target_host | str | Sim | Não declarado | Destino SSH no formato host ou usuário@host |
| path | str | Não | "." | Diretório local explícito do artefato que será implantado; o QZX nunca o compila nem o substitui pela raiz do projeto |
| target_path | str | Sim | Não declarado | Diretório remoto absoluto que se tornará a versão ativa |
| port | int | Não | 22 | Porta SSH |
| ssh_key | str | Não | Não declarado | Arquivo local opcional da chave privada SSH |
| known_hosts | str | Não | Não declarado | Arquivo OpenSSH known_hosts explícito e opcional usado para verificar a identidade do servidor remoto |
| health_url | str | Não | Não declarado | Endpoint HTTP(S) sem credenciais, query nem fragmento; obrigatório para um deploy real e verificado após a promoção |
| health_expect | str | Não | Não declarado | Texto opcional que deve aparecer no corpo da resposta de saúde |
| health_attempts | int | Não | 5 | Quantidade de tentativas de verificação de saúde, entre 1 e 20 |
| health_interval | float | Não | 2 | Segundos entre tentativas de saúde, entre 0 e 30 |
| health_timeout | float | Não | 5 | Tempo limite de cada tentativa de saúde, entre 0,1 e 30 segundos |
| deployment_id | str | Não | Não declarado | Identificador estável opcional incorporado aos caminhos de auditoria e recuperação |
| dry_run | bool | Não | true | Visualiza o artefato exato e todos os caminhos remotos sem se conectar |
Exemplos de entrada
qzx deployProject --target-host [email protected] --path ./dist --target-path /srv/example/currentInspecionar o artefato e visualizar todos os caminhos remotos de recuperação
qzx deployProject --target-host [email protected] --path ./dist --target-path /srv/example/current --health-url https://example.test/health --health-expect "ready" --dry-run falseFazer backup do artefato e executar um deploy verificado
Para obter o payload estruturado completo, adicione --json: qzx deployProject <target_host> [path] <target_path> [port] [ssh_key] [known_hosts] [health_url] [health_expect] [health_attempts] [health_interval] [health_timeout] [deployment_id] [dry_run] --json
Exemplo de saída representativa
Este JSON ilustrativo deriva do contrato de resultado respaldado pela implementação atual. Mostra o que o comando pode retornar sem afirmar que seja uma execução gravada; os valores variam conforme entradas, máquina, permissões e ferramentas opcionais.
Comando do exemplo: qzx deployProject --target-host [email protected] --path ./dist --target-path /srv/example/current --json
{
"success": true,
"message": "Previews or deploys one explicit artifact over SSH using a verified remote backup, SHA-256 validation, atomic promotion, health checks, and automatic rollback. In this illustrative example, the command completed successfully.",
"meta": {
"command": "deployProject",
"command_maturity": {
"stage": "alpha",
"label": "Alpha",
"sequence": 2,
"public_executable": true,
"stability": "interface_may_change",
"summary": "Available for real use and feedback while its interface and behavior can still evolve.",
"promotion_review_required": false,
"assessment_scope": "development_checkout"
},
"duration_ms": 0,
"schema_version": 1
},
"details": {
"summary": "Additional structured context is included here."
}
}Ver o contrato de resultado JSON
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"required": [
"success",
"message",
"meta"
],
"properties": {
"success": {
"type": "boolean"
},
"message": {
"type": "string"
},
"meta": {
"type": "object",
"required": [
"command",
"command_maturity",
"duration_ms",
"schema_version"
],
"properties": {
"command": {
"type": "string"
},
"command_maturity": {
"type": "object",
"required": [
"stage",
"label",
"sequence",
"public_executable",
"stability",
"summary",
"promotion_review_required",
"assessment_scope"
],
"properties": {
"stage": {
"type": "string"
},
"label": {
"type": "string"
},
"sequence": {
"type": "integer"
},
"public_executable": {
"type": "boolean"
},
"stability": {
"type": "string"
},
"summary": {
"type": "string"
},
"promotion_review_required": {
"type": "boolean"
},
"assessment_scope": {
"type": "string"
},
"note": {
"type": "string"
},
"review": {
"type": "object",
"required": [
"reviewed_on",
"rationale",
"evidence"
],
"properties": {
"reviewed_on": {
"type": "string",
"format": "date"
},
"rationale": {
"type": "string"
},
"evidence": {
"type": "array",
"minItems": 1,
"items": {
"type": "string"
}
},
"replacement": {
"type": "string"
}
},
"additionalProperties": false
}
},
"additionalProperties": true
},
"duration_ms": {
"type": "number"
},
"schema_version": {
"type": "integer"
}
},
"additionalProperties": true
},
"details": [],
"error": [],
"error_code": []
},
"additionalProperties": true
}Erros e limites
O contrato público exige success=false e uma message descritiva em caso de falha. Este catálogo ainda não declara uma taxonomia de erros específica para cada comando; revise o resultado e não infira códigos inexistentes.
O QZX está em alpha. Dependências opcionais, permissões e recursos do host podem alterar o resultado.
Fluxo de evidência: requer um endpoint autorizado ou uma fixture revisada.
Evidência e procedência
- Implementação
- src/qzx/commands/development/deploy_project.py
- Canal de documentação
- Documentação de desenvolvimento 0.2.2.0.9 · main · sha256:cfba936e39931c286ca23add0ae546693db17d8b316e7cbc3891d26642d9b7e8
- Disponibilidade
- 0.2.2.0.9 ou anterior
Continue explorando
Comandos relacionados
Estes comandos também pertencem à categoria desenvolvimento. Compare-os para escolher a operação que melhor resolve sua tarefa.
qzx compareFilesCompara arquivos de texto linha a linha e arquivos binários por bytes exatos e SHA-256.qzx diagnoseProjectInspeciona tecnologias, dependências, fluxos de validação, estado do Git, qualidade do código e arquivos grandes sem executar scripts do projeto.qzx cleanDevelopmentArtifactsProcura caches, dependências instaladas e artefatos de compilação gerados; por padrão, apenas mostra uma prévia.qzx findUnusedCodeProcura funções, classes e exportações sem referências visíveis para revisão antes de removê-las.