Skip to content

Commit d406faf

Browse files
committed
feat(build): add protect variant for ProtectJS customers
Add new build variant that excludes config management and encryptindex components for customers who don't need database-side configuration. Outputs: - release/cipherstash-encrypt-protect.sql - release/cipherstash-encrypt-protect-uninstall.sql The protect variant excludes src/config/* and src/encryptindex/* while retaining all core encrypted types, operators, and index term types.
1 parent 4bef1b0 commit d406faf

File tree

2 files changed

+32
-1
lines changed

2 files changed

+32
-1
lines changed

tasks/build.sh

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
#MISE description="Build SQL into single release file"
33
#MISE alias="b"
44
#MISE sources=["src/**/*.sql"]
5-
#MISE outputs=["release/cipherstash-encrypt.sql","release/cipherstash-encrypt-uninstall.sql"]
5+
#MISE outputs=["release/cipherstash-encrypt.sql","release/cipherstash-encrypt-uninstall.sql","release/cipherstash-encrypt-protect.sql","release/cipherstash-encrypt-protect-uninstall.sql"]
66
#USAGE flag "--version <version>" help="Specify release version of EQL" default="DEV"
77

88
#!/bin/bash
@@ -17,9 +17,14 @@ rm -f release/cipherstash-encrypt.sql
1717
rm -f release/cipherstash-encrypt-uninstall-supabase.sql
1818
rm -f release/cipherstash-encrypt-supabase.sql
1919

20+
rm -f release/cipherstash-encrypt-protect.sql
21+
rm -f release/cipherstash-encrypt-protect-uninstall.sql
22+
2023
rm -f src/version.sql
2124
rm -f src/deps-supabase.txt
2225
rm -f src/deps-ordered-supabase.txt
26+
rm -f src/deps-protect.txt
27+
rm -f src/deps-ordered-protect.txt
2328

2429

2530
RELEASE_VERSION=${usage_version:-DEV}
@@ -85,6 +90,29 @@ cat src/deps-ordered-supabase.txt | xargs cat | grep -v REQUIRE >> dbdev/eql--0.
8590
cat tasks/uninstall.sql >> release/cipherstash-encrypt-uninstall-supabase.sql
8691

8792

93+
# Protect variant build - excludes config management and encryptindex
94+
find src -type f -path "*.sql" ! -path "*_test.sql" ! -path "**/config/*" ! -path "**/encryptindex/*" | while IFS= read -r sql_file; do
95+
echo $sql_file
96+
97+
echo "$sql_file $sql_file" >> src/deps-protect.txt
98+
99+
while IFS= read -r line; do
100+
if [[ "$line" == *"-- REQUIRE:"* ]]; then
101+
deps=${line#*-- REQUIRE: }
102+
for dep in $deps; do
103+
echo "$sql_file $dep" >> src/deps-protect.txt
104+
done
105+
fi
106+
done < "$sql_file"
107+
done
108+
109+
cat src/deps-protect.txt | tsort | tac > src/deps-ordered-protect.txt
110+
111+
cat src/deps-ordered-protect.txt | xargs cat | grep -v REQUIRE >> release/cipherstash-encrypt-protect.sql
112+
113+
cat tasks/uninstall-protect.sql >> release/cipherstash-encrypt-protect-uninstall.sql
114+
115+
88116
set +x
89117
echo
90118
echo '###############################################'
@@ -94,7 +122,9 @@ echo
94122
echo 'Installer:'
95123
echo ' release/cipherstash-encrypt.sql'
96124
echo ' release/cipherstash-encrypt-supabase.sql'
125+
echo ' release/cipherstash-encrypt-protect.sql'
97126
echo
98127
echo 'Uninstaller:'
99128
echo ' release/cipherstash-encrypt-uninstall.sql'
100129
echo ' release/cipherstash-encrypt-uninstall-supabase.sql'
130+
echo ' release/cipherstash-encrypt-protect-uninstall.sql'

tasks/uninstall-protect.sql

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
DROP SCHEMA IF EXISTS eql_v2 CASCADE;

0 commit comments

Comments
 (0)