You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: EKS IAM Roles for Service Accounts for Runner Pods (actions#226)
One of the pod recreation conditions has been modified to use hash of runner spec, so that the controller does not keep restarting pods mutated by admission webhooks. This naturally allows us, for example, to use IRSA for EKS that requires its admission webhook to mutate the runner pod to have additional, IRSA-related volumes, volume mounts and env.
Resolvesactions#200
Copy file name to clipboardExpand all lines: README.md
+43-1Lines changed: 43 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -404,6 +404,32 @@ spec:
404
404
group: NewGroup
405
405
```
406
406
407
+
## Using EKS IAM role for service accounts
408
+
409
+
`actions-runner-controller`v0.15.0 or later has support for EKS IAM role for service accounts.
410
+
411
+
As similar as for regular pods and deployments, you firstly need an existing service account with the IAM role associated.
412
+
Create one using e.g. `eksctl`. You can refer to [the EKS documentation](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html) for more details.
413
+
414
+
Once you set up the service account, all you need is to add `serviceAccountName` and `fsGroup` to any pods that uses
415
+
the IAM-role enabled service account.
416
+
417
+
For `RunnerDeployment`, you can set those two fields under the runner spec at `RunnerDeployment.Spec.Template`:
418
+
419
+
```yaml
420
+
apiVersion: actions.summerwind.dev/v1alpha1
421
+
kind: RunnerDeployment
422
+
metadata:
423
+
name: example-runnerdeploy
424
+
spec:
425
+
template:
426
+
spec:
427
+
repository: USER/REO
428
+
serviceAccountName: my-service-account
429
+
securityContext:
430
+
fsGroup: 1447
431
+
```
432
+
407
433
## Software installed in the runner image
408
434
409
435
The GitHub hosted runners include a large amount of pre-installed software packages. For Ubuntu 18.04, this list can be found at <https://github.com/actions/virtual-environments/blob/master/images/linux/Ubuntu1804-README.md>
@@ -458,7 +484,10 @@ If you'd like to modify the controller to fork or contribute, I'd suggest using
0 commit comments