Ramesh Kumar Sivanandam be1d47c726 Backwards compatible Kubernetes admin.conf ownership and permission
Kubernetes 1.29 now deploys new 'super-admin.conf' and new RBAC Group
kubeadm:cluster-admins. The ownership and permission and association
with RBAC group of 'admin.conf' is changed, so K8s control-plane
upgrade and abort upgrade operations of 1.29 modifies the ownership
and permissions.

This workaround resets the ownership and permissions of the
admin.conf file to retain backwards compatibility. This may have
to be addressed differently in future.

Without this change, kubectl commands no longer work due to
insufficient permissions after K8s control-plane upgrade or
abort upgrade of 1.29.

Test Plan:
PASS: Install ISO with K8s 1.29 on AIO-SX.
PASS: Install ISO with K8s 1.29 on AIO-SX and perform the BnR.
PASS: Ansible bootstrap replay on K8s 1.29
PASS: Install ISO with K8s 1.28 on AIO-SX, upgrade to 1.29
PASS: Install ISO with K8s 1.28 on AIO-SX, upgrade to 1.29 and
      perform the BnR.
PASS: Install ISO with K8s 1.28 on AIO-SX, abort upgrade to 1.29.
PASS: Install ISO with K8s 1.29 on AIO-DX.
PASS: Install ISO with K8s 1.29 on AIO-DX and perform the BnR.
PASS: Install ISO with K8s 1.28 on AIO-DX, upgrade to 1.29
PASS: Verify that "kubectl get pods -n kube-system" works as expected
      after the K8s upgrade and abort upgrade operations.
PASS: Manually hardcode to fail kube-upgrade-abort and verify backup
      of admin.conf and super-admin.conf files restored successfully.
PASS: Lock/unlock the host after modify the permission of Kubernetes
      admin.conf and verify permissions are reset correctly.

Story: 2011047
Task: 49793

Change-Id: I1d410cb1e638b94bcc965dd43dd0e8f032401ade
Signed-off-by: Ramesh Kumar Sivanandam <rameshkumar.sivanandam@windriver.com>
2024-05-27 21:54:22 -04:00
2019-09-09 14:52:12 -05:00
2023-04-28 12:38:53 -04:00
2021-02-19 12:14:38 -06:00
2019-09-09 14:52:12 -05:00
2023-07-20 15:45:19 +00:00
2019-09-09 14:52:12 -05:00

stx-puppet

The starlingx/stx-puppet repository handles the Puppet service1.

The Puppet service runs during bootstrap, and at every reboot, to provide a consistent configuration across the StarlingX system nodes.

This repository is not intended to be developed standalone, but rather as part of the StarlingX Source System, which is defined by the StarlingX manifest2.

References


  1. https://www.puppet.com↩︎

  2. https://opendev.org/starlingx/manifest.git↩︎

Description
StarlingX Puppet modules and manifests
Readme 20 MiB
Languages
Puppet 58.5%
Python 21.6%
HTML 7.5%
Shell 7.1%
Ruby 4.7%
Other 0.6%