diff options
author | vvvv <vvvv@yandex-team.ru> | 2022-02-16 18:21:44 +0300 |
---|---|---|
committer | vvvv <vvvv@yandex-team.ru> | 2022-02-16 18:21:44 +0300 |
commit | e1e97356e553c2f4a13eda00a625caa975f4ac61 (patch) | |
tree | 0d5188cbccc5287dc51e092ce07574450388c78d | |
parent | 04e26cfb286cbc71346a217021012bd82077c66f (diff) | |
download | ydb-e1e97356e553c2f4a13eda00a625caa975f4ac61.tar.gz |
YQL-13710 scripts to copy/patch vanilla PG sources from contrib (WIP)
ref:192b62e95d5442641ba066eb8dd9bdc213e0335c
-rw-r--r-- | ydb/library/yql/parser/pg_query_wrapper/copy_src.py | 48 | ||||
-rwxr-xr-x | ydb/library/yql/parser/pg_query_wrapper/copy_src.sh | 3 |
2 files changed, 51 insertions, 0 deletions
diff --git a/ydb/library/yql/parser/pg_query_wrapper/copy_src.py b/ydb/library/yql/parser/pg_query_wrapper/copy_src.py new file mode 100644 index 0000000000..41a844d3a4 --- /dev/null +++ b/ydb/library/yql/parser/pg_query_wrapper/copy_src.py @@ -0,0 +1,48 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import os +from shutil import Error, copy2, rmtree + +def mycopy2(src, dst): + if src.endswith("ya.make"): + return + else: + copy2(src, dst) + +def copytree(src, dst): + names = os.listdir(src) + os.makedirs(dst) + errors = [] + for name in names: + srcname = os.path.join(src, name) + dstname = os.path.join(dst, name) + print(srcname) + try: + if os.path.isdir(srcname): + copytree(srcname, dstname) + else: + mycopy2(srcname, dstname) + except OSError as why: + errors.append((srcname, dstname, str(why))) + except Error as err: + errors.extend(err.args[0]) + if errors: + raise Error(errors) + +def make_sources_list(): + with open("../../../../../contrib/libs/postgresql/ya.make","r") as fsrc: + with open("pg_sources.inc","w") as fdst: + fdst.write("SRCS(\n") + for line in fsrc: + if " src/" in line: + print(line.strip()) + fdst.write(" postgresql/" + line.strip() + "\n") + fdst.write(")\n") + +if __name__ == "__main__": + make_sources_list() + if os.path.isdir("postgresql"): + rmtree("postgresql") + copytree("../../../../../contrib/libs/postgresql", "postgresql") + diff --git a/ydb/library/yql/parser/pg_query_wrapper/copy_src.sh b/ydb/library/yql/parser/pg_query_wrapper/copy_src.sh new file mode 100755 index 0000000000..c5c6cfd6ad --- /dev/null +++ b/ydb/library/yql/parser/pg_query_wrapper/copy_src.sh @@ -0,0 +1,3 @@ +#!/usr/bin/env bash +set -eux +python3 copy_src.py |