Skip to content
Draft

Flyte 2 #6583

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
246 commits
Select commit Hold shift + click to select a range
2abeb94
Add IDL 2.0 and minimal automation (#6582)
EngHabu Aug 22, 2025
25fd8d6
python version fix and use OIDC to authenticate crates (#6584)
EngHabu Aug 22, 2025
82a41b6
Add Abort APIs (#6590)
EngHabu Aug 25, 2025
4534029
Rename idl packages to flyteidl2 (#6586)
EngHabu Aug 26, 2025
2ffc5eb
Rename idl2 -> flyteidl2 and many fixes in generation (go, python) (#…
EngHabu Sep 22, 2025
84d3182
Enghabu/trigger ap is (#6642)
EngHabu Sep 30, 2025
d58bab0
Fix cargo build and add CI check (#6645)
EngHabu Sep 30, 2025
1993238
Vendor in python buf dependencies (#6651)
wild-endeavor Oct 3, 2025
145765c
Accelerator device class (#6654)
jeevb Oct 3, 2025
7bb0db0
wip
EngHabu Oct 3, 2025
075f324
queue service implementation
EngHabu Oct 3, 2025
987d536
Support sqllite
EngHabu Oct 3, 2025
aa24751
Runs service
EngHabu Oct 4, 2025
3ef9544
Connect RunService to QueueService
EngHabu Oct 4, 2025
83acecf
Triggers API adjustments (#6655)
iaroslav-ciupin Oct 7, 2025
cda285a
RunService.CreateRun from_automation flags (#6653)
iaroslav-ciupin Oct 8, 2025
a480286
Cleanup triggers api (#6666)
iaroslav-ciupin Oct 9, 2025
b0b4fa9
Accidental merge
EngHabu Oct 10, 2025
7b49083
Merge remote-tracking branch 'origin/v2' into v2
EngHabu Oct 10, 2025
cb20874
Fix buf lint that comes up in buf 1.58 (#6670)
hamersaw Oct 10, 2025
e6eb0b6
Add a debuggable flag in TaskTemplate (#6658)
pingsutw Oct 10, 2025
543b26e
Add PoetryProject to Layer proto file (#6665)
popojk Oct 10, 2025
c8d59c4
make state service unary apis (#6649)
hamersaw Oct 10, 2025
e4028b7
Add RawDataStorage and SecurityContext to RunSpec proto file (#6663)
popojk Oct 10, 2025
33435bb
Add dask plugin proto (#6667)
pingsutw Oct 10, 2025
3fe3c1e
Add Spark proto (#6660)
pingsutw Oct 10, 2025
97bd388
Add ray plugin idl (#6675)
pingsutw Oct 14, 2025
edc657e
Move debuggable field to TaskMetadata (#6679)
pingsutw Oct 15, 2025
09887fa
Add triggers api validation annotations (#6680)
iaroslav-ciupin Oct 15, 2025
2378cd5
Use Docker images locally and in CI (#6671)
EngHabu Oct 16, 2025
2c48982
Don't publish SHA image when merging to v2 or main (#6684)
EngHabu Oct 18, 2025
13a2bd7
Fix trigger automation type enum (#6691)
iaroslav-ciupin Oct 22, 2025
2fb5ccc
Pytorch proto v2 migration (#6689)
WangWang0226 Oct 23, 2025
8d3e134
Add metadata to list task response proto (#6683)
machichima Oct 24, 2025
fd008dc
Extend task triggers summary (#6696)
iaroslav-ciupin Oct 24, 2025
4f1e4d4
[FEAT] add List versions request and response (#6687)
machichima Oct 25, 2025
e2c9e9c
Add apps protos (#6693)
EngHabu Oct 29, 2025
74bc4ae
Add Connector proto (#6659)
pingsutw Oct 29, 2025
ecf7aeb
fix npm publish
EngHabu Oct 30, 2025
8620427
Fix rust cargo publish
EngHabu Oct 30, 2025
33e5997
Generate missing imports in typescript (#6713)
EngHabu Nov 1, 2025
0344daf
Trigger cron expression timezone (#6716)
iaroslav-ciupin Nov 4, 2025
4d0c21a
Fix trigger cron expression timezone (#6720)
iaroslav-ciupin Nov 6, 2025
91ba87d
v2 backend - stubs (#6697)
EngHabu Nov 6, 2025
a4cbb59
Add CacheConfig to RunSpec (#6723)
EngHabu Nov 7, 2025
afef7ea
Nary/watch groups (#6712)
machichima Nov 12, 2025
b8f6d98
Mild cleanup and compilation fix (#6732)
Sovietaced Nov 12, 2025
d503335
[Fix] Downgrade otel to 1.37 (#6729)
machichima Nov 12, 2025
c148158
Generate mocks for app package (#6734)
iaroslav-ciupin Nov 12, 2025
f9bdf96
Add list runs proto fields (#6709)
popojk Nov 13, 2025
9390f8e
[Proto] add created_by to task group (#6736)
machichima Nov 13, 2025
2d3bd7d
[Proto] Change created by to repeat EnrichedIdentity (#6739)
machichima Nov 14, 2025
a108211
fix(runs/docker): enable CGO for go-sqlite3 and include gen/go in bui…
WangWang0226 Nov 20, 2025
79c9daf
Add description field in task and trigger protos (#6722)
popojk Nov 24, 2025
2c27c83
[Proto] Watch group add known sort fields (#6760)
machichima Nov 27, 2025
58533e4
[Proto] Move action phase from workflow to common proto (#6765)
machichima Dec 2, 2025
864b0e3
[Proto] Add latest run to list task response (#6761)
machichima Dec 3, 2025
c83923b
fix proto (#6685)
popojk Dec 4, 2025
4acab94
Copy v2 plugins (#6718)
pvditt Dec 4, 2025
6d726ae
[Proto] add short name to watch group task group response (#6781)
machichima Dec 5, 2025
cbb9552
build: downgrade otel (#6787)
machichima Dec 5, 2025
a1551a4
flyteidl crate remove extension module (#6789)
wild-endeavor Dec 8, 2025
8d49876
add CODEOWNERS (#6794)
EngHabu Dec 9, 2025
dda24f4
Add queue dockerfile (#6767)
WangWang0226 Dec 10, 2025
d3e834f
Store run source in ActionMetadata (#6793)
iaroslav-ciupin Dec 10, 2025
913f425
Move the connector proto to the connector folder (#6797)
pingsutw Dec 11, 2025
4e97c91
Add created_at field to TriggerRevision (#6803)
iaroslav-ciupin Dec 13, 2025
ab2f36b
Add tasklog in the TaskMetadata
pingsutw Dec 16, 2025
8f5cb42
Revert "Add tasklog in the TaskMetadata"
pingsutw Dec 16, 2025
a5a39df
Add tasklog in the TaskMetadata (#6807)
pingsutw Dec 22, 2025
775ce03
[Run Service] Refactor runservice (#6810)
machichima Dec 23, 2025
0b88b4f
feat: add error counts for task group proto (#6808)
machichima Dec 23, 2025
50f310e
Mirgate Copilot (#6804)
BarryWu0812 Dec 23, 2025
0e4af6b
Add task service (#6813)
machichima Dec 25, 2025
ba49efe
[Test] Add Task service api test structure and for DeployTask (#6823)
machichima Dec 29, 2025
e97d279
Fix: Add timestamps to task creation (#6825)
yuhuan130 Dec 30, 2025
d06c130
[Executor] Update taskaction cr (#6826)
machichima Jan 5, 2026
db0ba2f
Support executor (#6792)
pvditt Jan 5, 2026
5bbd2b5
Add test for TaskService.ListVersions and test script (#6833)
kevinliao852 Jan 6, 2026
ae10f2b
[Test] Task service api test fix review (#6830)
machichima Jan 6, 2026
62fd162
[v2] Refactor: Define all mockery in .mockery.yaml (#6829)
majiayu000 Jan 12, 2026
20365f6
test: add API test for ListTasks endpoint (#6842)
lowc1012 Jan 12, 2026
fcef078
[Fix] Ignore cargo lock (#6844)
machichima Jan 13, 2026
0cb3309
[Feat][v2] Add data proxy (#6851)
machichima Jan 13, 2026
ef0c2ed
apply mockery in queue_service_test (#6859)
WangWang0226 Jan 16, 2026
548b2eb
[V2] Dataproxy add gateway (#6866)
machichima Jan 21, 2026
bb47e48
Add test script for GetTaskDetails (#6841)
aniket2405 Jan 23, 2026
4c8cc6f
feat: add phase counts (#6862)
machichima Jan 26, 2026
54f428b
build: pin openapiv2 version to prevent panic (#6870)
machichima Jan 26, 2026
98c0dac
feat: include run name in recent statuses (#6871)
machichima Jan 27, 2026
494cca8
Add auth and identity proto (#6850)
pingsutw Jan 29, 2026
d22313a
Add connector plugin (#6861)
pingsutw Jan 30, 2026
efa4f95
Always set enableServiceLinks to false (#6884)
pingsutw Jan 30, 2026
50644f7
JsonValuesToLiterals (#6878)
ursucarina Jan 31, 2026
83d8cf3
Build SubmitterPodTemplate with default toleration and disable Enable…
pingsutw Feb 4, 2026
19c2c00
Stable sort ImagePullSecrets to avoid spec change errors (#6886)
EngHabu Feb 4, 2026
e12798b
Typed interface migrate (#6721)
machichima Feb 4, 2026
ad5838e
update log context (#6894)
pingsutw Feb 4, 2026
05e39be
Fix RayJob submitter pod affinity to use default config (#6897)
pingsutw Feb 5, 2026
bce8228
V2 - auth and project service crate updates (#6907)
wild-endeavor Feb 9, 2026
b629550
feat(workflow): add ActionsService proto for action state APIs (#6899)
SVilgelm Feb 10, 2026
ff3274a
[Protio] Watch group add run phases avg time delta in response (#6889)
machichima Feb 11, 2026
8e48016
Add app crate (#6913)
pingsutw Feb 11, 2026
7c3649a
rename the module from auth to app (#6915)
pingsutw Feb 11, 2026
efde4a1
feat(idl/actions): Add Actions message and change EnqueueRequest to u…
SVilgelm Feb 12, 2026
b142044
Add permission action proto (#6898)
popojk Feb 13, 2026
2ab9a98
Fix vet issues (#6901)
EngHabu Feb 27, 2026
6a55582
[V2] Migrate action service (#6949)
machichima Feb 28, 2026
199f480
fix: handle task execution errors in k8s plugin resource phase check
pingsutw Feb 28, 2026
cc0535a
Add source_dir to UVProject proto (#6939)
pingsutw Feb 28, 2026
b5d03e7
feat(flyteidl2): add image_build_url field to TaskMetadata proto (#6…
AdilFayyaz Mar 2, 2026
e69af00
Fix duplicate VolumeMounts when merging pod templates (#6958)
pingsutw Mar 2, 2026
abfc718
Add label for gpu partitions used (#6921)
katrogan Mar 4, 2026
ae69b58
improved readme for 2.0
kumare3 Mar 4, 2026
2834db0
[flyteidl2] Generate mocks for Actions service (#6962)
pvditt Mar 4, 2026
7dee1fb
Bump OTel SDK to v1.40.0 and fix semconv schema conflict (#6965)
jmonty42 Mar 4, 2026
04dc3da
[V2] Add Internal run service (#6956)
machichima Mar 5, 2026
69216b8
Revert "Bump OTel SDK to v1.40.0 and fix semconv schema conflict (#69…
jmonty42 Mar 5, 2026
fdceda4
Add proto files for domain service (#6891)
afbrock Mar 6, 2026
3230f3c
Add OppoBloomFilter to deduplicate RecordAction calls (#6987)
pingsutw Mar 9, 2026
463cce7
fix: correct TaskAction CR/pod names and namespaces, improve run ID g…
AdilFayyaz Mar 9, 2026
000d9ac
fix: set explicit 5-minute timeout on TaskAction watch (#6996)
pingsutw Mar 9, 2026
5a3e0e6
[V2]Sandbox for flyte v2 (#6955)
popojk Mar 10, 2026
af8de97
[V2][Feat] Add events service (#6970)
machichima Mar 10, 2026
cc948ba
Add IdentityService (UserInfo) stub to runs service (#6997)
pingsutw Mar 10, 2026
24da84f
[V2] Add GitHub Actions workflow for Go unit tests (#6999)
pingsutw Mar 11, 2026
285e6c1
[V2] Add project service (#7000)
machichima Mar 11, 2026
df8959c
[V2] Add TaskAction garbage collector for terminal CRDs (#6994)
pingsutw Mar 11, 2026
5d6477c
Add include_system_secrets to secrets apis (#7007)
katrogan Mar 11, 2026
0444f0e
Add TaskAction validation before finalizer registration (#7006)
AdilFayyaz Mar 11, 2026
4f001cb
Notifications IDL (#6946)
iaroslav-ciupin Mar 11, 2026
b67daf7
Fix Docker build for CGO-dependent sqlite3 package (#7014)
pingsutw Mar 12, 2026
967627c
notification event type IDL (#7021)
iaroslav-ciupin Mar 12, 2026
d63609a
Add DisableConfigEndpoint option to profutils Config to allow disabli…
EngHabu Mar 12, 2026
2716120
[Sandbox][RunService]Switch database from sqlite to postgresql (#7018)
popojk Mar 13, 2026
8d586bd
[V2] Run Service - Watch action cache (#7017)
machichima Mar 13, 2026
de03a84
Add new role ROLE_TYPE_SYSTEM_PROVISIONED_ACCESS for default system b…
katrogan Mar 13, 2026
9ffc84f
minio patch (#7027)
AdilFayyaz Mar 13, 2026
1f91f85
Add log links support to task template (#7030)
pingsutw Mar 13, 2026
1ef5450
feat(runs): wire AbortRun and AbortAction through to ActionsService …
AdilFayyaz Mar 14, 2026
a2df398
Fix problems including missing charts and the kubeconfig permission (…
0yukali0 Mar 16, 2026
f11aad3
Adjust notifications IDL to support notifications per phases (#7025)
iaroslav-ciupin Mar 16, 2026
7902aec
Add node_name to the container selector (#7036)
eyakubovich Mar 16, 2026
e001908
Migrate #6785 in v1 to v2 (#6918)
BarryWu0812 Mar 17, 2026
c94a9a1
feat+test: write empty input Literal if no input (#7055)
machichima Mar 19, 2026
eead96d
Ensure GetActionDetails works expected (#7022)
pingsutw Mar 19, 2026
99bb49e
Fix: [Run Service] Ensure GetActionData works expected (#6991)
SharpKoi Mar 19, 2026
5cb3245
[Flyte 6973] Attached action details to `ListRuns` response (#7026)
0yukali0 Mar 19, 2026
5607b11
[V2]Sandbox webhook (#7034)
popojk Mar 19, 2026
a905fd0
[V2]Add secret service (#7039)
popojk Mar 20, 2026
521232a
fix: add ProjectService to envoy proxy (#7059)
machichima Mar 20, 2026
f73e7f2
Fix CreateRun response, output URI, and GetActionData (#7064)
pingsutw Mar 21, 2026
463c448
[V2][Bug] Fix sandbox dev mode dir permission error (#7061)
popojk Mar 21, 2026
5a0f704
Add IsEntryPoint and CodeBundlePath to taskTemplate metadata (#7071)
EngHabu Mar 21, 2026
c381214
[V2][Bug] Fix WatchActionDetails to return full action details in str…
pingsutw Mar 23, 2026
9bf9792
Fix manager hanging on shutdown (#7057)
pingsutw Mar 23, 2026
d4a1ed7
[V2] add dummy trigger and app service (#7077)
machichima Mar 23, 2026
dfe433d
settings proto definitions (#7049)
afbrock Mar 23, 2026
2ac5750
[V2] Add attempt and cache status (#7078)
machichima Mar 23, 2026
c599e60
[V2][Sandbox]Add console to sandbox (#7074)
popojk Mar 24, 2026
2e36121
[V2] Add Cache service (#7035)
machichima Mar 24, 2026
7416d4e
[V2] Run Service - Add the field that GetRunDetails expected (#6977) …
SZL741023 Mar 24, 2026
ec0b08a
[V2]Add sandbox image auto iterate CI (#7063)
popojk Mar 24, 2026
04494c4
feat: add start/end time + duration + metadata (#7081)
machichima Mar 24, 2026
5eab149
feat: add app and trigger service to proxy (#7082)
machichima Mar 24, 2026
dfb4732
feat: update gc and log level config (#7083)
machichima Mar 24, 2026
7c00cc4
[V2] Read user run context (#7084)
machichima Mar 24, 2026
162e684
[V2] Add RunLogsService for streaming pod logs (#7072)
pingsutw Mar 24, 2026
141745c
Add connectrpc Python stubs for flyteidl2 (#7086)
jeevb Mar 25, 2026
9561ff2
add crd sync logic (#7087)
popojk Mar 25, 2026
da1fc32
decrease readness and liveness prob of sandbx and proxy pod (#7088)
popojk Mar 25, 2026
a8d8f23
[v2] Event update time bug (#7090)
machichima Mar 25, 2026
3bb0827
feat(runs): async abort reconciler with retry and crash recovery (#7080)
AdilFayyaz Mar 25, 2026
3b803b9
[V2]Fix secret injection error in sandbox (#7101)
popojk Mar 27, 2026
0e78c27
fix: send actual EndTime in UpdateActionStatus to fix inflated durati…
pingsutw Mar 27, 2026
dfb45ae
[Run Service] Add CreateRun default-input and response contract tests…
WangWang0226 Mar 27, 2026
4ba6739
fix: adjust name for ActionIdentifier to a fixed value "a0" (#7092)
SZL741023 Mar 27, 2026
0e0bbd3
fix: suppress pflag usage output on startup errors (#7106)
pingsutw Mar 27, 2026
12de8a2
[v2] DB migration with version (#7103)
machichima Mar 27, 2026
90ec0f3
Use dedicated connection for NOTIFY to avoid pool contention (#7107)
pingsutw Mar 28, 2026
2731633
feat(executor): in-place task retry with scoped output paths per atte…
AdilFayyaz Mar 28, 2026
47272c4
fix: pin docker-registry haSharedSecret to avoid sandbox manifest chu…
pingsutw Mar 28, 2026
2559dde
fix(connector): move plugin initialization into PluginLoader for lazy…
pingsutw Mar 28, 2026
b4f37d0
[V2] Set global secret if both project and domain not provided (#7102)
popojk Mar 30, 2026
6f95e8d
fix(runs): allow phase update after terminal state for retry (#7120)
pingsutw Mar 31, 2026
86f40da
[V2] Pass run context to subaction + return in GetRunDetails (#7094)
machichima Mar 31, 2026
604eb30
merge k3s kubeconfig to default kubeconfig (#7113)
popojk Mar 31, 2026
36fa268
fix(runs): fix B-tree index contention on actions table (#7122)
AdilFayyaz Mar 31, 2026
8d60410
perf: parallel worker pool for TaskAction watch event processing (#7119)
AdilFayyaz Mar 31, 2026
900685f
[v2] Event watcher (#7091)
machichima Apr 1, 2026
7cfb546
[v2] Informer cache (#7129)
machichima Apr 1, 2026
7c3067e
[v2][Service] Change the return of the app and trigger service endpoi…
SZL741023 Apr 1, 2026
3c0fab0
README updated (#7131)
kumare3 Apr 1, 2026
00ee705
[CON2-143] Add provider based email templates for notifications (#7126)
pmahindrakar-oss Apr 1, 2026
d83b553
fix: sanitize generatedName in tasklog template to be DNS-1123 compat…
pingsutw Apr 1, 2026
f01bedc
Remove buildkit server from sandbox (#7132)
pingsutw Apr 1, 2026
a58cfc3
feat(sandbox): Replace PostgreSQL pod with embedded-postgres (#7123)
pingsutw Apr 1, 2026
279c32e
Replace envoy proxy with Traefik ingress in sandbox (#7134)
pingsutw Apr 1, 2026
6be7e1a
fix: always call writeOutput on connector SUCCEEDED to support file-b…
pvditt Apr 1, 2026
2cf0a08
feat: phase info reason to cluster event (#7142)
machichima Apr 2, 2026
80721af
fix: set isDir to true when upload dir (#7143)
machichima Apr 2, 2026
44dd008
Return dataproxy url in publicconfig api and implement auth metadata …
katrogan Apr 2, 2026
e4a5fb0
fix: propagate action group through TaskAction CRD to runs service (#…
AdilFayyaz Apr 2, 2026
6185780
fix(actions): remove minimum length validation from state field (#7136)
SVilgelm Apr 2, 2026
40e9c4a
Remove kubernetes-dashboard from sandbox (#7140)
pingsutw Apr 2, 2026
1d75de6
Migrate mockery from v2 to v3.7.0 (#7148)
SVilgelm Apr 3, 2026
987377d
refactor settings api to be simpler and more type safe (#7127)
afbrock Apr 3, 2026
249a0ec
Create separate CreateRun & UploadInputs APIs (#7139)
katrogan Apr 3, 2026
fef062b
Implement CreateRun and UploadInputs APIs (#7152)
katrogan Apr 3, 2026
57c779f
fix: add git safe.directory config for publish-python workflow (#7156)
pingsutw Apr 3, 2026
9b5cffb
Remove org field from tables, CRD, and API layer (#7157)
pingsutw Apr 5, 2026
910d408
add dummy org (#7158)
popojk Apr 6, 2026
2a59e0b
[V2] Implement trace action (#7151)
popojk Apr 6, 2026
8e1634a
[V2] Remove sqlite (#7159)
popojk Apr 6, 2026
e0df138
feat: add Knative serving dependency and app service config structs (…
AdilFayyaz Apr 7, 2026
f5d7b79
[V2] Fix pod owner reference to enable watch-triggered reconciles (#7…
pingsutw Apr 8, 2026
94a1c31
fix watch run not updating (#7169)
popojk Apr 8, 2026
c11628a
[V2] Replace GORM with sqlx for database operations (#7160)
pingsutw Apr 8, 2026
4f65725
[V2] Speed up check-generate CI with parallelization, caching, and ca…
pingsutw Apr 8, 2026
9cb3b78
[V2] Rename flyte-sandbox to flyte-demo and simplify pod names (#7170)
pingsutw Apr 9, 2026
8a71b35
Add .gitattributes to collapse generated files and mocks in Github di…
katrogan Apr 9, 2026
82ae70b
[V2] Dataproxy support CreateDownloadLink (#7191)
machichima Apr 10, 2026
7c9bc03
[V2] Add Trigger service and Scheler (#7163)
machichima Apr 10, 2026
ffb5abb
Add cluster service and SelectCluster method (#7187)
katrogan Apr 10, 2026
04515a5
Revert "[V2] Dataproxy support CreateDownloadLink (#7191)" (#7195)
pingsutw Apr 10, 2026
625e53e
Move GetActionData from RunsService to Dataproxy (#7184)
katrogan Apr 13, 2026
668913c
fix (#7181)
popojk Apr 13, 2026
b24be81
[V2] Fix trace issue (#7178)
popojk Apr 13, 2026
e230ecf
[V2] Replace minio with rustfs (#7180)
popojk Apr 14, 2026
3b6a406
fix config (#7202)
popojk Apr 14, 2026
f11d466
[V2] Upgrade Kubernetes version to 1.34 in demo and dev environments …
pingsutw Apr 14, 2026
b0d8e6e
re build (#7208)
popojk Apr 15, 2026
276b9f5
[V2] Dataproxy support CreateDownloadLink (#7199)
popojk Apr 15, 2026
70309ce
Bump boilerplate golang_support_tools to Go 1.25 and refresh deps (#7…
pingsutw Apr 15, 2026
7277a90
[V2] Set ReportUri in ActionEvent output references (#7214)
pingsutw Apr 15, 2026
772de09
fix doc (#7219)
popojk Apr 16, 2026
04a3c03
[V2] Fix dataproxy proto: add code bundle artifact type and fix field…
pingsutw Apr 16, 2026
4213fef
Move TailLogs endpoint to dataproxy (#7194)
katrogan Apr 16, 2026
7f4567a
Fix missing LinkType for task template log links (#7223)
pingsutw Apr 16, 2026
fa3c40a
fix: correct abort flow — phase transitions, reason propagation, and …
AdilFayyaz Apr 17, 2026
7a2b233
[V2] Expand contextutils with org, service_name, cluster_id keys and …
SVilgelm Apr 17, 2026
f1acdb2
feat: add AppK8sClient for KService lifecycle management (#7166)
AdilFayyaz Apr 17, 2026
ae0580f
fix(runs): make TestWatchActionUpdates_OnlyStreamsTargetAction determ…
SVilgelm Apr 17, 2026
312ed4d
fix: resolve buf lint violations and fix timed macro exit code (#7230)
SVilgelm Apr 17, 2026
17dd7d9
Use request host in SelectCluster (#7232)
EngHabu Apr 17, 2026
79c801e
feat: implement InternalAppService for Knative app lifecycle (#7175)
AdilFayyaz Apr 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
39 changes: 39 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Git
.git
.gitignore
.gitattributes

# CI/CD
.github

# Generated files
gen/python/
gen/rust/
gen/ts/

# Dependencies
node_modules/
target/
**/Cargo.lock
*.pyc
__pycache__/
.kube/

# IDE
.vscode/
.idea/
*.swp
*.swo
*~

# OS
.DS_Store
Thumbs.db

# Logs
*.log

# Test coverage
coverage/
*.coverage
.pytest_cache/
5 changes: 5 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Mark generated protobuf code so GitHub hides it in diffs by default
gen/** linguist-generated=true

# Mark generated mocks so GitHub hides them in diffs by default
**/mocks/mocks.go linguist-generated=true
71 changes: 71 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
## Tracking issue
<!--
If your PR fixes an open issue, use `Closes #999` to link your PR with the issue.
Example: Closes #999

If your PR is related to an issue or PR, use `Related to #999` to link your PR.
Example: Related to #999

Remove this section if not applicable
-->

## Why are the changes needed?

<!--
Please clarify why the changes are needed. For instance,
1. If you propose a new API, clarify the use case for a new API.
2. If you fix a bug, you can clarify why it is a bug.
-->

## What changes were proposed in this pull request?

<!--
Please clarify what changes you are proposing. The purpose of this section is to outline the changes and how this PR fixes the issue.
If possible, please consider writing useful notes for better and faster reviews in your PR. See the examples below.
1. If you refactor some codes with changing classes, showing the class hierarchy will help reviewers.
2. If there is design documentation, please add the link.
-->

## How was this patch tested?

<!--
If tests were added, say they were added here. Please make sure to add some test cases that check the changes thoroughly including negative and positive cases if possible.
If it was tested in a way different from regular unit tests, please clarify how you tested step by step, ideally copy and paste-able, so that other reviewers can test and check, and descendants can verify in the future.
If tests were not added, please describe why they were not added and/or why it was difficult to add.
-->
### Labels

Please add one or more of the following labels to categorize your PR:
- **added**: For new features.
- **changed**: For changes in existing functionality.
- **deprecated**: For soon-to-be-removed features.
- **removed**: For features being removed.
- **fixed**: For any bug fixed.
- **security**: In case of vulnerabilities

This is important to improve the readability of release notes.

### Setup process

### Screenshots

## Check all the applicable boxes <!-- Follow the above conventions to check the box -->

- [ ] I updated the documentation accordingly.
- [ ] All new and existing tests passed.
- [ ] All commits are signed-off.

## Related PRs

<!-- Add related pull requests for reviewers to check -->

## Stack

If you do use [`git town`](https://www.git-town.com/introduction) to manage PR Stacks, the stack relevant to this PR
will show below. Otherwise, you can ignore this section.

<!-- branch-stack -->

## Docs link

<!-- Add documentation link built by CI jobs here, and specify the changed place -->
47 changes: 47 additions & 0 deletions .github/actions/setup-python-env/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: "Setup Python Environment"
description: "Set up Python environment for the given Python version"

inputs:
python-version:
description: "Python version to use"
required: true
default: "3.12"
uv-version:
description: "uv version to use"
required: true
default: "0.8.4"
working-directory:
description: "Default working directory for all steps"
required: false
default: ""

runs:
using: "composite"
steps:
- uses: actions/setup-python@v5
with:
python-version: ${{ inputs.python-version }}

- name: Install uv
uses: astral-sh/setup-uv@v6
id: setup-uv
with:
version: ${{ inputs.uv-version }}
enable-cache: 'true'
cache-suffix: ${{ inputs.python-version }}
cache-dependency-glob: |
pyproject.toml
uv.lock
working-directory: ${{ inputs.working-directory }}

- name: Install Python dependencies
if: steps.setup-uv.outputs.cache-hit == 'false'
working-directory: ${{ inputs.working-directory }}
run: uv sync --all-groups --frozen
shell: bash

- name: List Python dependencies
if: steps.setup-uv.outputs.cache-hit == 'true'
working-directory: ${{ inputs.working-directory }}
run: uv pip list
shell: bash
158 changes: 158 additions & 0 deletions .github/workflows/build-ci-image.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,158 @@
name: Build and Publish CI Docker Image

on:
push:
branches:
- main
- v2
paths:
- 'gen.Dockerfile'
- '.github/workflows/build-ci-image.yml'
pull_request:
paths:
- 'gen.Dockerfile'
- '.github/workflows/build-ci-image.yml'
workflow_dispatch:
inputs:
force_rebuild:
description: 'Force rebuild of the image'
required: false
default: 'false'

env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}/ci

jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
pull-requests: write

outputs:
image-tag: ${{ steps.set-tag.outputs.tag }}

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata (tags, labels)
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
tags: |
# Use branch name for branch pushes
type=ref,event=branch
# Use PR number for pull requests
type=ref,event=pr
# Use 'latest' tag for main branch
type=raw,value=latest,enable=${{ github.ref == 'refs/heads/main' }}
# Use 'v2' tag for v2 branch
type=raw,value=v2,enable=${{ github.ref == 'refs/heads/v2' }}
# Add git sha as tag
type=sha,prefix=${{ github.head_ref }}-,enable=${{ github.ref != 'refs/heads/v2' && github.ref != 'refs/heads/main' }}

- name: Set image tag output
id: set-tag
run: |
if [ "${{ github.event_name }}" == "pull_request" ]; then
echo "tag=pr-${{ github.event.pull_request.number }}" >> $GITHUB_OUTPUT
elif [ "${{ github.ref }}" == "refs/heads/v2" ]; then
echo "tag=v2" >> $GITHUB_OUTPUT
elif [ "${{ github.ref }}" == "refs/heads/main" ]; then
echo "tag=latest" >> $GITHUB_OUTPUT
else
echo "tag=$(echo ${{ github.ref }} | sed 's/refs\/heads\///')" >> $GITHUB_OUTPUT
fi

- name: Build and push Docker image
uses: docker/build-push-action@v6
with:
context: .
file: ./gen.Dockerfile
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
platforms: linux/amd64,linux/arm64
# Multi-layer caching strategy for speed
cache-from: |
type=registry,ref=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:buildcache
type=registry,ref=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.set-tag.outputs.tag }}
type=registry,ref=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:v2
type=gha
cache-to: |
type=registry,ref=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:buildcache,mode=max
type=gha,mode=max
# Enable BuildKit features for better caching
build-args: |
BUILDKIT_INLINE_CACHE=1

- name: Image digest
run: echo "Image built with digest ${{ steps.meta.outputs.digest }}"

- name: Comment on PR with image tag
if: github.event_name == 'pull_request'
uses: actions/github-script@v7
with:
script: |
const tag = '${{ steps.set-tag.outputs.tag }}';
const registry = '${{ env.REGISTRY }}';
const imageName = '${{ env.IMAGE_NAME }}';
const fullImage = `${registry}/${imageName}:${tag}`;

const comment = `## 🐳 Docker CI Image Built

The CI Docker image has been built and pushed for this PR!

**Image:** \`${fullImage}\`

This image will be automatically used by CI workflows in this PR.

To test locally:
\`\`\`bash
make gen DOCKER_CI_IMAGE=${fullImage}
\`\`\`
`;

// Find existing comment
const { data: comments } = await github.rest.issues.listComments({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
});

const botComment = comments.find(comment =>
comment.user.type === 'Bot' &&
comment.body.includes('🐳 Docker CI Image Built')
);

if (botComment) {
// Update existing comment
await github.rest.issues.updateComment({
owner: context.repo.owner,
repo: context.repo.repo,
comment_id: botComment.id,
body: comment
});
} else {
// Create new comment
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
body: comment
});
}
Loading
Loading