Skip to content

The deploy never removes a deleted file from gh-pages (keep_files: true) #28

Description

@mmcky

publish.yml deploys with peaceiris/actions-gh-pages@v4 and keep_files: true, so that a push to main does not wipe the live pr-N preview folders. The side effect is that the deploy never removes anything from gh-pages: a file deleted from the source stays on the site.

This has already happened once. #11 deleted six dataset files from lectures/_static on 2026-09-01. Three deploys later they were still served, byte-identical to the deleted files, and #27 had to remove them from gh-pages by hand on 2026-09-29. About 194 figure PNGs that were orphaned the same way are still on the branch.

One structural fix is for the deploy job to check out gh-pages, run rsync -a --delete --exclude 'pr-*/' of the build output over it, and push. Deleted files then go, and the previews stay. Alternatively, keep keep_files and add a cleanup step that can tell a preview folder from a stale file.

This is not urgent, because nothing reads the orphans today. It will bite again the next time a lecture or an asset is deleted.

Found during the datasets-migration close-out (QuantEcon/workspace-lectures#40).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions