Comandos CLI da HubSpot
A CLI conecta suas ferramentas de desenvolvimento local ao HubSpot, permitindo desenvolver no HubSpot CMS usando controle de versão, seu editor de texto favorito e várias tecnologias de desenvolvimento web.
Se estiver começando a desenvolver no HubSpot, confira nosso guia de início rápido, no qual você verá desde a instalação da CLI até como colocar uma página no ar.
Use este guia como referência para os comandos disponíveis e opções de formatação de arquivos das ferramentas de desenvolvimento local do HubSpot. Para saber como usar essas ferramentas, consulte o tutorial de introdução ao desenvolvimento local.
Mostra todos os comandos e suas definições. Para saber mais sobre um comando específico, adicione --help
ao final do comando.
Você pode instalar as ferramentas de desenvolvimento local da HubSpot tanto globalmente (recomendado) quanto localmente. Para instalar as ferramentas HubSpot globalmente, execute o comando abaixo na linha de comando. Saiba mais sobre como instalar pacotes global ou localmente.
Para instalar as ferramentas somente no diretório atual, execute o comando abaixo. Você não precisa instalar localmente se já tiver a CLI instalado globalmente.
Recebeu um erro EACCES ao instalar?
Consulte NPM Como resolver erros de permissão EACCESS ao instalar pacotes globalmente.
A CLI é atualizada regularmente. Para atualizar para a última versão das ferramentas locais, execute:
A CLI mudou de @hubspot/cms-cli
para @hubspot/cli
. Se você ainda estiver usando a cms-cli antiga, precisará desinstalá-la antes de instalar a nova versão.
Para ver a sua versão, execute hs --version
Se o número de versão for inferior a 3.0.0, sua versão é a antiga.
Para desinstalar a versão antiga, execute npm uninstall -g @hubspot/cms-cli
Os comandos a seguir permitem autenticar contas da HubSpot com a CLI para que você possa interagir com a conta. Se você ainda não autenticou uma conta com a CLI, primeiro você executará hs init
para criar um arquivo hubspot.config.yml
, que conterá os detalhes de autenticação de qualquer conta da HubSpot conectada. O resto dos comandos atualizará esse arquivo.
Saiba mais no Guia de introdução ao desenvolvimento local.
Cria o seu arquivo hubspot.config.yml
no diretório atual e configura a autenticação para uma conta. Ao adicionar autenticação a uma nova conta em um arquivo de configuração existente, execute o comando auth. Quando solicitado a fornecer um nome para a conta, não use espaços.
Gera a autenticação para uma conta da HubSpot usando uma chave de acesso pessoal. Você pode gerar sua chave de acesso aqui. Se você já tiver um arquivo hubspot.config.yml
, poderá usar esse comando para adicionar credenciais para contas adicionais. Por exemplo, você pode usar a sua conta de ambiente de testes como um ambiente de desenvolvimento. Quando solicitado a fornecer um nome para a conta, não use espaços.
Lista o nome, o ID e o tipo de autenticação para cada conta no seu arquivo de configuração. Se não vir as contas esperadas, talvez seja necessário executar o comando auth para adicionar as contas ao arquivo de configuração.
Define a conta padrão no arquivo de configuração.
Parameter | Description |
---|---|
accountNameOrID
| Identifique a nova conta padrão pelo seu nome (conforme definido no arquivo de configuração) ou ID. |
Remove uma conta do arquivo de configuração.
Parameter | Description |
---|---|
accountNameOrID
| Identifique a conta para removê-la pelo seu nome (conforme definido no arquivo de configuração) ou ID. |
Remove todas as contas desativadas do seu arquivo de configuração.
Usando a CLI, você pode interagir com o sistema de arquivos do desenvolvedor, que é o sistema de arquivos do Gerenciador de design. Esses comandos permitem criar novos ativos localmente, como módulos e temas, enviá-los para a conta, listar arquivos na conta da HubSpot ou baixar arquivos existentes para o ambiente local.
Lista os arquivos armazenados no sistema de arquivos do desenvolvedor por caminho ou a partir da raiz. Funciona de forma semelhante ao uso de ls
padrão para visualizar o diretório atual no computador.
Argumento | Description |
---|---|
dest
Opcional
| Caminho para o diretório remoto do sistema de arquivos do desenvolvedor do qual você gostaria de listar os arquivos. Se omitido, assume a raiz da conta. |
Busque um arquivo, ou diretório, e suas pastas e arquivos secundários por caminho. Copia os arquivos da sua conta da HubSpot para o ambiente local.
Por padrão, a busca não substituirá os arquivos locais existentes. Para substituir os arquivos locais, inclua o sinalizador --overwrite
.
Argumento | Description |
---|---|
src
Obrigatório
| Caminho nas Ferramentas de design do HubSpot |
dest
Opcional
| Caminho do diretório local em que você gostaria que os arquivos fossem colocados, em relação ao diretório de trabalho atual. Se omitido, esse argumento assumirá o diretório de trabalho atual. |
Opções | Description |
---|---|
--account
| Especifique um Suporta o alias |
--overwrite
| Substitui os arquivos existentes pelos arquivos buscados. |
--mode
| Especifica se deve ser buscado um rascunho ou uma versão publicada de um arquivo no HubSpot. Clique aqui para obter mais informações |
Faça upload de um novo ativo local na sua conta da HubSpot. As alterações carregadas por meio desse comando são publicadas imediatamente.
Argumento | Description |
---|---|
src
Obrigatório
| Caminho para o arquivo local; relativo ao seu diretório de trabalho atual. |
dest
Obrigatório
| Caminho nas Ferramentas de design do HubSpot; pode ser um caminho novo. |
Opções | Description |
---|---|
--account
| Especifique um Suporta o alias |
--mode
| Especifique se os arquivos carregados estão publicados no HubSpot. Consulte "modos" para obter mais informações. |
--clean
| Um sinalizador opcional que excluirá o diretório de destino e seu conteúdo antes de fazer upload. |
Subcomandos | Description |
---|---|
filemanager
| Carrega o diretório src especificado no Gerenciador de arquivos, e não no sistema de arquivos do desenvolvedor no Gerenciador de design. Observação: os arquivos carregados serão definidos como public e ficarão visíveis por qualquer pessoa que tenha a URL. Consulte nossa documentação de ajuda para obter mais detalhes sobre as configurações de visibilidade de arquivos. |
Monitore o diretório local e faça upload automaticamente das alterações nos arquivos salvos em sua conta da HubSpot. Todas as alterações feitas ao salvar serão aplicadas imediatamente.
Considere o seguinte ao usar watch
:
- A exclusão dos arquivos monitorados localmente não os excluirá automaticamente do HubSpot. Para excluir os arquivos, use
--remove
. - Renomear uma pasta localmente causará o upload de uma nova pasta com o novo nome no HubSpot. A pasta existente no HubSpot não será apagada automaticamente. Para apagar a pasta, use
--remove
.
Argumento | Description |
---|---|
src
Obrigatório
| Caminho para o diretório local em que seus arquivos residem, em relação ao diretório de trabalho atual |
dest
Obrigatório
| Caminho nas Ferramentas de design do HubSpot; pode ser um caminho novo. |
Opções | Description |
---|---|
--account
| Especifique um Suporta o alias |
--mode
| Especifique se os arquivos carregados devem ser publicados ou salvos como rascunhos no HubSpot. Saiba mais sobre como usar os modos. |
--initial-upload
| Faz com que um upload inicial ocorra antes que os arquivos salvos tenham ocorrido. Suporta o alias |
--remove
| Causará a exclusão de arquivos não encontrados localmente na sua conta da HubSpot. |
--notify=<path/to/file>
| Registra no arquivo especificado quando uma tarefa de monitoramento é acionada e após os trabalhadores terem ficado ociosos. |
Move arquivos do sistema de arquivos do desenvolvedor de um diretório para outro. Não afeta os arquivos armazenados localmente.
Argumento | Description |
---|---|
src
Obrigatório
| Caminho para o diretório remoto do sistema de arquivos do desenvolvedor em que seus arquivos estão. |
dest
Obrigatório
| Caminho para mover ativos para o sistema de arquivos do desenvolvedor. |
Opções | Description |
---|---|
--account
| Especifique um Suporta o alias |
Cria a estrutura de pasta/arquivo de um novo ativo.
Argumento | Description |
---|---|
type
Obrigatório
| Tipo de ativo. Os tipos compatíveis incluem: |
name
Obrigatório
| O nome do novo ativo |
dest
Opcional
| A pasta de destino do novo ativo, em relação ao seu diretório de trabalho atual. Se omitido, assumirá o diretório de trabalho atual. |
Exclui arquivos, ou pastas e seus arquivos, da sua conta da HubSpot. Não exclui arquivos e pastas armazenados localmente. Este comando tem um alias rm.
Argumento | Description |
---|---|
path
Obrigatório
| Caminho nas Ferramentas de design do HubSpot |
Opções | Description |
---|---|
--account
| Especifique um Suporta o alias |
Você pode incluir um arquivo .hsignore no seu projeto para especificar os arquivos que não devem ser rastreados ao usar a CLI. Esse arquivo funciona de forma similar aos arquivos .gitignore
. Os arquivos que correspondem aos padrões especificados no arquivo .hsignore não serão carregados no HubSpot ao usar o comando upload ou watch.
Por padrão, existem algumas regras que o HubSpot aplica automaticamente. Não é possível substituir estes padrões.
Os seguintes itens são sempre ignorados:
hubspot.config.yml
/hubspot.config.yaml
node_modules
- dependências.*
- arquivos/pastas ocultas*.log
- log de erros NPM- *
.swp
- arquivo de permuta para o estado Vim Icon\\r
- ícone padrão do Finder no Mac OS__MACOSX
- recurso do Mac~
- arquivo de backup do LinuxThumbs.db
- cache de arquivo de imagem do Windowsehthumbs.db
- arquivo de configuração de pasta do WindowsDesktop.ini
- informação dos atributos de pasta personalizada do Windows@eaDir
- pasta "oculta" do diskstation Synology para Windows onde o servidor armazena as miniaturas.
# ignore all files within a specific directory
/ignore/ignored
# ignore a specific file
/ignore/ignore.md
# ignore all .txt files
*.txt
# ignore all log files - useful if you commonly output serverless function logs as files.
*.log
Os comandos do HubDB estão atualmente em Developer Preview. Eles estão disponíveis para uso, mas saiba que estão sujeitos a alteração. As Developer Previews estão sujeitas aos nossos termos de versão beta para desenvolvedores.
Use estes comandos para criar, excluir, buscar e limpar todas as linhas de uma tabela do HubDB. A conta da HubSpot deve ter acesso ao HubDB para usar estes comandos.
Crie uma nova tabela do HubDB na conta da HubSpot.
Argumento | Description |
---|---|
src
Obrigatório
| O arquivo JSON local a ser utilizado para gerar a tabela do HubDB. |
Opções | Description |
---|---|
--account
| Especifique um Suporta o alias |
Faça o download dos dados da tabela do HubDB no seu computador.
Argumento | Description |
---|---|
tableId
Obrigatório
| Identificação da tabela HubDB encontrada no painel do HubDB. |
dest
| O caminho local de destino para armazenar o arquivo |
Quando você busca um HubDB, os dados são armazenados como tablename.hubdb.json
. Quando se cria uma nova tabela, é necessário especificar um arquivo JSON de origem. Abaixo está um exemplo de uma tabela em formato JSON.
Limpar todas as filas de uma tabela do HubDB.
Argumento | Description |
---|---|
tableId
Obrigatório
| Identificação da tabela HubDB encontrada no painel do HubDB. |
Opções | Description |
---|---|
--account
| Especifique um Suporta o alias |
Exclui a tabela HubDB especificada da conta.
Argumento | Description |
---|---|
tableId
Obrigatório
| Identificação da tabela HubDB encontrada no painel do HubDB. |
Opções | Description |
---|---|
--account
| Especifique um Suporta o alias |
Use estes comandos para criar e depurar funções sem servidor (somente CMS Hub Enterprise).
Cria uma função sem servidor usando o comando create. Executar esse comando oferecere uma orientação pelas etapas de criação da função, como nomear seu arquivo pai e função e definir seus métodos e caminho do ponto de extremidade.
Imprime uma lista de todas as funções implantadas da conta, seus endpoints, métodos, os nomes dos segredos que utilizam e a data da última atualização.
Argumento | Description |
---|---|
--account
| O apelido da conta da HubSpot do seu hubspot.config. Este parâmetro é obrigatório se você não tiver um defaultAccount em seu Suporta o alias |
--json
| Saída do JSON para a linha de comando com os dados de todas as funções. Os dados JSON incluem: ID do portal, ID da função, rota, caminho do ativo bruto, método, segredos, datas de criação e última modificação. |
Imprime um log da sua função sem servidor. Exibe qualquer console.logs
contidos na sua função após a execução. Os logs também incluem o tempo de execução. Os logs são mantidos por 90 dias.
Argumento | Description |
---|---|
endpoint-name
Obrigatório
| O nome do endpoint conforme definido no arquivo serverless.json (não o caminho para o arquivo de função). |
--file
| Saída de logs para function.log |
--follow
| Ajuste os logs para obter uma atualização dinâmica enquanto você executa suas funções sem servidor. |
--latest
| Apresenta apenas do log mais recente |
--account
| O apelido da conta da HubSpot do seu hubspot.config. Este parâmetro é obrigatório se você não tiver um defaultPortal em seu hubspot.config. Suporta o alias |
--compact
| oculta a saída/informações do log. Retorna sucesso/erro e o tempo de execução. |
--limit=<number>
| limitar a quantidade de logs exibidos na saída |
Se este erro for mostrado: A server error occurred: WARNING: The logs for this function have exceeded the 4KB limit
, seu registro é muito grande. Isso pode ser causado por vários logs de console separados ou pela tentativa de registrar em logs de console um objeto muito grande. Para resolver isso, reduza o quanto você está tentando registrar, atinja seu endpoint e então execute o comando novamente.
Adicione um segredo à sua conta que pode ser usado dentro das funções sem servidor. Após executar o comando, você será solicitado a digitar o valor do segredo.
Para expor o segredo à sua função, atualize o arquivo serverless.json
com o nome do segredo, tanto para os endpoints específicos em que você deseja usá-lo quanto globalmente, para torná-lo disponível para todos os endpoints.
Argumento | Description |
---|---|
secret-name
Obrigatório
| Nome do segredo. |
secret-value
Obrigatório
| O valor do segredo (detalhes da autenticação ou não). |
Atualize o valor de um segredo em sua conta que pode ser usado dentro das funções sem servidor. Você será solicitado a digitar o valor do segredo.
Argumento | Description |
---|---|
secret-name
Obrigatório
| Nome do segredo. |
secret-value
Obrigatório
| O valor do segredo (detalhes da autenticação ou não). |
Remova um segredo da sua conta, tornando-o não mais utilizável dentro das funções sem servidor. Depois de executar esse comando, edite o arquivo serverless.json
para remover o nome do segredo.
Argumento | Description |
---|---|
secret-name
Obrigatório
| Nome do segredo que deseja remover. |
Liste os segredos dentro da sua conta para saber o que você já armazenou usando o comando add secrets.
Existem partes do aplicativo HubSpot que os desenvolvedores precisam acessar com frequência. Para facilitar o acesso a essas ferramentas, você pode abri-las diretamente da linha de comando. O argumento defaultAccount
ou --account
será usado para abrir a ferramenta associada para aquela conta.
Argumento | Description |
---|---|
shortcut
Obrigatório
| Forneça o nome completo do atalho ou o alias do atalho que você deseja abrir no navegador. |
Argumento | Description |
---|---|
--list
Obrigatório
| Lista todos os atalhos, seus alias e destinos. |
Se você usa a CLI com frequência, talvez seja útil poder autocompletar os comandos usando a tecla tab.
Para Mac OS X
Usa as ferramentas Lighthouse do Google para classificar a qualidade dos temas e modelos quanto ao cumprimento das seguintes categorias:
- Acessibilidade
- Práticas recomendadas da web
- Desempenho
- PWA
- SEO
Os seguintes tipos de modelos são avaliados:
- Landing pages
- Páginas do site
- Posts do blog
- Página de listagens de blog
Se algum modelo não gerar pontuação devido a erros do Lighthouse, eles aparecerão em uma lista.
Parameter | Description |
---|---|
--theme-path
Obrigatório
| Caminho para um tema no Gerenciador de Design. |
--verbose
|
|
--target
| Você pode ver a pontuação respectiva no computador ou no dispositivo móvel. Por padrão, o destino é o computador. |
Ao criar um tema, use o seguinte comando para gerar um arquivo editor-preview.json
, que mapeia os seletores CSS para os campos do tema. Isso permite que os criadores de conteúdo vejam quais elementos do tema serão afetados pelas atualizações nas opções de estilo de um campo.
Depois de executar o comando, você precisará revisar e refinar o arquivo editor-preview.json
para garantir que os campos e os seletores sejam mapeados corretamente. Embora este comando faça uma suposição rudimentar sobre os campos que afetam os seletores, você precisará fazer correções com base em como seu tema é construído. Por exemplo, este comando não detecta quando os módulos substituem o estilo ou quando você usa macros. Saiba mais sobre destaque de campos no editor de temas.
A opção --mode permite determinar se as alterações locais são publicadas ao serem carregadas no HubSpot. Essa opção pode ser utilizada em cada comando ou definida como padrão no arquivo hubspot.config.yml.
As duas opções para --mode são --mode=draft e --mode=publish.
A ordem de precedência para definir --mode é a seguinte:
- Usar --mode em um comando substituirá todas as outras configurações.
- Definir um defaultMode para cada conta no arquivo hubspot.config.yml elimina a necessidade de usar --mode em cada comando. Isso substituirá a configuração de nível superior.
- Definir um defaultMode de nível superior no arquivo hubspot.config.yml define um--mode para todas as contas. Isso substituirá o comportamento padrão.
- O comportamento padrão para --mode é publish
A CLI da HubSpot oferece suporte ao uso de variáveis de ambiente. Isso pode ser especialmente útil ao criar automatizações, como uma ação do GitHub.
Execute qualquer comando com o sinalizador --use-env
para usar as variáveis de ambiente ao invés de hubspot.config.yml
.
Nome | Description |
---|---|
HUBSPOT_PORTAL_ID
Obrigatório
| O ID da conta da HubSpot. |
HUBSPOT_PERSONAL_ACCESS_KEY
Recomendado
| A chave de acesso pessoal de um usuário na conta da HubSpot. Todas as atualizações feitas serão associadas a este usuário. |
HUBSPOT_CLIENT_ID
| O ID do cliente de OAuth. |
HUBSPOT_CLIENT_SECRET
| O segredo de OAuth. |
Observação: a partir de 30 de novembro de 2022, as chaves de API da HubSpot serão desativadas e não terão mais suporte. Continuar usando as chaves de API da HubSpot representará um risco de segurança para sua conta e dados. Durante esta fase, a HubSpot poderá desativar sua chave a qualquer momento.
Você deve autenticar usando um token de acesso de aplicativo privado ou OAuth. Saiba mais sobre essa alteração e como migrar uma integração de chave de API para usar um aplicativo privado.
A CLI fornece um conjunto de testes automatizados que você pode executar em seus ativos para alinhá-los com os requisitos do marketplace antes de enviá-los. Obter aprovação em todos os testes automatizados não significa que você passará no processo de revisão; uma revisão adicional é conduzida para garantir a qualidade além do que pode ser facilmente automatizado.
O comando de validação do tema permite executar rapidamente testes automatizados no seu tema para identificar problemas que precisam ser corrigidos antes do envio ao marketplace de ativos. Eles serão retornados na CLI como uma lista de mensagens [erro] e [sucesso] separadas em grupos que representam os tipos de ativos dentro de um tema.
Antes de validar um tema, você precisará primeiro enviá-lo para sua conta com hs upload
. Em seguida, execute o seguinte comando para validar o tema carregado.
Argumento | Description |
---|---|
src
Obrigatório
| Caminho raiz relativo para a pasta do tema no gerenciador de design. |
Assim como a validação do tema, esse comando permite executar rapidamente testes automatizados em um módulo para identificar problemas que precisam ser corrigidos antes do envio ao marketplace de ativos.
Antes de validar um módulo, você precisará primeiro enviá-lo para sua conta com hs upload
. Em seguida, execute o seguinte comando para validar o módulo carregado.
Argumento | Description |
---|---|
src
Obrigatório
| Caminho raiz relativo para a pasta do módulo no gerenciador de design. |
Agradecemos pelos seus comentários. Eles são muito importantes para nós.