Fazer checkout de uma versão específica do plugin?

Existe alguma maneira, dentro do app.yml, de fazer o rebuild baixar uma versão específica de um plugin?

Estou trabalhando em uma branch mais antiga que a master. Quando executo ./launcher rebuild app, ele baixa a versão mais recente de um plugin que não controlo. A versão mais recente desse plugin não é compatível com a versão mais antiga do Discourse. Isso faz com que a build falhe no meu ambiente de teste.

Idealmente, estou pensando em algo como o seguinte no app.yml, junto com os outros plugins:

- git clone https://github.com/path/to/plugin.git?commit=ec64234359282

Estou aberto a soluções alternativas. Preciso apenas que o Discourse seja construído com essa versão do plugin.

Você pode usar as opções padrão do git para isso, como a flag -b.

3 curtidas

Infelizmente, o plugin não fornece uma branch nomeada para a versão que estou procurando. Estou tentando obter uma revisão específica (hash do commit) da master. Parece que a opção -b não funciona com hashes de commit.

Pela linha de comando, posso usar git clone e depois git checkout para obter o que preciso. Existe alguma maneira de fazer isso no app.yml?

Ok, a solução do @Falco funcionou, mas precisei fazer de forma indireta.

  1. Fiz um fork do repositório original
  2. Clonei-o localmente na minha máquina de desenvolvimento
  3. Criei minha branch a partir do commit desejado
    • git branch foo ec64ae8
  4. Enviei essa branch para o meu GitHub
    • git push -u origin foo
  5. Atualizei meu app.yml com
    • git clone -b foo git@github.com:my-repo.git

Parece que deveria haver uma maneira mais fácil, mas isso resolve o problema. Obrigado pela orientação, @Falco!

4 curtidas

Sim, estou testando novos plugins, especialmente o plugin de chat, e notei que ele parece ter quebrado no meu site e estou me perguntando como reverter para a versão instalada anteriormente ou até mesmo digitar manualmente a versão do commit que eu gostaria.

Imagino que, no futuro, eu gostaria de ver isso no painel de atualização, algo como o botão “desfazer” para atualização, mas, por enquanto, espero que possa haver pelo menos uma maneira mais rápida do que o que parece ser um esforço mais forçado que você fez para contorná-lo.

1 curtida