Add script for compiling copyright deposits (#9646)

* Add script for compiling copyright deposits

* git mv copyright-deposit script/
This commit is contained in:
Kyle E. Mitchell 2020-05-06 09:51:45 -07:00 committed by GitHub
parent 666823d4b7
commit 6c968b7945
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 68 additions and 1 deletions

5
.gitignore vendored
View File

@ -137,4 +137,7 @@ node_modules
openapi/*
# ember-cli generated
dist
dist
# Copyright Deposits
copyright

64
script/copyright-deposit Executable file
View File

@ -0,0 +1,64 @@
#!/bin/bash
set -e
mkdir -p copyright
tmp=$(mktemp -d)
function cleanup () {
rm -rf "$tmp"
}
trap cleanup EXIT
# Docs
echo "Compiling documentation deposit..."
docs="$tmp/docs"
mkdir -p "$docs"
# ./README.md
echo "README.md"
PDF_FLAGS="--pdf-engine=xelatex"
pandoc $PDF_FLAGS -o "$tmp/docs/00000.pdf" README.md
# ./docs
counter=0
for md in docs/*.md; do
echo "$md"
counter=$((counter+1))
printf -v padded "%05d" $counter
pandoc $PDF_FLAGS -o "$docs/$padded.pdf" "$md"
done
pdftk $docs/*.pdf cat output copyright/documentation-deposit.pdf
echo "copyright/documentation-deposit.pdf"
# Code
echo "Compiling code deposit..."
code="$tmp/code"
mkdir -p "$code"
files=$(git ls-files app script | grep -E "\\.(js|rb)$")
sample=15
first=$(head -n "$sample" <<< "$files")
last=$(tail -n "$sample" <<< "$files")
unoconv --listener &
function process_code () {
echo "$1"
counter=$((counter+1))
printf -v padded "%05d" $counter
printf "%s\\n\\n" "$1" > "$code/$padded.txt"
cat "$1" >> "$code/$padded.txt"
unoconv -o "$code/$padded.pdf" "$code/$padded.txt"
}
counter=0
while IFS= read -r file; do
process_code "$file"
done <<< "$first"
while IFS= read -r file; do
process_code "$file"
done <<< "$last"
pdftk $code/*.pdf cat output $code/code.pdf
# first 25 pages and last 25 pages
pdftk $code/code.pdf cat 1-25 r25-end output copyright/code-deposit.pdf
echo "copyright/code-deposit.pdf"