Releases: actions/actions-runner-controller
v0.25.0
The highlight of this release is a new Kubernetes container mode that improves the security posture of runner pods by removing the need for privileged
containers.
In addition to that, this release improves the reliability of the webhook-based autoscaler, and removes the support for the legacy --once
actions runner flag.
The release note covers all the details and you should definitely read it before upgrading! Find it at https://github.com/actions-runner-controller/actions-runner-controller/blob/master/docs/releasenotes/0.25.md.
Lastly, there are also a lot of enhancements, improvements, fixes, and so on for the documentation and the chart. Big kudos to everyone who contributed! Read on for all the changes.
What's Changed
- ci: publish controller canary to github packages by @toast-gear in #1524
- docs: add CRD disclaimer to bug report by @toast-gear in #1516
- Update bug_report.yml by @mumoshu in #1529
- e2e: Enable buildx in more images by @mumoshu in #1530
- chore: bump chart to app 0.24.1 by @toast-gear in #1531
- ci: add GitHub packages to arc release by @toast-gear in #1525
- ci: runners trigger on push by @toast-gear in #1549
- chore: suggest gist first by @toast-gear in #1539
- ci: don't login on a pr by @toast-gear in #1554
- ci: hardcode dockerhub username by @toast-gear in #1555
- chore(deps): update dependency actions/runner to v2.294.0 by @renovate in #1556
- Overhauled
startup.sh
Script by @Fleshgrinder in #1454 - Revert "Overhauled
startup.sh
Script" by @toast-gear in #1561 - Make webhook-based scale race-free by @mumoshu in #1477
- Add priorityClassName to CRDs by @cablespaghetti in #1513
- Webhook server configuration with kustomize by @arnaud-tincelin in #1312
- Fix completed runner pod recreation not to be blocked after max out by @mumoshu in #1568
containerMode
option to allow running jobs in k8's instead of docker by @thboop in #1546- Bump go-github to v45 by @mumoshu in #1573
- fix(deps): update module sigs.k8s.io/controller-runtime to v0.12.2 by @renovate in #1449
- docs: fix logic explanation for scale down delay by @giuscri in #1562
- chore(deps): update dependency golang to v1.18.3 by @renovate in #1509
- Fix: Match Ingress API Version correctly. by @john-delivuk in #1541
- fix(deps): update module github.com/stretchr/testify to v1.7.5 by @renovate in #1510
- chore(deps): update azure/setup-helm action to v3 by @renovate in #1571
- chore(deps): update helm/kind-action action to v1.3.0 by @renovate in #1532
- Add a solution to InternalError webhook context timedout by @justmike1 in #1558
- Use the go-github impl of ListRunnerGroups with visible_to_repository by @mumoshu in #1578
- ci: add paths to push trigger by @toast-gear in #1583
- Extracted validations to a single point for runner spec by @nikola-jokic in #1582
- Fix PercentageRunnersBusy scaling delay by @mumoshu in #1579
- Drop support for --once by @mumoshu in #1580
- Fix old runner pods stuck in Terminating since #1579 by @mumoshu in #1585
- Bump E2E runner version to 2.294.0 by @mumoshu in #1586
- Enhance the acceptance runnerset yaml template for manual E2E by @mumoshu in #1587
- docs: remove once feature flag env var by @toast-gear in #1590
- Reflect manual test scenario for containerMode=kubernetes to E2E by @mumoshu in #1588
- fix(deps): update module github.com/stretchr/testify to v1.8.0 by @renovate in #1584
- chore(deps): update helm values quay.io/brancz/kube-rbac-proxy to v0.13.0 by @renovate in #1589
- Runner Entrypoint: fix daemon.json by @Vladyslav-Miletskyi in #1409
- chore: move HOME to more logical place by @toast-gear in #1460
- chore: move runner docker check by @toast-gear in #1548
- fix(deps): update golang.org/x/oauth2 digest to 02e64fa by @renovate in #1480
- Add release note for v0.25.0 by @mumoshu in #1591
- fix type README.md descriptrion. by @SeongJuMoon in #1594
- Cover ARC upgrade in E2E test by @mumoshu in #1592
- fix(deps): update golang.org/x/oauth2 digest to 2104d58 by @renovate in #1593
- Fix a regression in webhook-based autoscaler by @mumoshu in #1596
- Fix charts by @nobiit in #1603
New Contributors
- @cablespaghetti made their first contribution in #1513
- @arnaud-tincelin made their first contribution in #1312
- @thboop made their first contribution in #1546
- @giuscri made their first contribution in #1562
- @john-delivuk made their first contribution in #1541
- @justmike1 made their first contribution in #1558
- @nikola-jokic made their first contribution in #1582
- @SeongJuMoon made their first contribution in #1594
- @nobiit made their first contribution in #1603
Full Changelog: v0.24.1...v0.25.0
actions-runner-controller-0.20.0
A Kubernetes controller that operates self-hosted runners for GitHub Actions on your Kubernetes cluster.
actions-runner-controller-0.19.1
A Kubernetes controller that operates self-hosted runners for GitHub Actions on your Kubernetes cluster.
v0.24.1
What's Changed
- chart: Bump appVersion to 0.24.0 by @mumoshu in #1505
- Fix example manifests for webhooks-based scaling by @VinGarcia in #1354
- ci: align pipeline files and setups by @toast-gear in #1484
- ci: fix permisions by @toast-gear in #1512
- chore(deps): update actions/setup-python action to v4 by @renovate in #1514
- chore(deps): update dependency actions/runner to v2.293.0 by @renovate in #1521
- Fix confusing PV controller log by @mumoshu in #1526
Full Changelog: v0.24.0...v0.24.1
actions-runner-controller-0.19.0
A Kubernetes controller that operates self-hosted runners for GitHub Actions on your Kubernetes cluster.
v0.24.0
What's Changed
- chore: release chart targeting v0.23.0 by @toast-gear in #1404
- chore(deps): update dependency actions/runner to v2.291.1 by @renovate in #1407
- runner: Ability to opt-out of using --ephemeral / opt-in to legacy --once for GHES older than 3.3 by @mumoshu in #1384
- Pin GitHub Actions workflow dependencies by hash and restrict permissions by @mumoshu in #1422
- controller: Stop auto-setting RUNNER_FEATURE_FLAG_EPHEMERAL by @mumoshu in #1385
- Update README.md by @faddat in #1427
- chore(deps): update docker/login-action action to v2 by @renovate in #1415
- chore(deps): update docker/setup-buildx-action action to v2 by @renovate in #1416
- chore(deps): update actions/cache digest to 95f200e by @renovate in #1429
- chore(deps): update actions/checkout digest to 2541b12 by @renovate in #1430
- docs: improve troubleshooting by @toast-gear in #1428
- Fix certain runnerset name in E2E and acceptance by @mumoshu in #1435
- e2e: Fix wrong scale trigger configuration used in test by @mumoshu in #1434
- chore(deps): update actions/setup-python digest to c57f793 by @renovate in #1432
- chore(deps): update actions/stale digest to 65d24b7 by @renovate in #1433
- chore(deps): update actions/setup-go digest to 193b404 by @renovate in #1431
- chore(deps): update docker/build-push-action digest to c5e6528 by @renovate in #1437
- chore(deps): update docker/login-action digest to d398f07 by @renovate in #1438
- fix(deps): update golang.org/x/oauth2 digest to 9780585 by @renovate in #1329
- chore(deps): update docker/setup-buildx-action digest to 91cb32d by @renovate in #1439
- chore(deps): update docker/setup-qemu-action digest to 0522dcd by @renovate in #1440
- feat: Support arbitrarily setting
privileged: true
for runner container by @mumoshu in #1383 - Fix runner pods managed by RunnerSet to not stuck in Terminating by @mumoshu in #1420
- Enable CodeQL Alerts following the OpenSSF Security Scorecards recommendation by @mumoshu in #1421
- fix(deps): update module github.com/go-logr/logr to v1.2.3 by @renovate in #1241
- chore(deps): update helm/chart-releaser-action digest to a3454e4 by @renovate in #1441
- Force restartPolicy "Never" to prevent runner pods from stucking in Terminating when the container disappeared by @mumoshu in #1395
- chore: more initialisation info to help debug by @toast-gear in #1276
- chore(deps): update docker/setup-qemu-action action to v2 by @renovate in #1450
- Create SECURITY.md by @mumoshu in #1424
- chore: Add signrel command for sigining arc release assets by @mumoshu in #1426
- fix(chart): add missing namespace to webhook.ingress by @maigl in #1417
- fix(deps): update module github.com/onsi/gomega to v1.19.0 by @renovate in #1069
- fix(deps): update module github.com/stretchr/testify to v1.7.1 by @renovate in #1228
- Fixes for CVE-2020-2616 and CVE-2022-24921 on actions-runner-controller image ! by @shettarvinay in #1230
- chore(deps): update helm values quay.io/brancz/kube-rbac-proxy to v0.12.0 by @renovate in #1323
- Update codeql.yml by @mumoshu in #1451
- fix(deps): update module github.com/bradleyfalzon/ghinstallation/v2 to v2.0.4 by @renovate in #1452
- fix(deps): update module github.com/prometheus/client_golang to v1.12.2 by @renovate in #1448
- Enhance RunnerSet to optionally retain PVs accross restarts by @mumoshu in #1340
- Allow customizing the controller webhook port by @nafarlee in #1410
- docs: document the Docker MTU problem in troubleshooting guide by @matmut7 in #1257
- refactor: remove registration runner dead code by @toast-gear in #1260
- chart: Add extraPaths to Ingress of GitHub Webhook Server by @KENNYSOFT in #1129
- Renamed Runner Dockerfiles by @Fleshgrinder in #1248
- ci: match renovate with new dockerfile names by @toast-gear in #1453
- refactor(runner/entrypoint): don't mv externalstmp if it's not there by @lovesegfault in #1315
- Cleanup some unused code and minor refactors by @fgalind1 in #1274
- chore(deps): update github/codeql-action action to v2.1.11 by @renovate in #1455
- chore(deps): update dependency golang to v1.18.2 by @renovate in #1229
- Add CII Best Practices badge to README by @mumoshu in #1461
- Bump Go to 1.18.2 by @mumoshu in #1462
- Add fuzzing to the test suite by @mumoshu in #1463
- chore: remove stale app config by @toast-gear in #1465
- doc: Enhance troubleshooting guide with the scale-to-zero issue by @mumoshu in #1469
- fix: Avoid duplicate volume and mount name error for generic ephemeral volume as "work" by @mumoshu in #1471
- test: Add test for runner with generic ephemeral volume as "work" by @mumoshu in #1472
- doc: Use RunnerSet to retain various cache by leveraging PV by @mumoshu in #1464
- chore(deps): update actions/setup-python digest to fff15a2 by @renovate in #1458
- e2e: ARC_E2E_NO_CLEANUP to prevent cleanup by @mumoshu in #1470
- Fix confusing logs from pv and pvc controllers by @mumoshu in #1487
- chore(deps): update dependency actions/runner to v2.292.0 by @renovate in #1475
- Add release note for v0.24.0 by @mumoshu in #1493
- doc: Add "people" section by @mumoshu in #1498
New Contributors
- @faddat made their first con...
v0.23.0: Improved "runner group visibility" support for webhook-based autoscaler, and refactorings
This version of ARC includes a contribution from GitHub to greatly improve the efficiency of "runner group visibility" support for the webhook-based autoscaler #1324 🎉
Other than that, this release mostly focuses on refactoring.
There are a few small breaking changes in API. Please read the release note, and upgrade your ARC installation carefully!
As always, testing the upgrade process before going to production would be valuable to your business.
FWIW, my recommended update process when there are API breaking changes would look like the below. But YMMV.
- Stop the controller by setting the replicas to zero
- Upgrade CRDs (Use
kubectl replate
as always! Helm doesn't upgrade CRDs. - Change your manifests for RunnerDeployment and RunnerSet, HRA, etc., and reapply
- Upgrade ARC and bring back the replicas.
The release note can be found at https://github.com/actions-runner-controller/actions-runner-controller/blob/master/docs/releasenotes/0.23.md.
What's Changed
- chore: bump chart to latest by @mumoshu in #1319
- Fix typo by @rofafor in #1316
- Add more usages of RUNNER_VERSION to Renovate config. by @danxmoran in #1313
- chore(deps): update azure/setup-helm action to v2.1 by @renovate in #1328
- chore(deps): update dependency actions/runner to v2.290.0 by @renovate in #1333
- Improved Bash Logger by @Fleshgrinder in #1246
- refactor: location of some runner cmds by @toast-gear in #1337
- chore: migrate to actions/stale from protobot/stale by @toast-gear in #1334
- Fix scale down condition to exclude skipped by @siyuan0322 in #1330
- Removed
modprobe
Script by @Fleshgrinder in #1247 - refactor: use apt-get instead of apt by @toast-gear in #1342
- chore(deps): update actions/stale action to v5 by @renovate in #1338
- chore(deps): update dependency actions/runner to v2.290.1 by @renovate in #1349
- Add WorkflowJob to GitHubEventScaleUpTriggerSpec types by @pje in #922
- fix: Pluralize topologySpreadConstraint to match docs by @cbui in #1089
- Fix runner pod dnsConfig by @billimek in #1227
- feat: default scale down flag by @toast-gear in #963
- fix(deps): update module github.com/teambition/rrule-go to v1.8.0 by @renovate in #1048
- Run README files through Grammarly by @VinGarcia in #1353
- refactor: set sync period default to 1m by @toast-gear in #1308
- Find runner groups that visible to repository using a single API call. by @TingluoHuang in #1324
- Runner CRD: Add required conversionReviewVersions field by @MarioUhrik in #1259
- Do not enable TotalNumberOfQueuedAndInProgressWorkflowRuns by default by @mumoshu in #1372
- Remove the default
githubEvent: {}
requiring a event to be defined by @mumoshu in #1379 - doc: Removed the default
githubEvent: {}
requiring a event to be defined by @soham4abc in #1361 - feat: Add label support to TotalNumberOfQueuedAndInProgressWorkflowRuns metric by @mumoshu in #1373
- chore: Add unit test for newRunnerPod by @mumoshu in #1381
- chore: Add unit test for RunnerReconciler.newPod by @mumoshu in #1382
- feat: set default in chart by @toast-gear in #1389
- docs: highlight breaking changes are possible by @toast-gear in #1310
- fix(deps): update module github.com/google/go-cmp to v0.5.8 by @renovate in #1394
- refactor: remove legacy controller Docker build by @toast-gear in #1360
- Fix label support for TotalNumberOfQueuedAndInProgressWorkflowRuns metric by @mumoshu in #1390
- Update bug_report.md by @mumoshu in #1400
- docs: final doc changes + v0.23.0 release notes by @toast-gear in #1396
- fix: forgot to do the chart by @toast-gear in #1388
- Turn the bug report template into a form with more context by @mumoshu in #1401
New Contributors
- @danxmoran made their first contribution in #1313
- @siyuan0322 made their first contribution in #1330
- @billimek made their first contribution in #1227
- @VinGarcia made their first contribution in #1353
- @MarioUhrik made their first contribution in #1259
- @soham4abc made their first contribution in #1361
Full Changelog: v0.22.3...v0.23.0
actions-runner-controller-0.18.0
A Kubernetes controller that operates self-hosted runners for GitHub Actions on your Kubernetes cluster.
v0.22.3
What's Changed
- chore: bump chart to latest by @mumoshu in #1300
- docs: add limitations to runnersets + reorder by @toast-gear in #1285
- Pin go version to the known working version by @fgalind1 in #1303
- fix(deps): update module sigs.k8s.io/controller-runtime to v0.11.2 by @renovate in #1292
- Fix deleting a runner when pod was deleted by @fgalind1 in #1262
- Prevent runners from being stuck in Terminating when pod disappeared without standard termination process by @mumoshu in #1318
Full Changelog: v0.22.2...v0.22.3
actions-runner-controller-0.17.3
A Kubernetes controller that operates self-hosted runners for GitHub Actions on your Kubernetes cluster.