Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package helmify for openSUSE:Factory checked 
in at 2023-04-28 16:24:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/helmify (Old)
 and      /work/SRC/openSUSE:Factory/.helmify.new.1533 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "helmify"

Fri Apr 28 16:24:58 2023 rev:9 rq:1083531 version:0.4.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/helmify/helmify.changes  2023-04-13 
14:11:07.488426546 +0200
+++ /work/SRC/openSUSE:Factory/.helmify.new.1533/helmify.changes        
2023-04-28 16:26:12.215003219 +0200
@@ -1,0 +2,6 @@
+Fri Apr 28 08:42:07 UTC 2023 - ka...@b1-systems.de
+
+- Update to version 0.4.2:
+  * Add support for extracting args from containers.
+
+-------------------------------------------------------------------

Old:
----
  helmify-0.4.1.obscpio

New:
----
  helmify-0.4.2.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ helmify.spec ++++++
--- /var/tmp/diff_new_pack.yJgRdb/_old  2023-04-28 16:26:17.123032018 +0200
+++ /var/tmp/diff_new_pack.yJgRdb/_new  2023-04-28 16:26:17.131032065 +0200
@@ -19,7 +19,7 @@
 %define __arch_install_post export NO_BRP_STRIP_DEBUG=true
 
 Name:           helmify
-Version:        0.4.1
+Version:        0.4.2
 Release:        0
 Summary:        Creates Helm chart from Kubernetes yaml
 License:        MIT

++++++ _service ++++++
--- /var/tmp/diff_new_pack.yJgRdb/_old  2023-04-28 16:26:17.163032253 +0200
+++ /var/tmp/diff_new_pack.yJgRdb/_new  2023-04-28 16:26:17.163032253 +0200
@@ -3,7 +3,7 @@
     <param name="url">https://github.com/arttor/helmify/</param>
     <param name="scm">git</param>
     <param name="exclude">.git</param>
-    <param name="revision">v0.4.1</param>
+    <param name="revision">v0.4.2</param>
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="changesgenerate">enable</param>
     <param name="versionrewrite-pattern">v(.*)</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.yJgRdb/_old  2023-04-28 16:26:17.183032370 +0200
+++ /var/tmp/diff_new_pack.yJgRdb/_new  2023-04-28 16:26:17.187032393 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param name="url">https://github.com/arttor/helmify/</param>
-              <param 
name="changesrevision">9e709ee1587ab637bf811837213670c1f1125ba4</param></service></servicedata>
+              <param 
name="changesrevision">3e87d86d3c6468ec33150d57f6f2c37de00b86da</param></service></servicedata>
 (No newline at EOF)
 

++++++ helmify-0.4.1.obscpio -> helmify-0.4.2.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/helmify-0.4.1/examples/app/templates/deployment.yaml 
new/helmify-0.4.2/examples/app/templates/deployment.yaml
--- old/helmify-0.4.1/examples/app/templates/deployment.yaml    2023-04-10 
19:47:21.000000000 +0200
+++ new/helmify-0.4.2/examples/app/templates/deployment.yaml    2023-04-28 
09:50:13.000000000 +0200
@@ -18,10 +18,7 @@
       {{- include "app.selectorLabels" . | nindent 8 }}
     spec:
       containers:
-      - args:
-        - --health-probe-bind-address=:8081
-        - --metrics-bind-address=127.0.0.1:8080
-        - --leader-elect
+      - args: {{- toYaml .Values.myapp.app.args | nindent 8 }}
         command:
         - /manager
         env:
@@ -65,9 +62,7 @@
           name: props
         - mountPath: /usr/share/nginx/html
           name: sample-pv-storage
-      - args:
-        - --secure-listen-address=0.0.0.0:8443
-        - --v=10
+      - args: {{- toYaml .Values.myapp.proxySidecar.args | nindent 8 }}
         env:
         - name: KUBERNETES_CLUSTER_DOMAIN
           value: {{ quote .Values.kubernetesClusterDomain }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/helmify-0.4.1/examples/app/values.yaml 
new/helmify-0.4.2/examples/app/values.yaml
--- old/helmify-0.4.1/examples/app/values.yaml  2023-04-10 19:47:21.000000000 
+0200
+++ new/helmify-0.4.2/examples/app/values.yaml  2023-04-28 09:50:13.000000000 
+0200
@@ -53,6 +53,10 @@
   var2: ""
 myapp:
   app:
+    args:
+    - --health-probe-bind-address=:8081
+    - --metrics-bind-address=127.0.0.1:8080
+    - --leader-elect
     containerSecurityContext:
       allowPrivilegeEscalation: false
     image:
@@ -69,6 +73,9 @@
     region: east
     type: user-node
   proxySidecar:
+    args:
+    - --secure-listen-address=0.0.0.0:8443
+    - --v=10
     image:
       repository: gcr.io/kubebuilder/kube-rbac-proxy
       tag: v0.8.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/helmify-0.4.1/examples/operator/templates/deployment.yaml 
new/helmify-0.4.2/examples/operator/templates/deployment.yaml
--- old/helmify-0.4.1/examples/operator/templates/deployment.yaml       
2023-04-10 19:47:21.000000000 +0200
+++ new/helmify-0.4.2/examples/operator/templates/deployment.yaml       
2023-04-28 09:50:13.000000000 +0200
@@ -25,11 +25,7 @@
       {{- include "operator.selectorLabels" . | nindent 8 }}
     spec:
       containers:
-      - args:
-        - --secure-listen-address=0.0.0.0:8443
-        - --upstream=http://127.0.0.1:8080/
-        - --logtostderr=true
-        - --v=10
+      - args: {{- toYaml .Values.controllerManager.kubeRbacProxy.args | 
nindent 8 }}
         env:
         - name: KUBERNETES_CLUSTER_DOMAIN
           value: {{ quote .Values.kubernetesClusterDomain }}
@@ -40,10 +36,7 @@
         - containerPort: 8443
           name: https
         resources: {}
-      - args:
-        - --health-probe-bind-address=:8081
-        - --metrics-bind-address=127.0.0.1:8080
-        - --leader-elect
+      - args: {{- toYaml .Values.controllerManager.manager.args | nindent 8 }}
         command:
         - /manager
         env:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/helmify-0.4.1/examples/operator/values.yaml 
new/helmify-0.4.2/examples/operator/values.yaml
--- old/helmify-0.4.1/examples/operator/values.yaml     2023-04-10 
19:47:21.000000000 +0200
+++ new/helmify-0.4.2/examples/operator/values.yaml     2023-04-28 
09:50:13.000000000 +0200
@@ -2,10 +2,19 @@
   var4: value for var4
 controllerManager:
   kubeRbacProxy:
+    args:
+    - --secure-listen-address=0.0.0.0:8443
+    - --upstream=http://127.0.0.1:8080/
+    - --logtostderr=true
+    - --v=10
     image:
       repository: gcr.io/kubebuilder/kube-rbac-proxy
       tag: v0.8.0
   manager:
+    args:
+    - --health-probe-bind-address=:8081
+    - --metrics-bind-address=127.0.0.1:8080
+    - --leader-elect
     containerSecurityContext:
       allowPrivilegeEscalation: false
       capabilities:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/helmify-0.4.1/pkg/processor/deployment/deployment.go 
new/helmify-0.4.2/pkg/processor/deployment/deployment.go
--- old/helmify-0.4.1/pkg/processor/deployment/deployment.go    2023-04-10 
19:47:21.000000000 +0200
+++ new/helmify-0.4.2/pkg/processor/deployment/deployment.go    2023-04-28 
09:50:13.000000000 +0200
@@ -2,11 +2,12 @@
 
 import (
        "fmt"
-       "github.com/arttor/helmify/pkg/processor/pod"
        "io"
        "strings"
        "text/template"
 
+       "github.com/arttor/helmify/pkg/processor/pod"
+
        "github.com/arttor/helmify/pkg/helmify"
        "github.com/arttor/helmify/pkg/processor"
        yamlformat "github.com/arttor/helmify/pkg/yaml"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/helmify-0.4.1/pkg/processor/pod/pod.go 
new/helmify-0.4.2/pkg/processor/pod/pod.go
--- old/helmify-0.4.1/pkg/processor/pod/pod.go  2023-04-10 19:47:21.000000000 
+0200
+++ new/helmify-0.4.2/pkg/processor/pod/pod.go  2023-04-28 09:50:13.000000000 
+0200
@@ -48,14 +48,30 @@
                if err != nil {
                        return nil, nil, err
                }
-               if !exists || len(res) == 0 {
-                       continue
+               if exists && len(res) > 0 {
+                       err = 
unstructured.SetNestedField(containers[i].(map[string]interface{}), 
fmt.Sprintf(`{{- toYaml .Values.%s.%s.resources | nindent 10 }}`, objName, 
containerName), "resources")
+                       if err != nil {
+                               return nil, nil, err
+                       }
                }
-               err = 
unstructured.SetNestedField(containers[i].(map[string]interface{}), 
fmt.Sprintf(`{{- toYaml .Values.%s.%s.resources | nindent 10 }}`, objName, 
containerName), "resources")
+
+               args, exists, err := 
unstructured.NestedStringSlice(containers[i].(map[string]interface{}), "args")
                if err != nil {
                        return nil, nil, err
                }
+               if exists && len(args) > 0 {
+                       err = 
unstructured.SetNestedField(containers[i].(map[string]interface{}), 
fmt.Sprintf(`{{- toYaml .Values.%[1]s.%[2]s.args | nindent 8 }}`, objName, 
containerName), "args")
+                       if err != nil {
+                               return nil, nil, err
+                       }
+
+                       err = unstructured.SetNestedStringSlice(values, args, 
objName, containerName, "args")
+                       if err != nil {
+                               return nil, nil, fmt.Errorf("%w: unable to set 
deployment value field", err)
+                       }
+               }
        }
+
        err = unstructured.SetNestedSlice(specMap, containers, "containers")
        if err != nil {
                return nil, nil, err
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/helmify-0.4.1/pkg/processor/pod/pod_test.go 
new/helmify-0.4.2/pkg/processor/pod/pod_test.go
--- old/helmify-0.4.1/pkg/processor/pod/pod_test.go     1970-01-01 
01:00:00.000000000 +0100
+++ new/helmify-0.4.2/pkg/processor/pod/pod_test.go     2023-04-28 
09:50:13.000000000 +0200
@@ -0,0 +1,152 @@
+package pod
+
+import (
+       "testing"
+
+       "github.com/arttor/helmify/pkg/helmify"
+       "github.com/arttor/helmify/pkg/metadata"
+       appsv1 "k8s.io/api/apps/v1"
+       "k8s.io/apimachinery/pkg/runtime"
+
+       "github.com/arttor/helmify/internal"
+       "github.com/stretchr/testify/assert"
+)
+
+const (
+       strDeployment = `
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: nginx-deployment
+  labels:
+    app: nginx
+spec:
+  replicas: 3
+  selector:
+    matchLabels:
+      app: nginx
+  template:
+    metadata:
+      labels:
+        app: nginx
+    spec:
+      containers:
+      - name: nginx
+        image: nginx:1.14.2
+        args:
+        - --test
+        - --arg
+        ports:
+        - containerPort: 80
+`
+
+       strDeploymentWithNoArgs = `
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: nginx-deployment
+  labels:
+    app: nginx
+spec:
+  replicas: 3
+  selector:
+    matchLabels:
+      app: nginx
+  template:
+    metadata:
+      labels:
+        app: nginx
+    spec:
+      containers:
+      - name: nginx
+        image: nginx:1.14.2
+        ports:
+        - containerPort: 80
+`
+)
+
+func Test_pod_Process(t *testing.T) {
+       t.Run("deployment with args", func(t *testing.T) {
+               var deploy appsv1.Deployment
+               obj := internal.GenerateObj(strDeployment)
+               err := 
runtime.DefaultUnstructuredConverter.FromUnstructured(obj.Object, &deploy)
+               specMap, tmpl, err := ProcessSpec("nginx", &metadata.Service{}, 
deploy.Spec.Template.Spec)
+               assert.NoError(t, err)
+
+               assert.Equal(t, map[string]interface{}{
+                       "containers": []interface{}{
+                               map[string]interface{}{
+                                       "args": "{{- toYaml 
.Values.nginx.nginx.args | nindent 8 }}",
+                                       "env": []interface{}{
+                                               map[string]interface{}{
+                                                       "name":  
"KUBERNETES_CLUSTER_DOMAIN",
+                                                       "value": "{{ quote 
.Values.kubernetesClusterDomain }}",
+                                               },
+                                       },
+                                       "image": "{{ 
.Values.nginx.nginx.image.repository }}:{{ .Values.nginx.nginx.image.tag | 
default .Chart.AppVersion }}",
+                                       "name":  "nginx", "ports": 
[]interface{}{
+                                               map[string]interface{}{
+                                                       "containerPort": 
int64(80),
+                                               },
+                                       },
+                                       "resources": map[string]interface{}{},
+                               },
+                       },
+               }, specMap)
+
+               assert.Equal(t, helmify.Values{
+                       "nginx": map[string]interface{}{
+                               "nginx": map[string]interface{}{
+                                       "image": map[string]interface{}{
+                                               "repository": "nginx",
+                                               "tag":        "1.14.2",
+                                       },
+                                       "args": []interface{}{
+                                               "--test",
+                                               "--arg",
+                                       },
+                               },
+                       },
+               }, tmpl)
+       })
+
+       t.Run("deployment with no args", func(t *testing.T) {
+               var deploy appsv1.Deployment
+               obj := internal.GenerateObj(strDeploymentWithNoArgs)
+               err := 
runtime.DefaultUnstructuredConverter.FromUnstructured(obj.Object, &deploy)
+               specMap, tmpl, err := ProcessSpec("nginx", &metadata.Service{}, 
deploy.Spec.Template.Spec)
+               assert.NoError(t, err)
+
+               assert.Equal(t, map[string]interface{}{
+                       "containers": []interface{}{
+                               map[string]interface{}{
+                                       "env": []interface{}{
+                                               map[string]interface{}{
+                                                       "name":  
"KUBERNETES_CLUSTER_DOMAIN",
+                                                       "value": "{{ quote 
.Values.kubernetesClusterDomain }}",
+                                               },
+                                       },
+                                       "image": "{{ 
.Values.nginx.nginx.image.repository }}:{{ .Values.nginx.nginx.image.tag | 
default .Chart.AppVersion }}",
+                                       "name":  "nginx", "ports": 
[]interface{}{
+                                               map[string]interface{}{
+                                                       "containerPort": 
int64(80),
+                                               },
+                                       },
+                                       "resources": map[string]interface{}{},
+                               },
+                       },
+               }, specMap)
+
+               assert.Equal(t, helmify.Values{
+                       "nginx": map[string]interface{}{
+                               "nginx": map[string]interface{}{
+                                       "image": map[string]interface{}{
+                                               "repository": "nginx",
+                                               "tag":        "1.14.2",
+                                       },
+                               },
+                       },
+               }, tmpl)
+       })
+
+}

++++++ helmify.obsinfo ++++++
--- /var/tmp/diff_new_pack.yJgRdb/_old  2023-04-28 16:26:17.335033262 +0200
+++ /var/tmp/diff_new_pack.yJgRdb/_new  2023-04-28 16:26:17.339033286 +0200
@@ -1,5 +1,5 @@
 name: helmify
-version: 0.4.1
-mtime: 1681148841
-commit: 9e709ee1587ab637bf811837213670c1f1125ba4
+version: 0.4.2
+mtime: 1682668213
+commit: 3e87d86d3c6468ec33150d57f6f2c37de00b86da
 

++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/helmify/vendor.tar.gz 
/work/SRC/openSUSE:Factory/.helmify.new.1533/vendor.tar.gz differ: char 5, line 
1

Reply via email to