From ced0bf59a3f57ab882f95f81488505da061e618a Mon Sep 17 00:00:00 2001
From: Alessandro Pisu <alessandr.pisu@gmail.com>
Date: Wed, 4 Dec 2024 23:24:49 +0100
Subject: [PATCH 1/2] Small optimizations

- Change the `find` `-exec` to a pipe to `xargs`
- Implemented the TODO : combining sed commands
---
 image/service/slapd/assets/schema-to-ldif.sh | 27 ++++++++++----------
 1 file changed, 14 insertions(+), 13 deletions(-)

diff --git a/image/service/slapd/assets/schema-to-ldif.sh b/image/service/slapd/assets/schema-to-ldif.sh
index 34b826f..f7b0ad3 100755
--- a/image/service/slapd/assets/schema-to-ldif.sh
+++ b/image/service/slapd/assets/schema-to-ldif.sh
@@ -42,19 +42,20 @@ for schema in ${SCHEMAS} ; do
       continue
     fi
 
-    find . -name *\}${schema_name}.ldif -exec mv '{}' ./${ldif_file} \;
-
-    # TODO: these sed invocations could all be combined
-    sed -i "/dn:/ c dn: cn=${schema_name},cn=schema,cn=config" ${ldif_file}
-    sed -i "/cn:/ c cn: ${schema_name}" ${ldif_file}
-    sed -i '/structuralObjectClass/ d' ${ldif_file}
-    sed -i '/entryUUID/ d' ${ldif_file}
-    sed -i '/creatorsName/ d' ${ldif_file}
-    sed -i '/createTimestamp/ d' ${ldif_file}
-    sed -i '/entryCSN/ d' ${ldif_file}
-    sed -i '/modifiersName/ d' ${ldif_file}
-    sed -i '/modifyTimestamp/ d' ${ldif_file}
-
+    find . -name *\}${schema_name}.ldif | xargs -I {} mv '{}' ./${ldif_file}
+
+    # Strip ldif file off export metadata metadata
+    sed -e "/dn:/ c dn: cn=${schema_name},cn=schema,cn=config" \
+    -e "/cn:/ c cn: ${schema_name}" \
+    -e '/structuralObjectClass/ d' \
+    -e '/entryUUID/ d' \
+    -e '/creatorsName/ d' \
+    -e '/createTimestamp/ d' \
+    -e '/entryCSN/ d' \
+    -e '/modifiersName/ d' \
+    -e '/modifyTimestamp/ d' \
+    -i ${ldif_file}
+    
     # slapd seems to be very sensitive to how a file ends. There should be no blank lines.
     sed -i '/^ *$/d' ${ldif_file}
 

From 6ff6f0fe3d84db966a6f9388a2800c95cb1d47ea Mon Sep 17 00:00:00 2001
From: Alessandro Pisu <alessandr.pisu@gmail.com>
Date: Wed, 4 Dec 2024 23:26:26 +0100
Subject: [PATCH 2/2] Fix comment

---
 image/service/slapd/assets/schema-to-ldif.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/image/service/slapd/assets/schema-to-ldif.sh b/image/service/slapd/assets/schema-to-ldif.sh
index f7b0ad3..b513403 100755
--- a/image/service/slapd/assets/schema-to-ldif.sh
+++ b/image/service/slapd/assets/schema-to-ldif.sh
@@ -44,7 +44,7 @@ for schema in ${SCHEMAS} ; do
 
     find . -name *\}${schema_name}.ldif | xargs -I {} mv '{}' ./${ldif_file}
 
-    # Strip ldif file off export metadata metadata
+    # Strip ldif file off export metadata
     sed -e "/dn:/ c dn: cn=${schema_name},cn=schema,cn=config" \
     -e "/cn:/ c cn: ${schema_name}" \
     -e '/structuralObjectClass/ d' \