Add secrets template, update local and remote build.

This commit is contained in:
2024-12-10 16:01:59 -05:00
parent 48f11fb5af
commit 3139bf4db5
4 changed files with 62 additions and 73 deletions

View File

@@ -16,22 +16,6 @@ jobs:
steps:
- uses: actions/checkout@v3
- name: Cache TeX Live
uses: actions/cache@v3
with:
path: /tmp/texlive
key: texlive-${{ runner.os }}-${{ hashFiles('**/*.tex') }}
restore-keys: |
texlive-${{ runner.os }}-
- name: Set up TeX Live
uses: xu-cheng/latex-action@v3
with:
root_file: |
resume.tex
cv.tex
latexmk_use_xelatex: false
- name: Create public info file
env:
PERSONAL_NAME: ${{ secrets.PERSONAL_NAME || github.repository_owner }}
@@ -54,6 +38,22 @@ jobs:
EOL
envsubst < personal_info.tex > personal_info.tex.tmp
mv personal_info.tex.tmp personal_info.tex
- name: Cache TeX Live
uses: actions/cache@v3
with:
path: /tmp/texlive
key: texlive-${{ runner.os }}-${{ hashFiles('**/*.tex') }}
restore-keys: |
texlive-${{ runner.os }}-
- name: Set up TeX Live
uses: xu-cheng/latex-action@v3
with:
root_file: |
resume.tex
cv.tex
latexmk_use_xelatex: false
- name: Upload Public PDFs as Release
uses: softprops/action-gh-release@v1
@@ -75,29 +75,13 @@ jobs:
steps:
- uses: actions/checkout@v3
- name: Cache TeX Live
uses: actions/cache@v3
with:
path: /tmp/texlive
key: texlive-${{ runner.os }}-${{ hashFiles('**/*.tex') }}
restore-keys: |
texlive-${{ runner.os }}-
- name: Set up TeX Live
uses: xu-cheng/latex-action@v3
with:
root_file: |
resume.tex
cv.tex
latexmk_use_xelatex: false
- name: Create private info file
env:
PERSONAL_NAME: ${{ secrets.PERSONAL_NAME || github.repository_owner }}
PERSONAL_EMAIL: ${{ secrets.PERSONAL_EMAIL || '' }}
PERSONAL_PHONE: ${{ secrets.PERSONAL_PHONE || '' }}
PERSONAL_WEBSITE: ${{ secrets.PERSONAL_WEBSITE || '' }}
PERSONAL_SCHOOL_EMAIL: ${{ secrets.PERSONAL_SCHOOL_EMAIL || '' }}
PERSONAL_PHONE: ${{ secrets.PERSONAL_PHONE || '' }}
PERSONAL_HOME_ADDRESS_LINE1: ${{ secrets.PERSONAL_HOME_ADDRESS_LINE1 || '' }}
PERSONAL_HOME_ADDRESS_LINE2: ${{ secrets.PERSONAL_HOME_ADDRESS_LINE2 || '' }}
PERSONAL_SCHOOL_ADDRESS_LINE1: ${{ secrets.PERSONAL_SCHOOL_ADDRESS_LINE1 || '' }}
@@ -119,6 +103,22 @@ jobs:
EOL
envsubst < personal_info.tex > personal_info.tex.tmp
mv personal_info.tex.tmp personal_info.tex
- name: Cache TeX Live
uses: actions/cache@v3
with:
path: /tmp/texlive
key: texlive-${{ runner.os }}-${{ hashFiles('**/*.tex') }}
restore-keys: |
texlive-${{ runner.os }}-
- name: Set up TeX Live
uses: xu-cheng/latex-action@v3
with:
root_file: |
resume.tex
cv.tex
latexmk_use_xelatex: false
- name: Upload Private PDFs
uses: actions/upload-artifact@v4

9
.secrets-template Normal file
View File

@@ -0,0 +1,9 @@
PERSONAL_EMAIL=""
PERSONAL_PHONE=""
PERSONAL_SCHOOL_EMAIL=""
PERSONAL_HOME_ADDRESS_LINE1=""
PERSONAL_HOME_ADDRESS_LINE2=""
PERSONAL_SCHOOL_ADDRESS_LINE1=""
PERSONAL_SCHOOL_ADDRESS_LINE2=""
PERSONAL_SCHOOL_ADDRESS_LINE3=""

View File

@@ -5,28 +5,29 @@ if [ -f .secrets ]; then
source .secrets
else
echo "Warning: .secrets file not found. Building public version only."
PERSONAL_PHONE=""
PERSONAL_HOME_ADDRESS_LINE1=""
PERSONAL_HOME_ADDRESS_LINE2=""
PERSONAL_SCHOOL_ADDRESS_LINE1=""
PERSONAL_SCHOOL_ADDRESS_LINE2=""
PERSONAL_SCHOOL_ADDRESS_LINE3=""
fi
# Set defaults for missing variables
PERSONAL_NAME=${PERSONAL_NAME:-$(whoami)}
PERSONAL_EMAIL=${PERSONAL_EMAIL:-""}
PERSONAL_WEBSITE=${PERSONAL_WEBSITE:-""}
PERSONAL_SCHOOL_EMAIL=${PERSONAL_SCHOOL_EMAIL:-""}
PERSONAL_PHONE=${PERSONAL_PHONE:-""}
PERSONAL_HOME_ADDRESS_LINE1=${PERSONAL_HOME_ADDRESS_LINE1:-""}
PERSONAL_HOME_ADDRESS_LINE2=${PERSONAL_HOME_ADDRESS_LINE2:-""}
PERSONAL_SCHOOL_ADDRESS_LINE1=${PERSONAL_SCHOOL_ADDRESS_LINE1:-""}
PERSONAL_SCHOOL_ADDRESS_LINE2=${PERSONAL_SCHOOL_ADDRESS_LINE2:-""}
PERSONAL_SCHOOL_ADDRESS_LINE3=${PERSONAL_SCHOOL_ADDRESS_LINE3:-""}
# Function to cleanup
cleanup() {
# Clean up LaTeX artifacts
rm -f *.aux *.log *.out *.fls *.fdb_latexmk *.synctex.gz *.bbl *.blg *.pdf
# Only restore backup if it exists
if [ -f personal_info.tex.bak ]; then
mv personal_info.tex.bak personal_info.tex
fi
}
# Ensure cleanup runs even if script fails
trap cleanup EXIT
# Create output directory
mkdir -p output
# Backup current personal_info.tex if it exists
@@ -39,11 +40,11 @@ if [ -n "$PERSONAL_PHONE" ] || [ -n "$PERSONAL_HOME_ADDRESS_LINE1" ] || [ -n "$P
echo "Building private version..."
cat > personal_info.tex << EOL
% Private version of personal information
\\newcommand{\\personalName}{Sean O'Connor}
\\newcommand{\\personalEmail}{sean@soconnor.dev}
\\newcommand{\\personalName}{${PERSONAL_NAME}}
\\newcommand{\\personalEmail}{${PERSONAL_EMAIL}}
\\newcommand{\\personalPhone}{${PERSONAL_PHONE}}
\\newcommand{\\personalWebsite}{soconnor.dev}
\\newcommand{\\personalSchoolEmail}{sso005@bucknell.edu}
\\newcommand{\\personalWebsite}{${PERSONAL_WEBSITE}}
\\newcommand{\\personalSchoolEmail}{${PERSONAL_SCHOOL_EMAIL}}
\\newcommand{\\personalHomeAddressLineOne}{${PERSONAL_HOME_ADDRESS_LINE1}}
\\newcommand{\\personalHomeAddressLineTwo}{${PERSONAL_HOME_ADDRESS_LINE2}}
\\newcommand{\\personalSchoolAddressLineOne}{${PERSONAL_SCHOOL_ADDRESS_LINE1}}
@@ -57,7 +58,6 @@ EOL
-v "$(pwd)/output:/workspace/output" \
resume-builder bash -c "latexmk -pdf -file-line-error -halt-on-error -interaction=nonstopmode resume.tex cv.tex && mv *.pdf output/"
# Move files to final names
mv output/resume.pdf output/resume-private.pdf 2>/dev/null || true
mv output/cv.pdf output/cv-private.pdf 2>/dev/null || true
fi
@@ -66,11 +66,11 @@ fi
echo "Building public version..."
cat > personal_info.tex << EOL
% Public version of personal information
\\newcommand{\\personalName}{Sean O'Connor}
\\newcommand{\\personalEmail}{sean@soconnor.dev}
\\newcommand{\\personalName}{${PERSONAL_NAME}}
\\newcommand{\\personalEmail}{${PERSONAL_EMAIL}}
\\newcommand{\\personalPhone}{}
\\newcommand{\\personalWebsite}{soconnor.dev}
\\newcommand{\\personalSchoolEmail}{sso005@bucknell.edu}
\\newcommand{\\personalWebsite}{${PERSONAL_WEBSITE}}
\\newcommand{\\personalSchoolEmail}{${PERSONAL_SCHOOL_EMAIL}}
\\newcommand{\\personalHomeAddressLineOne}{}
\\newcommand{\\personalHomeAddressLineTwo}{}
\\newcommand{\\personalSchoolAddressLineOne}{}
@@ -83,7 +83,6 @@ docker run --platform linux/arm64 --rm \
-v "$(pwd)/output:/workspace/output" \
resume-builder bash -c "latexmk -pdf -file-line-error -halt-on-error -interaction=nonstopmode resume.tex cv.tex && mv *.pdf output/"
# Move files to final names
mv output/resume.pdf output/resume-public.pdf 2>/dev/null || true
mv output/cv.pdf output/cv-public.pdf 2>/dev/null || true

View File

@@ -1,19 +0,0 @@
% Template for personal information
% Copy this file to personal_info_private.tex and fill in your private information
% The personal_info_private.tex file is ignored by git
% Basic Information
\newcommand{\personalName}{Your Name}
\newcommand{\personalEmail}{your.email@example.com}
\newcommand{\personalPhone}{+1 (XXX) XXX-XXXX}
\newcommand{\personalWebsite}{example.com}
% School Information
\newcommand{\personalSchoolEmail}{your.school@university.edu}
\newcommand{\personalSchoolAddressLineOne}{University Name}
\newcommand{\personalSchoolAddressLineTwo}{Street Address}
\newcommand{\personalSchoolAddressLineThree}{City, State ZIP}
% Home Information
\newcommand{\personalHomeAddressLineOne}{Street Address}
\newcommand{\personalHomeAddressLineTwo}{City, State ZIP}