Skip to content

Add playground auto-deploy - #406

Draft
PhilippGrulich wants to merge 1 commit into
mainfrom
agent/playground-auto-deploy
Draft

Add playground auto-deploy#406
PhilippGrulich wants to merge 1 commit into
mainfrom
agent/playground-auto-deploy

Conversation

@PhilippGrulich

Copy link
Copy Markdown
Member

Summary

Adds a root-owned deployment script and systemd timer for the Nautilus playground container.

What changed

  • Added a revision-aware deploy script that fetches main, skips no-op runs, builds commit-tagged runner/API images, validates an isolated candidate, and rolls back on failed promotion.
  • Added a systemd oneshot service and timer to run the deploy check every four hours with jitter.
  • Added a plan note documenting the rollout contract and operational expectations.

Why

This keeps the playground aligned with upstream main without requiring manual redeploys.

Impact

  • The live playground should pick up upstream changes automatically within about four hours.
  • Failed promotions revert to the previous container instead of leaving the service down.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tracing Benchmark

Details
Benchmark suite Current: afa2a17 Previous: 69cac8b Ratio
e2e_tiered_bc_to_mlir 3768.7400000000002 us (± 131169) 3774.47 us (± 133136) 1.00
e2e_single_mlir 6.31924 ms (± 204.479) 6.51328 ms (± 361.546) 0.97
comp_mlir_add 6.33262 ms (± 197.532) 6.31479 ms (± 228.717) 1.00
comp_mlir_ifThenElse 6.9581 ms (± 201.684) 7.08955 ms (± 363.693) 0.98
comp_mlir_deeplyNestedIfElse 5.75379 ms (± 176.589) 5.78601 ms (± 275.658) 0.99
comp_mlir_loop 8.32565 ms (± 741.026) 8.20127 ms (± 415.34) 1.02
comp_mlir_ifInsideLoop 31.1403 ms (± 662.396) 31.6967 ms (± 457.167) 0.98
comp_mlir_loopDirectCall 12.6409 ms (± 209.935) 14.0758 ms (± 420.695) 0.90
comp_mlir_pointerLoop 30.302 ms (± 1.14723) 30.8359 ms (± 458.364) 0.98
comp_mlir_staticLoop 5.63688 ms (± 321.619) 5.6561 ms (± 193.767) 1.00
comp_mlir_fibonacci 11.3223 ms (± 248.859) 11.7238 ms (± 329.415) 0.97
comp_mlir_gcd 10.2281 ms (± 227.114) 10.4125 ms (± 300.949) 0.98
comp_mlir_nestedIf10 11.3144 ms (± 679.136) 11.62 ms (± 411.828) 0.97
comp_mlir_nestedIf100 25.8357 ms (± 294.72) 26.9364 ms (± 542.621) 0.96
comp_mlir_chainedIf10 10.9515 ms (± 894.525) 11.957 ms (± 508.785) 0.92
comp_mlir_chainedIf100 22.2498 ms (± 496.432) 23.4318 ms (± 535.853) 0.95
tiered_twotier_addOne 3.72531 ms (± 108.496) 3.75178 ms (± 108.773) 0.99
tiered_singletier_addOne 3.61638 ms (± 186.139) 3.60115 ms (± 120.793) 1.00
single_compile_mlir_addOne 3.60168 ms (± 129.616) 3.76447 ms (± 313.904) 0.96
single_compile_cpp_addOne 27.6909 ms (± 565.552) 27.9979 ms (± 702.315) 0.99
single_compile_bc_addOne 59.9101 us (± 20.8928) 61.5557 us (± 20.253) 0.97
tiered_twotier_sumLoop 5.85335 ms (± 145.571) 5.8925 ms (± 210.359) 0.99
tiered_singletier_sumLoop 5.80511 ms (± 196.9) 5.73846 ms (± 177.398) 1.01
single_compile_mlir_sumLoop 5.87436 ms (± 160.619) 6.09001 ms (± 349.111) 0.96
single_compile_cpp_sumLoop 29.0557 ms (± 573.558) 28.8229 ms (± 494.468) 1.01
single_compile_bc_sumLoop 115.774 us (± 22.6491) 119.762 us (± 21.0894) 0.97
exec_mlir_add 10.6261 ns (± 0.769881) 10.6924 ns (± 1.65243) 0.99
exec_mlir_fibonacci 15.9336 us (± 1.02939) 15.4186 us (± 2.29146) 1.03
exec_mlir_sum 566.004 us (± 63.6787) 586.744 us (± 74.9288) 0.96
exec_cpp_add 4.55468 ns (± 0.38447) 4.59665 ns (± 0.504259) 0.99
exec_cpp_fibonacci 55.8823 us (± 6.05666) 55.7386 us (± 6.06993) 1.00
exec_cpp_sum 12.5072 ms (± 350.352) 12.4505 ms (± 60.3511) 1.00
exec_bc_add 45.8692 ns (± 3.65077) 46.4363 ns (± 4.1968) 0.99
exec_bc_fibonacci 380.99 us (± 13.1857) 377.566 us (± 9.84076) 1.01
exec_bc_sum 92.4718 ms (± 1.53756) 92.0824 ms (± 214.561) 1.00
exec_tbc_add 30.489 ns (± 2.35389) 30.8214 ns (± 2.14128) 0.99
exec_tbc_fibonacci 158.764 us (± 13.1555) 150.881 us (± 3.81011) 1.05
exec_tbc_sum 40.0603 ms (± 266.789) 40.0163 ms (± 81.9386) 1.00
exec_asmjit_add 3.51893 ns (± 0.174133) 3.54829 ns (± 0.298671) 0.99
exec_asmjit_fibonacci 20.3367 us (± 4.38862) 18.8186 us (± 1.82586) 1.08
exec_asmjit_sum 3.94603 ms (± 226.085) 3.37434 ms (± 44.2044) 1.17
exec_bc_add_passesOff 46.4117 ns (± 4.78017) 45.9912 ns (± 3.04685) 1.01
exec_bc_add_passesOn 45.71 ns (± 3.18711) 46.738 ns (± 5.07232) 0.98
exec_bc_fibonacci_passesOff 378.964 us (± 13.0915) 377.776 us (± 9.99489) 1.00
exec_bc_fibonacci_passesOn 369.843 us (± 13.8231) 374.648 us (± 18.9845) 0.99
exec_bc_sum_passesOff 92.2 ms (± 1.09051) 92.9078 ms (± 7.75395) 0.99
exec_bc_sum_passesOn 80.048 ms (± 1.01873) 79.9668 ms (± 167.983) 1.00
exec_tbc_add_passesOff 30.1059 ns (± 1.33407) 30.4126 ns (± 1.51777) 0.99
exec_tbc_add_passesOn 30.2331 ns (± 1.86518) 30.4466 ns (± 2.16895) 0.99
exec_tbc_fibonacci_passesOff 158.52 us (± 13.3352) 151.137 us (± 4.11131) 1.05
exec_tbc_fibonacci_passesOn 158.455 us (± 13.5826) 151.117 us (± 4.43308) 1.05
exec_tbc_sum_passesOff 40.1134 ms (± 774.276) 40.0236 ms (± 89.5133) 1.00
exec_tbc_sum_passesOn 37.8946 ms (± 225.414) 37.8622 ms (± 49.4653) 1.00
exec_asmjit_add_passesOff 3.60186 ns (± 0.470761) 3.57706 ns (± 0.325494) 1.01
exec_asmjit_add_passesOn 3.51757 ns (± 0.1507) 3.54474 ns (± 0.314026) 0.99
exec_asmjit_fibonacci_passesOff 20.5139 us (± 3.11911) 18.8624 us (± 1.9284) 1.09
exec_asmjit_fibonacci_passesOn 20.669 us (± 2.79985) 18.9501 us (± 2.20675) 1.09
exec_asmjit_sum_passesOff 3.97701 ms (± 192.291) 3.37171 ms (± 37.4917) 1.18
exec_asmjit_sum_passesOn 3.98464 ms (± 202.313) 3.36469 ms (± 34.0977) 1.18
exec_bc_add_noRegAlloc 46.3625 ns (± 5.03618) 46.2735 ns (± 3.4157) 1.00
exec_bc_add_regAlloc 47.2381 ns (± 8.89142) 45.719 ns (± 1.8267) 1.03
exec_bc_fibonacci_noRegAlloc 406.348 us (± 12.6948) 400.805 us (± 15.2035) 1.01
exec_bc_fibonacci_regAlloc 379.936 us (± 12.4463) 383.823 us (± 18.7815) 0.99
exec_bc_sum_noRegAlloc 91.5305 ms (± 433.845) 89.6458 ms (± 2.16745) 1.02
exec_bc_sum_regAlloc 92.2124 ms (± 1.11261) 92.3639 ms (± 1.13363) 1.00
exec_bc_add_call 46.8725 ns (± 5.83305) 46.2559 ns (± 3.26378) 1.01
exec_bc_add_switch 44.5718 ns (± 3.94202) 46.0481 ns (± 5.9919) 0.97
exec_bc_add_threaded 40.2274 ns (± 4.01632) 40.8443 ns (± 5.20079) 0.98
exec_bc_fibonacci_call 382.583 us (± 24.7879) 382.917 us (± 16.8769) 1.00
exec_bc_fibonacci_switch 345.497 us (± 14.5737) 333.757 us (± 12.0303) 1.04
exec_bc_fibonacci_threaded 479.474 us (± 11.6139) 480.181 us (± 15.4577) 1.00
exec_bc_sum_call 92.2576 ms (± 1.29579) 92.1963 ms (± 685.842) 1.00
exec_bc_sum_switch 73.1653 ms (± 1.95149) 73.7074 ms (± 1.86078) 0.99
exec_bc_sum_threaded 96.3065 ms (± 2.2427) 95.6359 ms (± 1.18938) 1.01
exec_bc_add_threaded_noReuse 39.8447 ns (± 3.42723) 40.439 ns (± 3.40365) 0.99
exec_bc_add_threaded_reuse 32.8019 ns (± 2.50506) 32.6666 ns (± 2.59058) 1.00
exec_bc_fibonacci_threaded_noReuse 485.788 us (± 16.4921) 482.557 us (± 23.5414) 1.01
exec_bc_fibonacci_threaded_reuse 483.268 us (± 13.161) 480.251 us (± 13.6668) 1.01
exec_bc_sum_threaded_noReuse 96.2511 ms (± 2.29114) 96.2205 ms (± 3.43026) 1.00
exec_bc_sum_threaded_reuse 95.7277 ms (± 1.34321) 95.3916 ms (± 927.403) 1.00
exec_bc_add_threaded_noSuperinstr 39.9195 ns (± 2.75242) 40.6834 ns (± 3.5991) 0.98
exec_bc_add_threaded_superinstr 39.5261 ns (± 2.29942) 40.5462 ns (± 4.18735) 0.97
ssa_add 166.043 ns (± 8.89682) 165.119 ns (± 6.55607) 1.01
ssa_ifThenElse 414.131 ns (± 21.9631) 420.144 ns (± 22.745) 0.99
ssa_deeplyNestedIfElse 1.07 us (± 67.3438) 1.08285 us (± 64.9299) 0.99
ssa_loop 441.016 ns (± 26.0525) 446.683 ns (± 31.5135) 0.99
ssa_ifInsideLoop 824.309 ns (± 54.2026) 836.378 ns (± 51.6745) 0.99
ssa_loopDirectCall 443.72 ns (± 26.686) 444.952 ns (± 23.9251) 1.00
ssa_pointerLoop 529.265 ns (± 41.5498) 531.421 ns (± 34.3119) 1.00
ssa_staticLoop 403.711 ns (± 24.8858) 407.243 ns (± 21.5808) 0.99
ssa_fibonacci 462.245 ns (± 44.3495) 463.307 ns (± 30.8172) 1.00
ssa_gcd 414.403 ns (± 24.6434) 416.837 ns (± 25.6717) 0.99
trace_add 2.41497 us (± 225.737) 2.49861 us (± 242.799) 0.97
completing_trace_add 2.4197 us (± 240.865) 2.49478 us (± 227.043) 0.97
trace_ifThenElse 9.17408 us (± 2.6429) 8.97157 us (± 1.64747) 1.02
completing_trace_ifThenElse 4.68105 us (± 662.099) 4.77406 us (± 563.226) 0.98
trace_deeplyNestedIfElse 26.7521 us (± 3.79301) 27.1398 us (± 4.40207) 0.99
completing_trace_deeplyNestedIfElse 12.7506 us (± 1.95237) 13.151 us (± 1.88773) 0.97
trace_loop 8.63361 us (± 1.38983) 8.73724 us (± 1.57201) 0.99
completing_trace_loop 4.78849 us (± 616.407) 4.91834 us (± 621.805) 0.97
trace_ifInsideLoop 16.8693 us (± 4.01594) 17.2164 us (± 3.25638) 0.98
completing_trace_ifInsideLoop 8.54807 us (± 1.22471) 8.7833 us (± 1.4324) 0.97
trace_loopDirectCall 8.87382 us (± 1.49101) 8.94914 us (± 1.51401) 0.99
completing_trace_loopDirectCall 4.80081 us (± 606.157) 4.95632 us (± 677.99) 0.97
trace_pointerLoop 14.4812 us (± 2.40706) 14.6981 us (± 2.46258) 0.99
completing_trace_pointerLoop 10.3214 us (± 1.39339) 10.6439 us (± 1.949) 0.97
trace_staticLoop 8.0703 us (± 1.03353) 8.16474 us (± 944.997) 0.99
completing_trace_staticLoop 8.02327 us (± 1.03258) 8.13847 us (± 888.014) 0.99
trace_fibonacci 10.1514 us (± 1.57351) 10.3811 us (± 1.62554) 0.98
completing_trace_fibonacci 6.1159 us (± 754.08) 6.29609 us (± 865.212) 0.97
trace_gcd 8.02477 us (± 1.54981) 7.97555 us (± 1.294) 1.01
completing_trace_gcd 4.04894 us (± 524.994) 4.1258 us (± 467.137) 0.98
trace_nestedIf10 45.1836 us (± 7.162) 47.1642 us (± 8.23358) 0.96
completing_trace_nestedIf10 45.1777 us (± 8.66204) 46.6564 us (± 7.16397) 0.97
trace_nestedIf100 2.00349 ms (± 37.954) 2.02169 ms (± 43.4011) 0.99
completing_trace_nestedIf100 2.00196 ms (± 53.1152) 2.02489 ms (± 39.189) 0.99
trace_chainedIf10 106.157 us (± 9.63101) 105.653 us (± 10.669) 1.00
completing_trace_chainedIf10 50.7305 us (± 7.22997) 52.2209 us (± 8.35954) 0.97
trace_chainedIf100 5.29004 ms (± 65.5479) 5.22347 ms (± 149.897) 1.01
completing_trace_chainedIf100 2.34258 ms (± 32.5912) 2.37204 ms (± 35.5251) 0.99
ir_add 724.453 ns (± 43.3408) 732.09 ns (± 51.8003) 0.99
ir_ifThenElse 1.52271 us (± 94.5604) 1.51388 us (± 123.872) 1.01
ir_deeplyNestedIfElse 3.33297 us (± 218.057) 3.35187 us (± 120.201) 0.99
ir_loop 1.61755 us (± 150.52) 1.58967 us (± 104.701) 1.02
ir_ifInsideLoop 2.75808 us (± 142.719) 2.89071 us (± 426.755) 0.95
ir_loopDirectCall 1.85492 us (± 272.176) 1.7664 us (± 112.917) 1.05
ir_pointerLoop 1.9508 us (± 109.157) 1.94697 us (± 129.036) 1.00
ir_staticLoop 1.41783 us (± 91.1447) 1.4883 us (± 96.2456) 0.95
ir_fibonacci 1.71943 us (± 96.9356) 1.71882 us (± 97.4934) 1.00
ir_gcd 1.46028 us (± 78.011) 1.45637 us (± 126.746) 1.00
ir_nestedIf10 7.62873 us (± 504.923) 7.90655 us (± 405.069) 0.96
ir_nestedIf100 92.564 us (± 5.47496) 89.7981 us (± 2.9141) 1.03
ir_chainedIf10 12.037 us (± 1.62603) 11.8533 us (± 878.258) 1.02
ir_chainedIf100 170.181 us (± 10.541) 165.108 us (± 6.16595) 1.03
exec_bc_addOne 38.2318 ns (± 2.62093) 38.3788 ns (± 2.70005) 1.00
exec_mlir_addOne 313.525 ns (± 15.5713) 317.439 ns (± 22.7622) 0.99
exec_cpp_addOne 4.2712 ns (± 0.804988) 4.24458 ns (± 0.625201) 1.01
exec_interpreted_addOne 39.0996 ns (± 1.78313) 39.0012 ns (± 1.6797) 1.00

This comment was automatically generated by workflow using github-action-benchmark.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant