Sua solicitação de recurso está relacionada a um problema?
Alguns de nós no Artsy estão trabalhando na migração de vários repositórios para usar a liberação automática. Em uma sessão em lote, de alguma forma consegui bagunçar a configuração e usei noReleaseLabels
vez de skipReleaseLabels
em vários dos projetos. Isso causou alguns lançamentos desnecessários.
Descreva a solução que você gostaria
Acho que a configuração deve ser rigorosamente validada. Se houver valores presentes que não fazem parte da configuração (ou seja, noReleaseLabels), o processo de liberação deve falhar. A configuração inválida provavelmente significa que alguém está passando por um momento ruim. Da mesma forma, se um objeto de configuração não corresponder a um tipo esperado, etc. Parece que há um início para um esquema json que poderia ser usado para esse propósito ( auto-rc.json ).
Descreva as alternativas que você considerou
Se você quiser uma abordagem mais leve, eu recomendo no mínimo ter um comando validate
que verifica a validade da configuração.
Jest tem um validador de configuração JSON - https://github.com/facebook/jest/tree/master/packages/jest-validate#jest -validate
Estou trabalhando na criação de um esquema via quicktype .
https://app.quicktype.io?share=vgnvzBMgaixe5c9qUCD2.
Na verdade, também gera código para validá-lo automaticamente ... https://app.quicktype.io?share=yxg2tubeMvnazWyklgkz. Podemos usar algo assim?
eu gosto disso
Na terça-feira, 8 de janeiro de 2019 às 5h54, Orta [email protected] escreveu:
Provavelmente não deveria construir algo se requer um acesso humano a um
site externo IMO, em Perigo que eu gerar
https://github.com/danger/danger-js/blob/master/package.json#L60 JSON
esquemas
https://github.com/danger/danger-js/blob/master/source/danger-incoming-process-schema.json
de tipos TypeScript por meio de um módulo de nó e automatizá-los nas implantações, então
nunca vai sair de sincronia-
Você está recebendo isto porque está inscrito neste tópico.
Responda a este e-mail diretamente, visualize-o no GitHub
https://github.com/intuit/auto-release/issues/143#issuecomment-452306127 ,
ou silenciar o tópico
https://github.com/notifications/unsubscribe-auth/ABIyBDiYG4uWFKH6IdjG862e1UPEQCr3ks5vBKMugaJpZM4ZyUU6
.
quicktype é um pacote npm, mas também possui uma interface web. Eu concordo, deve ser automatizado.
pode pegar uma interface TS e criar um esquema JSON? isso seria incrível
parece que seus links de tipo rápido fazem o que estou descrevendo. isto é tão legal! Fazer essa parte do nosso processo de lançamento seria muito legal.
Talvez pudéssemos até fazer um plugin para publicar como uma extensão VSCode
Eu sou tudo sobre essas duas coisas. Posso trabalhar nisso, mas vou ter que esperar até o fim de semana. Eu vou pegar leve esta noite, ha. Vou ver se consigo configurar a interface typescript para o processo json-schema. Não pense que vai ser muito difícil. A parte mais difícil é descobrir o que deve constar no esquema.
: rocket: O problema foi lançado em v9.15.0
: rocket:
Comentários muito úteis
Eu sou tudo sobre essas duas coisas. Posso trabalhar nisso, mas vou ter que esperar até o fim de semana. Eu vou pegar leve esta noite, ha. Vou ver se consigo configurar a interface typescript para o processo json-schema. Não pense que vai ser muito difícil. A parte mais difícil é descobrir o que deve constar no esquema.