From 88c5c5b41e1665025c5d79e4c98718d0a8b4f8b1 Mon Sep 17 00:00:00 2001 From: Alek Westover Date: Wed, 12 Jul 2023 11:42:35 -0400 Subject: [PATCH] make it bash not python --- .github/workflows/build_and_test.yml | 2 +- scripts/combine_control_files.py | 16 ------- scripts/combine_control_files.sh | 65 ++++++++++++++++++++++++++++ 3 files changed, 66 insertions(+), 17 deletions(-) delete mode 100644 scripts/combine_control_files.py create mode 100644 scripts/combine_control_files.sh diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 0c4531da77..43c4234bb4 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -968,7 +968,7 @@ jobs: # rm -rf ./extensions/lib/neon* docker cp ${{ steps.create-container.outputs.EID }}:/ ./ - poetry run python3 ./scripts/combine_control_files.py + sh ./scripts/combine_control_files.sh - name: Upload postgres-extensions to S3 run: | diff --git a/scripts/combine_control_files.py b/scripts/combine_control_files.py deleted file mode 100644 index 764131bf5b..0000000000 --- a/scripts/combine_control_files.py +++ /dev/null @@ -1,16 +0,0 @@ -import json -import os - -# enable custom extensions for specific tenants -enabled_extensions = {"123454321": ["anon"], "public": ["embedding"]} - -control_data = {} -for control_file in os.listdir("control_files"): - ext_name = control_file.replace(".control", "") - with open(control_file, "r") as f: - control_data[ext_name] = f.read() - -all_data = {"enabled_extensions": enabled_extensions, "control_data": control_data} - -with open("ext_index.json", "w") as f: - json.dump(all_data, f) diff --git a/scripts/combine_control_files.sh b/scripts/combine_control_files.sh new file mode 100644 index 0000000000..fab3bd1b57 --- /dev/null +++ b/scripts/combine_control_files.sh @@ -0,0 +1,65 @@ +#!/bin/bash + +# Enable custom extensions for specific tenants +declare -A enabled_extensions +enabled_extensions["123454321"]=("anon") +enabled_extensions["public"]=("embedding") + +# Initialize control data +declare -A control_data + +# Read control files +for control_file in control_files/*.control; do + ext_name=$(basename "$control_file" .control) + control_data["$ext_name"]=$(cat "$control_file") +done + +# Construct all data +all_data='{"enabled_extensions":'"$(declare -p enabled_extensions)"', "control_data":'"$(declare -p control_data)"'}' + +# Write all data to ext_index.json +echo "$all_data" > ext_index.json + +# const fs = require('fs'); + +# // enable custom extensions for specific tenants +# const enabledExtensions = { +# "123454321": ["anon"], +# "public": ["embedding"] +# }; + +# const controlData = {}; +# const controlFiles = fs.readdirSync("control_files"); + +# controlFiles.forEach(controlFile => { +# const extName = controlFile.replace(".control", ""); +# const controlFilePath = `control_files/${controlFile}`; +# const fileData = fs.readFileSync(controlFilePath, "utf8"); +# controlData[extName] = fileData; +# }); + +# const allData = { +# enabledExtensions: enabledExtensions, +# controlData: controlData +# }; + +# const jsonData = JSON.stringify(allData, null, 2); +# fs.writeFileSync("ext_index.json", jsonData); + + +# // import json +# // import os + +# // # enable custom extensions for specific tenants +# // enabled_extensions = {"123454321": ["anon"], "public": ["embedding"]} + +# // control_data = {} +# // for control_file in os.listdir("control_files"): +# // ext_name = control_file.replace(".control", "") +# // with open(control_file, "r") as f: +# // control_data[ext_name] = f.read() + +# // all_data = {"enabled_extensions": enabled_extensions, "control_data": control_data} + +# // with open("ext_index.json", "w") as f: +# // json.dump(all_data, f)