[RFC] Patch building and Webhooks API
@yurinnick já está trabalhando nisso.
Desde 1/8/2023.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 20/100
- Tipo de issue
- Funcionalidade
- Clareza
- Precisa de esclarecimento
- Status de atividade
- Estagnada
- Stack de tecnologia
- git, github, gitlab, python
- Domínio
- api, backend, backend-api-design
Direção de pesquisa
Nenhum arquivo, teste ou ponto de entrada é nomeado. Comece lendo o RFC e suas perguntas não resolvidas de Discussion; em seguida, mapeie as quatro áreas de implementação solicitadas: o webhook do Patchwork, os metadados do patch, a aplicação de mbox e as atualizações de checks. O trabalho estará concluído quando houver um contrato de webhook acordado e suporte para compilar, testar e relatar os resultados dos patches.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Webhook API should help to integrate KernelCI with patch management (Patchwork) and version control systems (Github, Gitlab). It will provide interface to trigger non-upstream patch builds that should be able to publish results back later.
Implementation
As the first step, I'd like to implement Patchwork integration with KernelCI. Following changes should be implemented:
- Add
/webhooks/patchworkAPI that will expect certain (TBD) input from Patchwork side, enough to build and test kernel, and report back results - Extend
kernelci.Node,KernelBuildMetadata,kernelci.config.Treewith patch-related fields - Implement patch mbox application on top of git checkout
- Implement Patchwork patch checks update mechanism
Minimal patch information
We need a patch and all dependent patches information, as well as submitter information for email notifications.
{
"patches": [
{
"patchwork_id": "str",
"hash": "str",
"web_url": "str",
"date": "str",
"mbox": "str"
}
],
"submitter": {
"id": "int",
"url": "str",
"name": "str",
"email": "str"
}
}
Discussion
- How to make patches information generic enough to share across multiple systems? Should we make it generic at all?
- How to pass Patchwork specific metadata into
Node?datafield or a separate field? - Calculating and passing revision information
- What data should we expect in
/webhooks/patchwork? (Collaboration with Patchwork developers)
- Linguagem predominante
- Python
- Estrelas
- 10
- Forks
- 21
- Merge médio
- 22min
- PRs com merge (30d)
- 1
Preparar o ambiente
- Inclui um Dockerfile ou arquivo Docker Compose
- Sem modelo de pull request
- Sem guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de kernelci/kernelci-api
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 45/100
kernelci/kernelci-api#706 ·
-
Components/Maestro/API/Local instance says GET /latest/ should return some JSON, but it doesn'tTalvez livre de novo Um pull request para esta issue foi fechado sem ser mesclado. Abertadocumentation
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 35/100
kernelci/kernelci-api#632 · 1 comentário ·
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 20/100
kernelci/kernelci-api#629 ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
kernelci/kernelci-api#608 ·
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 35/100
kernelci/kernelci-api#597 · 2 comentários ·
Todas as issues de kernelci/kernelci-api
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
Mantenedores costumam responder em até 1 dia
-
SR_SECURITY_DESCRIPTOR.fromString drops the SACL when no DACL is presentTalvez já em andamento @paul7436 assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
Mantenedores costumam responder em até 2 dias
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
equinor/fmu-sumo-uploader#302 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
modelscope/evalscope#1821 ·
Mantenedores costumam responder em até 1 dia
-
Sanity on ansible-core devel fails: ignore-2.23.txt references the removed import-3.9 testTalvez já em andamento @yurnov assumiu hoje. Abertaneeds_triage
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 91/100
ansible-collections/kubernetes.core#1275 ·
Mantenedores costumam responder em até 1 dia