diff --git a/.github/workflows/deploy-preview.yml b/.github/workflows/deploy-preview.yml index 65658db..bceae9b 100644 --- a/.github/workflows/deploy-preview.yml +++ b/.github/workflows/deploy-preview.yml @@ -1,10 +1,11 @@ -name: Deploy Preview to Neocities +name: Build and Deploy Preview # only run on changes to preview on: push: branches: - preview + workflow_dispatch: concurrency: # prevent concurrent deploys doing strange things group: deploy-preview @@ -42,16 +43,20 @@ jobs: chmod 644 ~/.ssh/known_hosts - name: Build with Hugo run: HUGO_REMOTE_FONT_PATH=${{ secrets.REMOTE_FONT_PATH }} hugo --minify --environment preview - - name: Insert 404 page - run: | - cp public/404/index.html public/not_found.html - name: Highlight with Torchlight run: | npm i @torchlight-api/torchlight-cli - npx torchlight - - name: Deploy to Neocities - uses: bcomnes/deploy-to-neocities@v1 + TORCHLIGHT_TOKEN=${{ secrets.TORCHLIGHT_TOKEN }} npx torchlight + - name: Deploy to Bunny + uses: ayeressian/bunnycdn-storage-deploy@v2.2.2 with: - api_token: ${{ secrets.NEOCITIES_PREVIEW_API_TOKEN }} - cleanup: true - dist_dir: public \ No newline at end of file + source: public + destination: / + storageZoneName: "${{ secrets.BUNNY_STORAGE_NAME_PREVIEW }}" + storagePassword: "${{ secrets.BUNNY_STORAGE_PASSWORD_PREVIEW }}" + storageEndpoint: "${{ secrets.BUNNY_STORAGE_ENDPOINT }}" + accessKey: "${{ secrets.BUNNY_API_KEY }}" + pullZoneId: "${{ secrets.BUNNY_ZONE_ID_PREVIEW }}" + upload: "true" + remove: "true" + purgePullZone: "true" \ No newline at end of file diff --git a/.github/workflows/deploy-prod.yml b/.github/workflows/deploy-prod.yml index 341fb88..119ef5a 100644 --- a/.github/workflows/deploy-prod.yml +++ b/.github/workflows/deploy-prod.yml @@ -1,4 +1,4 @@ -name: Deploy to Production +name: Build and Deploy Prod # only run on changes to main on: @@ -45,19 +45,23 @@ jobs: chmod 644 ~/.ssh/known_hosts - name: Build with Hugo run: HUGO_REMOTE_FONT_PATH=${{ secrets.REMOTE_FONT_PATH }} hugo --minify - - name: Insert 404 page - run: | - cp public/404/index.html public/not_found.html - name: Highlight with Torchlight run: | npm i @torchlight-api/torchlight-cli - npx torchlight - - name: Deploy HTML to Neocities - uses: bcomnes/deploy-to-neocities@v1 + TORCHLIGHT_TOKEN=${{ secrets.TORCHLIGHT_TOKEN }} npx torchlight + - name: Deploy to Bunny + uses: ayeressian/bunnycdn-storage-deploy@v2.2.2 with: - api_token: ${{ secrets.NEOCITIES_API_TOKEN }} - cleanup: true - dist_dir: public + source: public + destination: / + storageZoneName: "${{ secrets.BUNNY_STORAGE_NAME }}" + storagePassword: "${{ secrets.BUNNY_STORAGE_PASSWORD }}" + storageEndpoint: "${{ secrets.BUNNY_STORAGE_ENDPOINT }}" + accessKey: "${{ secrets.BUNNY_API_KEY }}" + pullZoneId: "${{ secrets.BUNNY_ZONE_ID }}" + upload: "true" + remove: "true" + purgePullZone: "true" - name: Deploy GMI to Agate run: | rsync -avz --delete --exclude='*.html' --exclude='*.css' --exclude='*.js' -e ssh public/ deploy@${{ secrets.GMI_HOST }}:${{ secrets.GMI_CONTENT_PATH }} diff --git a/config/preview/hugo.toml b/config/preview/hugo.toml index 8936b1b..f9f012b 100644 --- a/config/preview/hugo.toml +++ b/config/preview/hugo.toml @@ -1 +1 @@ -baseURL = "https://preview--runtimeterror.neocities.org/" \ No newline at end of file +baseURL = "https://preview.runtimeterror.dev/" \ No newline at end of file diff --git a/content/changelog.md b/content/changelog.md index bf481de..715a67a 100644 --- a/content/changelog.md +++ b/content/changelog.md @@ -1,7 +1,7 @@ --- title: "/changelog" date: "2024-05-26T21:19:08Z" -lastmod: "2024-05-30" +lastmod: "2024-06-06" description: "Maybe I should keep a log of all my site-related tinkering?" featured: false toc: false @@ -10,6 +10,9 @@ categories: slashes --- *High-level list of config/layout changes to the site.* +**2024-06-06:** +- Migrate hosting from Neocities to Bunny CDN + **2024-05-30:** - Fix broken styling for taxonomy (categories/tags) feeds - Open "notes" header link in new tab since it's an external link diff --git a/content/colophon.md b/content/colophon.md index 15c6c4b..92a5dd4 100644 --- a/content/colophon.md +++ b/content/colophon.md @@ -1,7 +1,7 @@ --- title: "/colophon" date: "2024-05-26T22:30:58Z" -lastmod: "2024-05-28" +lastmod: "2024-06-06" description: "There's a lot that goes into this site. Let me tell you how it works." featured: false toc: true @@ -16,8 +16,8 @@ categories: slashes - performs syntax highlighting with [Torchlight](https://torchlight.dev) ([details](/spotlight-on-torchlight/)). - provides site search with [lunr](https://lunrjs.com/) based on an implementation detailed by [Victoria Drake](https://victoria.dev/blog/add-search-to-hugo-static-sites-with-lunr/). - leverages [tinylytics](https://tinylytics.app/) for privacy-friendly analytics and cute kudos buttons. -- uses [bunny.net](https://bunny.net) for DNS and CDN services. -- is published to / hosted by [Neocities](https://neocities.org) with a GitHub Actions workflow ([details](/deploy-hugo-neocities-github-actions/)). +- resolves via [Bunny DNS](https://bunny.net/dns/). +- is published to / hosted by [Bunny CND](https://bunny.net/cdn/) with a GitHub Actions workflow. - has a [Gemini](https://geminiprotocol.net) mirror at `gemini://gmi.runtimeterror.dev`. This is generated from a [Hugo gemtext post layout](https://github.com/jbowdre/runtimeterror/blob/main/layouts/_default/single.gmi), deployed to a [Vultr](https://www.vultr.com/) VPS through a GitHub Actions workflow, and served with [Agate](https://github.com/mbrubeck/agate). diff --git a/content/posts/prettify-hugo-rss-feed-xslt/index.md b/content/posts/prettify-hugo-rss-feed-xslt/index.md index 3667692..3bb42b8 100644 --- a/content/posts/prettify-hugo-rss-feed-xslt/index.md +++ b/content/posts/prettify-hugo-rss-feed-xslt/index.md @@ -1,7 +1,7 @@ --- title: "Prettify Hugo RSS Feeds with XSLT" date: 2024-04-30 -lastmod: "2024-05-30" +lastmod: "2024-06-05" description: "Making my Hugo-generated RSS XML look as good to human visitors as it does to feed readers." featured: false thumbnail: pretty-feed.png @@ -180,7 +180,7 @@ That's getting there: ![A darker styled RSS page](getting-there-feed.png) -Including those CSS styles means that the rendered page now uses my color palette and the [font I worked so hard to integrate](/using-custom-font-hugo/). I'm just going to make a few more tweaks to change some of the formatting, put the `New to feeds?` bit on its own line, and point to my [self-hosted instance of the SearXNG metasearch engine](https://scribbles.jbowdre.lol/post/self-hosting-a-search-engine-iyjdlk6y) instead of DDG. +Including those CSS styles means that the rendered page now uses my color palette and the [font I worked so hard to integrate](/using-custom-font-hugo/). I'm just going to make a few more tweaks to change some of the formatting, put the `New to feeds?` bit on its own line, and point to [Mojeek](https://mojeek.com) instead of DDG ([why?](https://scribbles.jbowdre.lol/post/a-comprehensive-evaluation-of-various-search-engines-i-ve-used)). Here's my final (for now) `static/xml/feed.xsl` file: @@ -210,7 +210,7 @@ Here's my final (for now) `static/xml/feed.xsl` file:
This is an RSS feed. To subscribe to it, copy its address and paste it when your feed reader asks for it. It will be updated periodically in your reader.
-New to feeds? Learn more.
+New to feeds? Learn more.
This is an RSS feed. To subscribe to it, copy its address and paste it when your feed reader asks for it. It will be updated periodically in your reader.
-New to feeds? Learn more.
+New to feeds? Learn more.