func()

in cmd/resource/k8sauth.go [158:192]


func (i IamAuthMap) PushConfigMap(clientset *kubernetes.Clientset) error {
	data := map[string]string{}
	if i.MapUsers != nil {
		users, err := json.Marshal(i.MapUsers)
		if err != nil {
			return err
		}
		data["mapUsers"] = string(users)
	}
	if i.MapRoles != nil {
		roles, err := json.Marshal(i.MapRoles)
		if err != nil {
			return err
		}
		data["mapRoles"] = string(roles)
	}
	authConfigMap := &v1.ConfigMap{
		TypeMeta: metav1.TypeMeta{
			Kind:       "",
			APIVersion: "",
		},
		ObjectMeta: metav1.ObjectMeta{
			Name: "aws-auth",
		},
		Data: data,
	}
	_, err := clientset.CoreV1().ConfigMaps("kube-system").Update(authConfigMap)
	if errors.IsNotFound(err) {
		_, err = clientset.CoreV1().ConfigMaps("kube-system").Create(authConfigMap)
	}
	if err != nil {
		return err
	}
	return nil
}