@@ -23,39 +23,38 @@ jobs:
2323 ruby-version : ' 3.1'
2424 bundler-cache : true
2525
26- - name : Setup Pages
27- id : pages
28- uses : actions/configure-pages@v5
29-
30- - name : Build Site
31- uses : actions/jekyll-build-pages@v1.0.13
32-
33- - name : Create Clean Build Output
26+ # Build with standard Jekyll instead of GitHub's Jekyll build action
27+ - name : Build with Jekyll
3428 run : |
35- # Create a clean directory
36- mkdir -p clean_site
29+ bundle install
30+ bundle exec jekyll build
31+
32+ - name : Prepare Clean Deployment Package
33+ run : |
34+ # Create a .nojekyll file to bypass GitHub Pages processing
35+ touch _site/.nojekyll
36+
37+ # Create a clean deployment directory
38+ mkdir -p deploy
3739
38- # Use plain copy (no symlinks) to copy files
39- echo "Creating a clean copy of the site..."
40- cp -r _site/* clean_site/ || echo "Copy failed - checking issue"
40+ # Use tar to normalize file permissions/attributes during copying
41+ tar -cf - -C _site . | tar -xf - -C deploy
4142
42- # Check for any problematic files in the clean directory
43+ # Check for any problematic files
4344 echo "Checking for symlinks..."
44- find clean_site -type l -ls || echo "No symlinks found"
45+ find deploy -type l | wc -l
4546
46- # Check for hard links - files with more than 1 link
4747 echo "Checking for hard links..."
48- find clean_site -type f -links +1 -ls || echo "No hard links found"
48+ find deploy -type f -links +1 | wc -l
4949
50- # Show directory size
5150 echo "Directory size:"
52- du -sh clean_site
51+ du -sh deploy
5352
5453 - name : Upload artifact
5554 uses : actions/upload-artifact@v4
5655 with :
5756 name : github-pages
58- path : " clean_site " # Upload clean_site instead of _site
57+ path : " deploy "
5958
6059 deploy :
6160 needs : build
0 commit comments