34 lines
959 B
Python
Executable File
34 lines
959 B
Python
Executable File
#!/usr/bin/env nix
|
|
#! nix shell nixpkgs#python3 --command python
|
|
import logging
|
|
|
|
def inject_diff():
|
|
source_file = 'post-diff'
|
|
target_file = 'pr_body.md'
|
|
placeholder = "nix-diff-placeholder"
|
|
|
|
logging.info(f"injecting '{source_file}' into '{target_file}' using '{placeholder}' as a placeholder")
|
|
|
|
out = []
|
|
with open(source_file,'r') as src:
|
|
src_content = src.read()
|
|
if len(src_content) > 60000:
|
|
logging.warning(f"{source_file} is longer than 60k characters, truncating")
|
|
src_content = src_content[:60000]
|
|
with open(target_file,'r') as tgt:
|
|
for line in tgt.readlines():
|
|
if placeholder in line:
|
|
out.append(line.replace(placeholder,src_content))
|
|
else:
|
|
out.append(line)
|
|
|
|
with open(target_file,'w') as tgt:
|
|
tgt.writelines(out)
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
logging.basicConfig( level=logging.INFO)
|
|
inject_diff()
|