Skip to content
name: Deploy to neocities
# only run on changes to main. Use main or master depending on whatever your default branch is called.
on:
push:
branches:
- main
workflow_dispatch:
permissions:
contents: read
concurrency: # prevent concurrent deploys doing strange things
group: deploy-to-neocities
cancel-in-progress: true
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# Set up any tools and build steps here
# This example uses a Node.js toolchain to build a site
# - name: Use Node.js
# uses: actions/setup-node@v3
# with:
# node-version: lts/*
# - name: Install deps and build
# run: |
# npm i
# npm run build
- name: Setup Ruby
uses: ruby/setup-ruby@8575951200e472d5f2d95c625da0c7bec8217c42 # v1.161.0
with:
ruby-version: '3.1' # Not needed with a .ruby-version file
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
cache-version: 0 # Increment this number if you need to re-download cached gems
# Outputs to the './_site' directory by default
- name: Build with Jekyll
run: bundle exec jekyll build
# When the dist_dir is ready, deploy it to neocities
- name: Deploy to neocities
uses: bcomnes/deploy-to-neocities@v2
with:
api_token: ${{ secrets.NEOCITIES_API_TOKEN }}
cleanup: true
dist_dir: public