aboutsummaryrefslogtreecommitdiffstats
path: root/syz-cluster/kernel-disk
Commit message (Collapse)AuthorAgeFilesLines
* syz-cluster: gracefully handle abandoned packed-refs.lockAleksandr Nogikh2025-11-261-0/+4
| | | | | If the previous processing terminated in a non-graceful way, the lock file remains in place and prevents further polls.
* syz-cluster: don't use custom git tree tagsAleksandr Nogikh2025-11-261-1/+0
| | | | | | Since remote branches are already mapped to "tree/name" local branches, there's no need for the special "tree-HEAD" tag anymore. Simplify the code.
* syz-cluster: fetch base kernels more oftenAleksandr Nogikh2025-11-261-2/+2
| | | | | Fetch and do build test of the base kernels 3 times per day instead of 2.
* syz-cluster: log the tip of the polled branchAleksandr Nogikh2025-11-261-0/+1
| | | | | It will help better understand lags between the kernel revision used by syz-cluster and the latest tree commit.
* syz-cluster: preserve branches when cloning a repoAleksandr Nogikh2025-11-171-1/+1
| | | | | | | | Remap remote branches to local ones both when polling remote repositories and when cloning the distributed repository. This will ensure that the branches are still accessible via TreeName/BranchName (it got broken during the latest changes).
* syz-cluster: don't keep kernel fetch jobs for too longAleksandr Nogikh2025-07-281-0/+5
| | | | Set TTL for the workflow and the pods it creates.
* syz-cluster: tolerate remote repo reconfigurationsAleksandr Nogikh2025-07-231-3/+2
| | | | | When updating the reference kernel repo, first remove the link and then add it again.
* syz-cluster: use kubectl for one-off fetch kernels runAleksandr Nogikh2025-05-214-62/+83
| | | | | Refactor the cron job that pulls the base kernels once in a while to enable its manual triggering without installing the Argo CLI utility.
* syz-cluster: use fileserver for GKEAleksandr Nogikh2025-03-052-15/+0
| | | | | On GKE, it's the ony option for ReadWriteMany PVC. Use a custom storage class definition because we use a non-default VPC.
* syz-cluster/Makefile: fix variable substitutionAleksandr Nogikh2025-03-051-0/+1
| | | | | Only replace the variables we intended to fix. This should fix the kernel-disk cron.
* syz-cluster: fetch all kernel trees returned by APIAleksandr Nogikh2025-02-183-49/+75
| | | | | | Add another argo workflows cron job that queries Controller for the list of the trees, mounts the shared kernel repository disk and fetches all the queried kernel trees.
* syz-cluster: configure network policiesAleksandr Nogikh2025-02-171-0/+3
| | | | | Enable egress traffic for all nodes. Configure ingress traffic on the per-need basis.
* syz-cluster: initial codeAleksandr Nogikh2025-01-223-0/+65
The basic code of a K8S-based cluster that: * Aggregates new LKML patch series. * Determines the kernel trees to apply them to. * Builds the basic and the patched kernel. * Displays the results on a web dashboard. This is a very rudimentary version with a lot of TODOs that provides a skeleton for further work. The project makes use of Argo workflows and Spanner DB. Bootstrap is used for the web interface. Overall structure: * syz-cluster/dashboard: a web dashboard listing patch series and their test results. * syz-cluster/series-tracker: polls Lore archives and submits the new patch series to the DB. * syz-cluster/controller: schedules workflows and provides API for them. * syz-cluster/kernel-disk: a cron job that keeps a kernel checkout up to date. * syz-cluster/workflow/*: workflow steps. For the DB structure see syz-cluster/pkg/db/migrations/*.