Erro 422 - about.json não existe ao tentar executar watch

Olá,

Espero que alguém possa ajudar aqui.

Para contexto, peguei o fórum atual de uma agência anterior e não trabalhei com Discourse antes desta semana.

Preciso fazer uma modificação no tema (para corrigir o aviso id:discourse.component-template-resolving).

Segui o guia para configurar o CLI. Consegui me conectar à API e baixar os arquivos do tema.

No entanto, quando tento executar discourse_theme watch ., recebo o seguinte erro:

✘ Erro 422 para https://forum.mywebsite.co.uk/admin/themes/import.json: Erro de importação: about.json não existe ou é inválido. Tem certeza de que este é um Tema Discourse?

Verifiquei o seguinte:

  • Estou operando da pasta correta.
  • about.json está nomeado e formatado corretamente
    • Tenho autores e os números de versão nele também
    • A codificação está correta
  • Todos os diretórios existem

Pensei que possivelmente poderia ser as permissões da API, mas se estou conectado e os escopos em admin/api/keys/settings estão corretos e presentes, então certamente não pode ser?

Basicamente, estou preso. Alguém pode me apontar na direção certa?

3 curtidas

Lembro-me de algo semelhante que ainda era um problema de API: você pode verificar a configuração da sua chave de API, ela precisa ser definida como global e definida para um usuário específico, não para todos os usuários.

3 curtidas

Olá Charlie,

Obrigado pela resposta. A chave de API que eu estava usando já estava definida como global e para um usuário específico.

No entanto, criei 2 novas chaves para alguns moderadores/administradores (caso não gostasse do usuário administrador atual) e estou tendo os mesmos resultados novamente.

Obrigado :slight_smile:

1 curtida

Desculpe, apenas para atualizar isto, eu também criei um tema totalmente novo discourse_theme new <dir> e novamente ele falha quando executo o comando watch, então isso descarta que há um problema com o tema (como você mencionou antes)

1 curtida

Infelizmente, esse é o limite do meu conhecimento sobre configuração de “como executar” :sweat_smile:

Tenho certeza de que uma pessoa mais experiente poderá ajudá-lo em breve.

Eu principalmente vi esse erro ao tentar executar o comando em um plugin (o que não funcionará), mas você diz que é um tema, ou com talvez erros de formatação no .json, mas você já verificou isso… :thinking:

2 curtidas

A localização pode variar, mas você já deu uma olhada no seu arquivo ~/.discourse_theme?

Já tive um problema antes em que meu emulador de terminal estava usando o “modo de colagem entre colchetes”.

Você pode ver a diferença abaixo (estas não são chaves reais, eu as cortei para compartilhar)… se você vir algo como a primeira entrada com caracteres de escape, isso está incorreto e não funcionará.

image

Olá Kris,

Obrigado pela resposta, eu não tinha pensado nisso!

Verifiquei meu arquivo discourse_theme e, embora a chave da API estivesse formada corretamente, o próprio arquivo parece um pouco malformado, em comparação com outros exemplos que vi (incluindo o seu).

Vale notar que estou no macOS e este foi o resultado de cat ~/discourse_theme no iTerm.

"/Users/firstname.lastname/_dev/_dru/site-discourse-forum/src":
  url: https://forum.site.co.uk
  theme_id: 2
api_keys:
  ! '':
  https://forum.site.co.uk: [API_KEY]
"/Users/firstname.lastname/_dev/_dru/site-discourse-forum":
  url: https://forum.site.co.uk

Vou prosseguir com a limpeza disso, pois potencialmente pode ser um motivo.

EDIT: Não. Removi o ! ‘ ‘: e a segunda entrada. Mesma coisa. :melting_face:

1 curtida