feat: Enhance PipeSpec and FromSpec with AuthorizedKeysSecret (#581)

* feat: Enhance PipeSpec and FromSpec with AuthorizedKeysSecret

- Added AuthorizedKeysSecret field to FromSpec for referencing Kubernetes secrets.
- Updated deepcopy functions to handle new AuthorizedKeysSecret field.
- Modified CRD definition to include the new private_key_secret field.
- Refactored fake client and lister implementations to support new fields.
- Introduced shared informers and listers for Pipe resources.
- Updated code generation scripts to reflect changes in API structure.

* refactor: Rename private_key_secret to authorized_keys_secret in CRD schema

* feat: Add support for authorized_keys from secret in skel and update k8sworkload.yaml

* feat: Enhance authorized keys handling to include secret name check

* Update plugin/kubernetes/skel.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
Boshi Lian 2025-05-25 03:48:17 -07:00 committed by GitHub
parent ca311e15cd
commit 706a36b40e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
19 changed files with 573 additions and 301 deletions

View file

@ -134,6 +134,8 @@ data:
# echo -n 'notakey' | base64
ssh-privatekey: |
bm90YWtleSAtbgo=
authorized_keys: |
c3NoLWVkMjU1MTkgQUFBQUMzTnphQzFsWkRJMU5URTVBQUFBSU5SR1RIMzI1ckRVcDEydHBsd3VrSG1SOHl0YkM5VFBaODg2Z0NzdHluUDEK
kind: Secret
metadata:
name: host-publickey-key-custom-field
@ -149,7 +151,8 @@ spec:
from:
- username: "custom_field" # catch all
username_regex_match: true
authorized_keys_data: "c3NoLWVkMjU1MTkgQUFBQUMzTnphQzFsWkRJMU5URTVBQUFBSU5SR1RIMzI1ckRVcDEydHBsd3VrSG1SOHl0YkM5VFBaODg2Z0NzdHluUDEK"
authorized_keys_secret: # use the secret with custom field
name: host-publickey-key-custom-field
to:
host: host-publickey:2222
username: "user"