Compare commits

..

No commits in common. "master" and "v1.1.3" have entirely different histories.

19 changed files with 16434 additions and 63202 deletions

View File

@ -10,13 +10,9 @@ updates:
# Check the npm registry for updates every day (weekdays) # Check the npm registry for updates every day (weekdays)
schedule: schedule:
interval: "daily" interval: "daily"
groups:
typescript:
patterns:
- "typescript"
- "@voxpelli/tsconfig"
# Enable updates to github actions # Enable updates to github actions
- package-ecosystem: "github-actions" - package-ecosystem: "github-actions"
directory: "/" directory: "/"
schedule: schedule:
interval: "daily" interval: "daily"

View File

@ -5,12 +5,12 @@ on:
push: push:
branches: branches:
- master - master
env: env:
FORCE_COLOR: 1 FORCE_COLOR: 2
node_version: lts/* node_version: lts/*
concurrency: # prevent concurrent deploys doing strange things concurrency: # prevent concurrent deploys doing starnge things
group: deploy-to-neocities group: deploy-to-neocities
cancel-in-progress: true cancel-in-progress: true
@ -19,11 +19,11 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v6 - uses: actions/checkout@v2
# Set up any tools and build steps here # Set up any tools and build steps here
# This example uses a Node.js toolchain to build a site # This example uses a Node.js toolchain to build a site
- name: Use Node.js - name: Use Node.js
uses: actions/setup-node@v6 uses: actions/setup-node@v2
with: with:
node-version: ${{ env.node_version }} node-version: ${{ env.node_version }}
- run: npm i - run: npm i
@ -32,9 +32,7 @@ jobs:
- name: Deploy to neocities - name: Deploy to neocities
uses: bcomnes/deploy-to-neocities@master # dont use master in production uses: bcomnes/deploy-to-neocities@master # dont use master in production
with: with:
api_key: ${{ secrets.NEOCITIES_API_TOKEN }} api_token: ${{ secrets.NEOCITIES_API_TOKEN }}
cleanup: true cleanup: true
dist_dir: public dist_dir: public
protected_files: 'dropbox/*' protected_files: 'dropbox/*'
neocities_supporter: true # set this to true if you have a supporter account and want to bypass unsuported files filter.
preview_before_deploy: true

View File

@ -9,7 +9,7 @@ on:
env: env:
node_version: lts/* node_version: lts/*
FORCE_COLOR: 1 FORCE_COLOR: 2
concurrency: # prevent concurrent releases concurrency: # prevent concurrent releases
group: npm-bump group: npm-bump
@ -19,18 +19,18 @@ jobs:
version_and_release: version_and_release:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v6 - uses: actions/checkout@v2
with: with:
# fetch full history so things like auto-changelog work properly # fetch full history so things like auto-changelog work properly
fetch-depth: 0 fetch-depth: 0
- uses: actions/setup-node@v6 - uses: actions/setup-node@v2
with: with:
node-version: ${{ env.node_version }} node-version: ${{ env.node_version }}
# setting a registry enables the NODE_AUTH_TOKEN env variable where we can set an npm token. REQUIRED # setting a registry enables the NODE_AUTH_TOKEN env variable where we can set an npm token. REQUIRED
registry-url: 'https://registry.npmjs.org' registry-url: 'https://registry.npmjs.org'
- run: npm i - run: npm i
- run: npm test - run: npm test
- uses: bcomnes/npm-bump@v2.2.1 - uses: bcomnes/npm-bump@v2.0.2
with: with:
git_email: bcomnes@gmail.com git_email: bcomnes@gmail.com
git_username: ${{ github.actor }} git_username: ${{ github.actor }}

View File

@ -3,7 +3,7 @@ name: tests
on: [push, pull_request] on: [push, pull_request]
env: env:
FORCE_COLOR: 1 FORCE_COLOR: 2
jobs: jobs:
test: test:
@ -15,9 +15,9 @@ jobs:
node: [lts/*] node: [lts/*]
steps: steps:
- uses: actions/checkout@v6 - uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node }} - name: Use Node.js ${{ matrix.node }}
uses: actions/setup-node@v6 uses: actions/setup-node@v2
with: with:
node-version: ${{ matrix.node }} node-version: ${{ matrix.node }}
- run: npm i - run: npm i
@ -30,7 +30,7 @@ jobs:
pull-requests: write pull-requests: write
contents: write contents: write
steps: steps:
- uses: fastify/github-action-merge-dependabot@v3 - uses: fastify/github-action-merge-dependabot@v3.0.2
if: ${{ github.actor == 'dependabot[bot]' && github.event_name == 'pull_request' && contains(github.head_ref, 'dependabot/github_actions') }} if: ${{ github.actor == 'dependabot[bot]' && github.event_name == 'pull_request' && contains(github.head_ref, 'dependabot/github_actions') }}
with: with:
github-token: ${{secrets.github_token}} github-token: ${{secrets.github_token}}

1
.gitignore vendored
View File

@ -5,4 +5,3 @@ public
node_modules node_modules
tmp_modules tmp_modules
package-lock.json package-lock.json
coverage

View File

@ -7,333 +7,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
## [v3.0.4](https://github.com/bcomnes/deploy-to-neocities/compare/v3.0.3...v3.0.4) ## [v1.1.3](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.2...v1.1.3)
### Merged
- chore(deps): bump minimatch from 10.0.1 to 10.0.3 [`#224`](https://github.com/bcomnes/deploy-to-neocities/pull/224)
### Commits
- Merge pull request #225 from bcomnes/dependabot/npm_and_yarn/async-neocities-4.1.2 [`692b031`](https://github.com/bcomnes/deploy-to-neocities/commit/692b031118b324f3c28f2204ff18882edb9c53af)
- chore(deps): bump async-neocities from 4.1.1 to 4.1.2 [`a1ae452`](https://github.com/bcomnes/deploy-to-neocities/commit/a1ae452c40f056b6cead68ed5d914245860ab45e)
## [v3.0.3](https://github.com/bcomnes/deploy-to-neocities/compare/v3.0.2...v3.0.3) - 2025-06-01
### Merged
- Add my own website in README.md [`#222`](https://github.com/bcomnes/deploy-to-neocities/pull/222)
- chore(deps-dev): bump typescript from 5.7.3 to 5.8.2 [`#217`](https://github.com/bcomnes/deploy-to-neocities/pull/217)
- chore(deps-dev): bump esbuild from 0.24.2 to 0.25.0 [`#213`](https://github.com/bcomnes/deploy-to-neocities/pull/213)
- chore(deps-dev): bump neostandard from 0.11.9 to 0.12.0 [`#211`](https://github.com/bcomnes/deploy-to-neocities/pull/211)
### Commits
- Update async-neocities [`51ec937`](https://github.com/bcomnes/deploy-to-neocities/commit/51ec937eb84fa6beae055593f8e286e7d49d1d1e)
- Merge pull request #221 from bcomnes/dependabot/npm_and_yarn/npm-run-all2-8.0.1 [`7c11b66`](https://github.com/bcomnes/deploy-to-neocities/commit/7c11b664c6b9ed5b7d72def8047f539b2f2205a9)
- More example comments [`5761b44`](https://github.com/bcomnes/deploy-to-neocities/commit/5761b44f4df0408697ca3c9438cf8f7ae8df9628)
## [v3.0.2](https://github.com/bcomnes/deploy-to-neocities/compare/v3.0.1...v3.0.2) - 2024-12-09
### Merged
- chore(deps): bump async-neocities from 4.0.4 to 4.1.0 [`#210`](https://github.com/bcomnes/deploy-to-neocities/pull/210)
## [v3.0.1](https://github.com/bcomnes/deploy-to-neocities/compare/v3.0.0...v3.0.1) - 2024-11-28
### Merged
- chore(deps): bump async-neocities from 4.0.3 to 4.0.4 [`#209`](https://github.com/bcomnes/deploy-to-neocities/pull/209)
- fixed a typo in README.md [`#208`](https://github.com/bcomnes/deploy-to-neocities/pull/208)
- chore(deps-dev): bump typescript from 5.6.3 to 5.7.2 [`#207`](https://github.com/bcomnes/deploy-to-neocities/pull/207)
- Add my website https://jefbecker.com/ to the list. [`#206`](https://github.com/bcomnes/deploy-to-neocities/pull/206)
### Commits
- Update README.md [`15eb88d`](https://github.com/bcomnes/deploy-to-neocities/commit/15eb88d4831e8b3170195c1e2b468e8ab3a9703d)
## [v3.0.0](https://github.com/bcomnes/deploy-to-neocities/compare/v2.0.4...v3.0.0) - 2024-11-19
### Merged
- chore(deps-dev): bump npm-run-all2 from 6.2.6 to 7.0.1 [`#205`](https://github.com/bcomnes/deploy-to-neocities/pull/205)
### Commits
- **Breaking change:** Update to the latest async-neocities 4.0 [`7b14798`](https://github.com/bcomnes/deploy-to-neocities/commit/7b14798c892f2494466bc72d5402c85801f75341)
## [v2.0.4](https://github.com/bcomnes/deploy-to-neocities/compare/v2.0.3...v2.0.4) - 2024-10-07
### Merged
- chore(deps-dev): bump top-bun from 9.1.1 to 10.0.0 [`#202`](https://github.com/bcomnes/deploy-to-neocities/pull/202)
- chore(deps): bump @actions/core from 1.11.0 to 1.11.1 [`#203`](https://github.com/bcomnes/deploy-to-neocities/pull/203)
## [v2.0.3](https://github.com/bcomnes/deploy-to-neocities/compare/v2.0.2...v2.0.3) - 2024-10-03
### Merged
- chore(deps): bump @actions/core from 1.10.1 to 1.11.0 [`#201`](https://github.com/bcomnes/deploy-to-neocities/pull/201)
- Add my site to the readme [`#200`](https://github.com/bcomnes/deploy-to-neocities/pull/200)
- chore(deps-dev): bump top-bun from 8.0.2 to 9.0.1 [`#197`](https://github.com/bcomnes/deploy-to-neocities/pull/197)
- chore(deps-dev): bump top-bun from 7.3.4 to 8.0.0 [`#193`](https://github.com/bcomnes/deploy-to-neocities/pull/193)
- chore(deps): bump minimatch from 9.0.5 to 10.0.1 [`#192`](https://github.com/bcomnes/deploy-to-neocities/pull/192)
- Remove my hobby website from the website list [`#188`](https://github.com/bcomnes/deploy-to-neocities/pull/188)
- chore(deps-dev): bump esbuild from 0.20.2 to 0.21.0 [`#184`](https://github.com/bcomnes/deploy-to-neocities/pull/184)
### Commits
- Merge pull request #199 from bcomnes/dependabot/npm_and_yarn/esbuild-0.24.0 [`f2bd635`](https://github.com/bcomnes/deploy-to-neocities/commit/f2bd635f4250c0f0c3dbf2fbced0be3608c96f2d)
- chore(deps-dev): bump esbuild from 0.23.1 to 0.24.0 [`90e8a07`](https://github.com/bcomnes/deploy-to-neocities/commit/90e8a074cd8aef07020ac80fbc420ee0a4189615)
- Merge pull request #191 from bcomnes/dependabot/npm_and_yarn/esbuild-0.23.0 [`8999c71`](https://github.com/bcomnes/deploy-to-neocities/commit/8999c710228c8627186a5360a882117a20c16cc1)
## [v2.0.2](https://github.com/bcomnes/deploy-to-neocities/compare/v2.0.1...v2.0.2) - 2024-04-04
### Commits
- Clarify default branch situation in README [`1fcd576`](https://github.com/bcomnes/deploy-to-neocities/commit/1fcd576de99dc8f39086f7239bf22962f3b8e7ae)
## [v2.0.1](https://github.com/bcomnes/deploy-to-neocities/compare/v2.0.0...v2.0.1) - 2024-04-04
### Commits
- Update docs [`5a66259`](https://github.com/bcomnes/deploy-to-neocities/commit/5a66259a88059e84b1a3981aa88389854700f8a8)
## [v2.0.0](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.21...v2.0.0) - 2024-04-04
### Merged
- Added https://sacred.neocities.org [`#175`](https://github.com/bcomnes/deploy-to-neocities/pull/175)
- chore(deps-dev): bump esbuild from 0.19.12 to 0.20.0 [`#170`](https://github.com/bcomnes/deploy-to-neocities/pull/170)
- chore(deps): bump actions/setup-node from 3 to 4 [`#165`](https://github.com/bcomnes/deploy-to-neocities/pull/165)
### Fixed
- **Breaking change:** Update action runtime to node20 [`#174`](https://github.com/bcomnes/deploy-to-neocities/issues/174)
### Commits
- Merge pull request #179 from bcomnes/dependabot/npm_and_yarn/minimatch-9.0.4 [`d2622ae`](https://github.com/bcomnes/deploy-to-neocities/commit/d2622ae949a095974f8a3ffb695d70658a9911fa)
- chore(deps): bump minimatch from 9.0.3 to 9.0.4 [`0d910df`](https://github.com/bcomnes/deploy-to-neocities/commit/0d910dfd72d5c6a016940426f91622f84d1dbdca)
- Update README.md [`0ee4b4c`](https://github.com/bcomnes/deploy-to-neocities/commit/0ee4b4c3a5bbab316700252a7e41e758773e2737)
## [v1.1.21](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.20...v1.1.21) - 2023-12-02
### Merged
- chore(deps-dev): bump @siteup/cli from 4.0.1 to 5.0.0 [`#163`](https://github.com/bcomnes/deploy-to-neocities/pull/163)
- chore(deps): bump actions/setup-node from 3 to 4 [`#162`](https://github.com/bcomnes/deploy-to-neocities/pull/162)
### Commits
- Update node in actions and rebuild [`bad0c3f`](https://github.com/bcomnes/deploy-to-neocities/commit/bad0c3f21924f957bd2d41156f9ae9894e8d01a1)
## [v1.1.20](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.19...v1.1.20) - 2023-10-22
### Merged
- chore(deps-dev): bump @siteup/cli from 2.2.11 to 3.1.0 [`#161`](https://github.com/bcomnes/deploy-to-neocities/pull/161)
### Commits
- Update async-neocities to 2.1.6 [`f820123`](https://github.com/bcomnes/deploy-to-neocities/commit/f8201237291216a53f9c4dde35c46a65a8ea534d)
## [v1.1.19](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.18...v1.1.19) - 2023-09-30
### Merged
- chore(deps): bump @actions/core from 1.10.0 to 1.10.1 [`#159`](https://github.com/bcomnes/deploy-to-neocities/pull/159)
- Update neocities.yml [`#158`](https://github.com/bcomnes/deploy-to-neocities/pull/158)
- chore(deps): bump actions/checkout from 3 to 4 [`#157`](https://github.com/bcomnes/deploy-to-neocities/pull/157)
## [v1.1.18](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.17...v1.1.18) - 2023-08-31
### Merged
- chore(deps-dev): bump esbuild from 0.18.20 to 0.19.0 [`#154`](https://github.com/bcomnes/deploy-to-neocities/pull/154)
- Update README.md [`#153`](https://github.com/bcomnes/deploy-to-neocities/pull/153)
### Commits
- Neocities badge [`0827633`](https://github.com/bcomnes/deploy-to-neocities/commit/0827633ad88c495adaa304fb68bb1ef422973659)
- Merge pull request #152 from bcomnes/dependabot/npm_and_yarn/minimatch-9.0.3 [`6b85bf5`](https://github.com/bcomnes/deploy-to-neocities/commit/6b85bf5162547159b92547d1e79f96e5996d2e96)
- chore(deps): bump minimatch from 9.0.2 to 9.0.3 [`48dc557`](https://github.com/bcomnes/deploy-to-neocities/commit/48dc557fed2d40506be024f40ef9c4045d82781a)
## [v1.1.17](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.16...v1.1.17) - 2023-06-27
### Commits
- Prune example URLs [`dabda03`](https://github.com/bcomnes/deploy-to-neocities/commit/dabda0324f7965b65951d021c1e99bc10d640903)
## [v1.1.16](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.15...v1.1.16) - 2023-06-26
### Merged
- chore(deps-dev): bump esbuild from 0.17.19 to 0.18.0 [`#149`](https://github.com/bcomnes/deploy-to-neocities/pull/149)
- chore(deps): bump minimatch from 9.0.0 to 9.0.1 [`#146`](https://github.com/bcomnes/deploy-to-neocities/pull/146)
- chore(deps): bump minimatch from 7.4.2 to 7.4.3 [`#140`](https://github.com/bcomnes/deploy-to-neocities/pull/140)
- chore(deps): bump bcomnes/npm-bump from 2.1.0 to 2.2.1 [`#139`](https://github.com/bcomnes/deploy-to-neocities/pull/139)
- chore(deps): bump minimatch from 7.2.0 to 7.4.2 [`#138`](https://github.com/bcomnes/deploy-to-neocities/pull/138)
- chore(deps): bump minimatch from 7.1.1 to 7.2.0 [`#136`](https://github.com/bcomnes/deploy-to-neocities/pull/136)
- chore(deps): bump minimatch from 7.0.1 to 7.1.0 [`#134`](https://github.com/bcomnes/deploy-to-neocities/pull/134)
- Update README.md [`#131`](https://github.com/bcomnes/deploy-to-neocities/pull/131)
- chore(deps): bump minimatch from 7.0.0 to 7.0.1 [`#132`](https://github.com/bcomnes/deploy-to-neocities/pull/132)
- chore(deps): bump minimatch from 6.2.0 to 7.0.0 [`#130`](https://github.com/bcomnes/deploy-to-neocities/pull/130)
- chore(deps): bump minimatch from 6.1.8 to 6.2.0 [`#129`](https://github.com/bcomnes/deploy-to-neocities/pull/129)
- chore(deps): bump minimatch from 6.1.6 to 6.1.8 [`#128`](https://github.com/bcomnes/deploy-to-neocities/pull/128)
- chore(deps): bump minimatch from 6.1.5 to 6.1.6 [`#123`](https://github.com/bcomnes/deploy-to-neocities/pull/123)
- Add my site [`#122`](https://github.com/bcomnes/deploy-to-neocities/pull/122)
### Commits
- Merge pull request #151 from bcomnes/dependabot/npm_and_yarn/minimatch-9.0.2 [`5f0065b`](https://github.com/bcomnes/deploy-to-neocities/commit/5f0065b0a9cb3627bee2fce1890f6335aeb15bf6)
- Remove packages [`8919ab9`](https://github.com/bcomnes/deploy-to-neocities/commit/8919ab9606c90d47193ddca8159b5540ae38923f)
- chore(deps): bump minimatch from 9.0.1 to 9.0.2 [`7c37474`](https://github.com/bcomnes/deploy-to-neocities/commit/7c37474912a72b54f851a1152ef2f52111927181)
## [v1.1.15](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.14...v1.1.15) - 2023-01-18
### Merged
- chore(deps): bump minimatch from 6.1.3 to 6.1.5 [`#121`](https://github.com/bcomnes/deploy-to-neocities/pull/121)
## [v1.1.14](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.13...v1.1.14) - 2023-01-17
### Merged
- chore(deps-dev): bump mkdirp from 1.0.4 to 2.1.1 [`#118`](https://github.com/bcomnes/deploy-to-neocities/pull/118)
- chore(deps): bump minimatch from 5.1.2 to 6.0.4 [`#117`](https://github.com/bcomnes/deploy-to-neocities/pull/117)
### Commits
- test build [`b6e88c0`](https://github.com/bcomnes/deploy-to-neocities/commit/b6e88c0383e2e7a2b6f71afd4ab109681eec3dba)
- Switch to esbuild [`f417d42`](https://github.com/bcomnes/deploy-to-neocities/commit/f417d42694329e4a2863c587f0d2889fd691da1c)
- Revert "chore(deps): bump minimatch from 5.1.2 to 6.0.4" [`2761a4b`](https://github.com/bcomnes/deploy-to-neocities/commit/2761a4b53809f85506d8c9388e2bd7f4ff0ae58b)
## [v1.1.13](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.12...v1.1.13) - 2022-12-21
### Merged
- chore(deps): bump minimatch from 5.1.1 to 5.1.2 [`#115`](https://github.com/bcomnes/deploy-to-neocities/pull/115)
### Commits
- Update example to use actions v3 [`97a3bdd`](https://github.com/bcomnes/deploy-to-neocities/commit/97a3bdd7ff2cb7dd8a61969d6a3a8029d331bd29)
- Update README.md [`5dda7b9`](https://github.com/bcomnes/deploy-to-neocities/commit/5dda7b9d7afe5f87039e8bff30d1dd6d5eeb793e)
## [v1.1.12](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.11...v1.1.12) - 2022-12-20
### Merged
- chore(deps-dev): bump @vercel/ncc from 0.34.0 to 0.36.0 [`#112`](https://github.com/bcomnes/deploy-to-neocities/pull/112)
- chore(deps): bump minimatch from 5.1.0 to 5.1.1 [`#111`](https://github.com/bcomnes/deploy-to-neocities/pull/111)
### Commits
- Update action to use node 16 [`b5e74f0`](https://github.com/bcomnes/deploy-to-neocities/commit/b5e74f0efddc239968a312e1bae4501d3e84f9a9)
- Merge pull request #113 from bcomnes/dependabot/npm_and_yarn/gh-release-7.0.0 [`1114060`](https://github.com/bcomnes/deploy-to-neocities/commit/1114060652dade40eaacdea104051d6e13a096a3)
- chore(deps-dev): bump gh-release from 6.0.4 to 7.0.0 [`e00b896`](https://github.com/bcomnes/deploy-to-neocities/commit/e00b89634371d88950fa4f3ec2a8892888bc98e2)
## [v1.1.11](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.10...v1.1.11) - 2022-11-07
### Merged
- the site is open-source again [`#107`](https://github.com/bcomnes/deploy-to-neocities/pull/107)
- info [`#104`](https://github.com/bcomnes/deploy-to-neocities/pull/104)
- chore(deps): bump bcomnes/npm-bump from 2.0.2 to 2.1.0 [`#105`](https://github.com/bcomnes/deploy-to-neocities/pull/105)
### Commits
- Print error cause no matter what [`8fae4b2`](https://github.com/bcomnes/deploy-to-neocities/commit/8fae4b2c6c1923355b43f7dcfd2efdad7279ffc1)
- Update README.md [`c7b4dca`](https://github.com/bcomnes/deploy-to-neocities/commit/c7b4dca027b41fa09bc9d92efa5489238bc98a5a)
## [v1.1.10](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.9...v1.1.10) - 2022-10-03
### Merged
- chore(deps): bump @actions/core from 1.9.1 to 1.10.0 [`#102`](https://github.com/bcomnes/deploy-to-neocities/pull/102)
- the site is open-source again [`#103`](https://github.com/bcomnes/deploy-to-neocities/pull/103)
- added notice about my site source code [`#100`](https://github.com/bcomnes/deploy-to-neocities/pull/100)
- Update README.md [`#97`](https://github.com/bcomnes/deploy-to-neocities/pull/97)
- add conorsheehan1.neocities.org [`#95`](https://github.com/bcomnes/deploy-to-neocities/pull/95)
### Commits
- Bump async-neocities to 2.1.3 [`8f9be80`](https://github.com/bcomnes/deploy-to-neocities/commit/8f9be808b5b4f9e1d9a316b391c7c21acfcba3ad)
- Merge pull request #96 from bechnokid/patch-1 [`635243f`](https://github.com/bcomnes/deploy-to-neocities/commit/635243fdea7e5d224675222008031a553bc142c3)
- Add bechnokid.neocities.org to README.md [`9808b83`](https://github.com/bcomnes/deploy-to-neocities/commit/9808b8398bf70ac8e2a41172c74eb9f66e7d0d89)
## [v1.1.9](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.8...v1.1.9) - 2022-08-10
### Commits
- Update deps to fix hung actions [`46319ec`](https://github.com/bcomnes/deploy-to-neocities/commit/46319ec8034824d8a562f3f449080400f2fc0218)
- Merge pull request #94 from bcomnes/dependabot/npm_and_yarn/actions/core-1.9.1 [`3cfd2ec`](https://github.com/bcomnes/deploy-to-neocities/commit/3cfd2ec3ee0474635567bbfc56763329693b16cf)
- chore(deps): bump @actions/core from 1.9.0 to 1.9.1 [`65cb789`](https://github.com/bcomnes/deploy-to-neocities/commit/65cb7897571e6b168e5ba8b0823307c4fe64bc7d)
## [v1.1.8](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.7...v1.1.8) - 2022-07-22
### Fixed
- s/zeit/vercel [`#92`](https://github.com/bcomnes/deploy-to-neocities/issues/92)
### Commits
- Merge pull request #93 from bcomnes/docs [`5e51c4d`](https://github.com/bcomnes/deploy-to-neocities/commit/5e51c4db747382faa9f56d0f8de8f37d2a5842e5)
- Merge pull request #91 from fu-sen/patch-1 [`bda6c1e`](https://github.com/bcomnes/deploy-to-neocities/commit/bda6c1eb47143325a36eea712ac9c954f1c70f12)
- Use lts/* [`9b65715`](https://github.com/bcomnes/deploy-to-neocities/commit/9b6571537b238f3446151711b1ea115e4d4e4023)
## [v1.1.7](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.6...v1.1.7) - 2022-06-17
### Merged
- chore(deps): bump @actions/core from 1.8.2 to 1.9.0 [`#89`](https://github.com/bcomnes/deploy-to-neocities/pull/89)
- Update README.md [`#88`](https://github.com/bcomnes/deploy-to-neocities/pull/88)
- chore(deps-dev): bump npm-run-all2 from 5.0.2 to 6.0.0 [`#87`](https://github.com/bcomnes/deploy-to-neocities/pull/87)
- please add me [`#85`](https://github.com/bcomnes/deploy-to-neocities/pull/85)
## [v1.1.6](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.5...v1.1.6) - 2022-05-26
### Merged
- chore(deps-dev): bump @vercel/ncc from 0.33.4 to 0.34.0 [`#84`](https://github.com/bcomnes/deploy-to-neocities/pull/84)
- chore(deps): bump @actions/core from 1.8.1 to 1.8.2 [`#83`](https://github.com/bcomnes/deploy-to-neocities/pull/83)
### Commits
- Merge pull request #82 from bcomnes/dependabot/npm_and_yarn/actions/core-1.8.1 [`2abb3f9`](https://github.com/bcomnes/deploy-to-neocities/commit/2abb3f996d5b9af84eb44488cfb74e307ad8574d)
- chore(deps): bump @actions/core from 1.8.0 to 1.8.1 [`f16012d`](https://github.com/bcomnes/deploy-to-neocities/commit/f16012dd28b1a06080fa8fefeb28da6cb44b3c2e)
- Update test.yml [`bfa04d5`](https://github.com/bcomnes/deploy-to-neocities/commit/bfa04d557bd13931d6b441e2455b525dc076ed26)
## [v1.1.5](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.4...v1.1.5) - 2022-05-06
### Merged
- chore(deps-dev): bump standard from 16.0.4 to 17.0.0 [`#77`](https://github.com/bcomnes/deploy-to-neocities/pull/77)
- chore(deps): bump @actions/core from 1.6.0 to 1.7.0 [`#78`](https://github.com/bcomnes/deploy-to-neocities/pull/78)
- chore(deps): bump actions/setup-node from 3.1.0 to 3.1.1 [`#76`](https://github.com/bcomnes/deploy-to-neocities/pull/76)
- chore(deps): bump fastify/github-action-merge-dependabot from 3.0.2 to 3.1 [`#75`](https://github.com/bcomnes/deploy-to-neocities/pull/75)
- chore(deps): bump actions/setup-node from 3.0.0 to 3.1.0 [`#74`](https://github.com/bcomnes/deploy-to-neocities/pull/74)
- chore(deps): bump actions/checkout from 2 to 3 [`#73`](https://github.com/bcomnes/deploy-to-neocities/pull/73)
- chore(deps): bump actions/setup-node from 2 to 3.0.0 [`#72`](https://github.com/bcomnes/deploy-to-neocities/pull/72)
### Commits
- Merge pull request #81 from bcomnes/dependabot/npm_and_yarn/actions/core-1.8.0 [`f37bb2b`](https://github.com/bcomnes/deploy-to-neocities/commit/f37bb2b7224fae864b2080db62db15e886dbd6c5)
- chore(deps): bump @actions/core from 1.7.0 to 1.8.0 [`cabfb54`](https://github.com/bcomnes/deploy-to-neocities/commit/cabfb5468a6b1e78144a68c32e2a14c4fdcb839a)
- Merge pull request #80 from bcomnes/dependabot/npm_and_yarn/siteup/cli-2.0.0 [`b36d448`](https://github.com/bcomnes/deploy-to-neocities/commit/b36d44888aa3dce0da455cd8610b988d50925e89)
## [v1.1.4](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.3...v1.1.4) - 2022-02-17
### Merged
- chore(deps): bump minimatch from 4.2.1 to 5.0.0 [`#71`](https://github.com/bcomnes/deploy-to-neocities/pull/71)
- chore(deps): bump minimatch from 3.1.1 to 4.1.1 [`#70`](https://github.com/bcomnes/deploy-to-neocities/pull/70)
### Commits
- Update README.md [`beaded6`](https://github.com/bcomnes/deploy-to-neocities/commit/beaded6a96f0378b2111dc87c379edf035411108)
## [v1.1.3](https://github.com/bcomnes/deploy-to-neocities/compare/v1.1.2...v1.1.3) - 2022-02-08
### Merged ### Merged

View File

@ -4,26 +4,23 @@
[![Actions Status](https://github.com/bcomnes/deploy-to-neocities/workflows/tests/badge.svg)](https://github.com/bcomnes/deploy-to-neocities/actions) [![Actions Status](https://github.com/bcomnes/deploy-to-neocities/workflows/tests/badge.svg)](https://github.com/bcomnes/deploy-to-neocities/actions)
![Deploy to neocities](https://github.com/bcomnes/deploy-to-neocities/workflows/Deploy%20to%20neocities/badge.svg) ![Deploy to neocities](https://github.com/bcomnes/deploy-to-neocities/workflows/Deploy%20to%20neocities/badge.svg)
[![Marketplace link](https://img.shields.io/badge/github%20marketplace-deploy--to--neocities-brightgreen)](https://github.com/marketplace/actions/deploy-to-neocities) [![Marketplace link](https://img.shields.io/badge/github%20marketplace-deploy--to--neocities-brightgreen)](https://github.com/marketplace/actions/deploy-to-neocities)
[![Neocities][neocities-img]](https://deploy-to-neocities.neocities.org)
<center><img src="static/logo.png"></center> <center><img src="static/logo.png"></center>
Efficiently deploy a website to [Neocities][nc] using [Github actions](https://github.com/features/actions). Uses content aware diffing to only update files that changed. Efficiently deploy a website to [Neocities][nc] using [Github actions](https://github.com/features/actions). Uses content aware diffing to only update files that changed.
Alternatively, you can use the bin helper in [async-neocities](https://github.com/bcomnes/async-neocities) to deploy to neocities locally from your own machine as well as in CI.
## Usage ## Usage
```yaml ```yaml
name: Deploy to neocities name: Deploy to neocities
# only run on changes to main. Use main or master depending on whatever your default branch is called. # only run on changes to master
on: on:
push: push:
branches: branches:
- main - master
concurrency: # prevent concurrent deploys doing strange things concurrency: # prevent concurrent deploys doing starnge things
group: deploy-to-neocities group: deploy-to-neocities
cancel-in-progress: true cancel-in-progress: true
@ -32,29 +29,23 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
# The checkout step copies your repo into the action runner. Important! - uses: actions/checkout@v1
- uses: actions/checkout@v4
# Set up any tools and build steps here # Set up any tools and build steps here
# This example uses a Node.js toolchain to build a site # This example uses a Node.js toolchain to build a site
# If you don't need Node.js to build your site, you can omit this.
- name: Use Node.js - name: Use Node.js
uses: actions/setup-node@v4 uses: actions/setup-node@v1
with: with:
node-version: lts/* node-version: 12
# If you have a different build process, replace this with your own build steps
- name: Install deps and build - name: Install deps and build
run: | run: |
npm i npm i
npm run build npm run build
# When the dist_dir is ready, deploy it to neocities # When the dist_dir is ready, deploy it to neocities
# Here we deploy the folder named `public`
- name: Deploy to neocities - name: Deploy to neocities
uses: bcomnes/deploy-to-neocities@v3 uses: bcomnes/deploy-to-neocities@v1
with: with:
api_key: ${{ secrets.NEOCITIES_API_TOKEN }} api_token: ${{ secrets.NEOCITIES_API_TOKEN }}
cleanup: false cleanup: false
neocities_supporter: false # set this to true if you have a supporter account and want to bypass unsuported files filter.
preview_before_deploy: true # print a deployment plan prior to waiting for files to upload.
dist_dir: public dist_dir: public
``` ```
@ -69,7 +60,7 @@ You'll need the API token for your site. Go to:
https://neocities.org/settings/{{your-sitename}}#api_key https://neocities.org/settings/{{your-sitename}}#api_key
``` ```
Retreive your site's API token from Neocities. In your GitHub repository, set a [secret][sec] called `NEOCITIES_API_TOKEN`. Set the `api_token` input on your `deploy-to-neocities` action to `${{ secrets.NEOCITIES_API_TOKEN }}` as in the example above. The setting (as of writing) lives in Repository > Settings > Security > Secrets and Variables > Actions > Repository secrets. Get your site's API token. In your GitHub repository, set a [secret][sec] called `NEOCITIES_API_TOKEN`. Set the `api_token` input on your `deploy-to-neocities` action to `${{ secrets.NEOCITIES_API_TOKEN }}` as in the example above.
During your workflow, generate the files you want to deploy to [Neocities][nc] into a directory. Set this as the `dist_dir` directory in your workflow (the default is `public`). You can use any tools to generate your site that can be installed or brought into the Github actions environment. During your workflow, generate the files you want to deploy to [Neocities][nc] into a directory. Set this as the `dist_dir` directory in your workflow (the default is `public`). You can use any tools to generate your site that can be installed or brought into the Github actions environment.
@ -79,11 +70,9 @@ You most likely only want to run this on the `master` branch so that only change
### Inputs ### Inputs
- `api_key` (**REQUIRED**): The API token for your [Neocities][nc] website to deploy to. - `api_token` (**REQUIRED**): The API token for your [Neocities][nc] website to deploy to.
- `dist_dir`: The directory to deploy to [Neocities][nc]. Default: `public`. Don't deploy your root repo directory (e.g. `./`). It contains `.git`, `.github` and other files that won't deploy properly to neocities. Keep it clean by keeping or building your site into a subdir and deploy that. - `dist_dir`: The directory to deploy to [Neocities][nc]. Default: `public`.
- `neocities_supporter`: Set this to `true` if you have a paid neocities account and want to bypass the [unsupported files filter](https://neocities.org/site_files/allowed_types).
- `cleanup`: Boolean string (`true` or `false`). If `true`, `deploy-to-neocities` will destructively delete files found on [Neocities][nc] not found in your `dist_dir`. Default: `false`. - `cleanup`: Boolean string (`true` or `false`). If `true`, `deploy-to-neocities` will destructively delete files found on [Neocities][nc] not found in your `dist_dir`. Default: `false`.
- `preview_before_deploy`: Boolean string (`true` or `false`). If `true`, `deploy-to-neocities` will print a preview of the files that will be uploaded and deleted. Default: `true`.
- `protected_files`: An optional glob string used to mark files as protected. Protected files are never cleaned up. Test this option out with `cleanup` set to false before relying on it. Protected files are printed when `cleanup` is set to true or false. Glob strings are processed by [minimatch](https://github.com/isaacs/minimatch) against remote neocities file paths. Protected files can still be updated. - `protected_files`: An optional glob string used to mark files as protected. Protected files are never cleaned up. Test this option out with `cleanup` set to false before relying on it. Protected files are printed when `cleanup` is set to true or false. Glob strings are processed by [minimatch](https://github.com/isaacs/minimatch) against remote neocities file paths. Protected files can still be updated.
### Outputs ### Outputs
@ -113,7 +102,7 @@ None.
- [Support the distributed web](https://neocities.org/distributed-web). Built in IPFS support. - [Support the distributed web](https://neocities.org/distributed-web). Built in IPFS support.
- [Beginner friendly docs](https://neocities.org/tutorials) for learning how to make your own websites. - [Beginner friendly docs](https://neocities.org/tutorials) for learning how to make your own websites.
### What are some of the drawbacks compared to Netlify/Vercel? ### What are some of the drawbacks compared to Netlify/Zeit?
- Not appropriate for hyper traffic commercial sites most likely. - Not appropriate for hyper traffic commercial sites most likely.
- No concept of a Deploy or atomicity when changing files. - No concept of a Deploy or atomicity when changing files.
@ -124,12 +113,15 @@ None.
## Sites using deploy-to-neocities ## Sites using deploy-to-neocities
(Some may be NSFW)
- https://github.com/bcomnes/bret.io ([bret.io](https://bret.io)) - https://github.com/bcomnes/bret.io ([bret.io](https://bret.io))
- https://github.com/ecomnes/elenacomnes.com ([elenacomnes.comnes](https://elenacomnes.com)) - https://github.com/ecomnes/elenacomnes.com ([elenacomnes.comnes](https://elenacomnes.com))
- https://github.com/gumcast/gumcast-client ([gumcast.com](https://gumcast.com)) - https://github.com/gumcast/gumcast-client ([gumcast.com](https://gumcast.com))
- https://github.com/bcomnes/deploy-to-neocities/blob/master/.github/workflows/neocities.yml ([deploy-to-neocities.neocities.org](https://deploy-to-neocities.neocities.org)) - https://github.com/bcomnes/deploy-to-neocities/blob/master/.github/workflows/neocities.yml ([deploy-to-neocities.neocities.org](https://deploy-to-neocities.neocities.org))
- [Zambonifofex/stories](https://github.com/Zambonifofex/stories) ([zamstories.neocities.org](https://zamstories.neocities.org)) - [Zambonifofex/stories](https://github.com/Zambonifofex/stories) ([zamstories.neocities.org](https://zamstories.neocities.org))
- [Your Neofeed](https://github.com/victoriadrake/neocities-neofeed), (っ◔◡◔)っ a personal timeline for Neocities and GitHub Pages. - [Your Neofeed](https://github.com/victoriadrake/neocities-neofeed), (っ◔◡◔)っ a personal timeline for Neocities and GitHub Pages.
- https://punkedwerewolf.net
- https://speakscribe.com - https://speakscribe.com
- https://geno7.neocities.org - https://geno7.neocities.org
- https://github.com/M1ssM0ss/deploy-to-neocities-template - https://github.com/M1ssM0ss/deploy-to-neocities-template
@ -137,27 +129,13 @@ None.
- https://flamedfury.com - https://flamedfury.com
- https://keb.neocities.org - https://keb.neocities.org
- https://missmoss.neocities.org - https://missmoss.neocities.org
- https://fuckingwebmaster.net
- https://rarebit.neocities.org - https://rarebit.neocities.org
- https://cavacado.neocities.org - https://cavacado.neocities.org
- https://wanderinginn.neocities.org - https://wanderinginn.neocities.org
- https://andri.dk/blog/2019/2021/deploy-static-websites-anywhere/ - https://andri.dk/blog/2021/deploy-static-websites-anywhere
- https://github.com/PersonMeetup/frontiercorps ([frontiercorps.neocities.org](https://frontiercorps.neocities.org/)) - https://github.com/PersonMeetup/frontiercorps ([frontiercorps.neocities.org](https://frontiercorps.neocities.org/))
- https://github.com/riastrad/cyberbspace ([cyberb.space](https://cyberb.space)) - https://github.com/riastrad/cyberbspace ([cyberb.space](https://cyberb.space))
- https://github.com/rogerahuntley/neocities-site ([stealdog.neocities.org](https://stealdog.neocities.org))
- https://github.com/ConorSheehan1/conorsheehan1.neocities.org ([conorsheehan1.neocities.org](https://conorsheehan1.neocities.org))
- https://github.com/bechnokid/neocities ([bechnokid.neocities.org](https://bechnokid.neocities.org))
- https://github.com/lime360/website ([lime360.neocities.org](https://lime360.neocities.org))
- https://obspogon.neocities.org/
- https://profsugoi.neocities.org/
- https://github.com/tencurse/neocities ([10kph.neocities.org](https://10kph.neocities.org/))
- https://github.com/alephdfilms/neocities/ ([alephd.neocities.org](https://alephd.neocities.org/)]
- https://sacred.neocities.org/ (https://github.com/M-Valentino/sacredOS)
- https://lenp.net/ (https://github.com/Len42/web-site)
- <https://punkfairie.net> (<https://github.com/punkfairie/punkfairie-site>)
- https://github.com/jefbecker/jefbecker.com ([jefbecker.com](https://jefbecker.com))
- https://github.com/MymeType/personal-website ([mymetype.neocities.org](https://mymetype.neocities.org/))
- https://github.com/oceanthunder/oceanthunder.github.io ([oceanthunder.dev](https://www.oceanthunder.dev))
- [See more!](https://github.com/bcomnes/deploy-to-neocities/network/dependents)
- ...PR your site when you set it up! - ...PR your site when you set it up!
## See also ## See also
@ -166,8 +144,6 @@ None.
- [Neocities API Docs](https://neocities.org/api) - [Neocities API Docs](https://neocities.org/api)
- [neocities/neocities-node](https://github.com/neocities/neocities-node): Official Node API - [neocities/neocities-node](https://github.com/neocities/neocities-node): Official Node API
- [jonchang/deploy-neocities](https://github.com/jonchang/deploy-neocities): An alternative docker + official ruby client based action similar to this one. - [jonchang/deploy-neocities](https://github.com/jonchang/deploy-neocities): An alternative docker + official ruby client based action similar to this one.
- [M1ssM0ss/deploy-to-neocities-template](https://github.com/M1ssM0ss/deploy-to-neocities-template): a template repo ready for cloning using deploy-to-neocities.
- [professorsugoi/Deploy-Astro-Neocities](https://github.com/professorsugoi/Deploy-Astro-Neocities): a template repo for projets built with Astro. uses deploy-to-neocities.
## CHANGELOG ## CHANGELOG
@ -178,4 +154,3 @@ See [changelog.md](CHANGELOG.md)
[fd]: https://ghub.io/form-data [fd]: https://ghub.io/form-data
[nc]: https://neocities.org [nc]: https://neocities.org
[sec]: https://help.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets [sec]: https://help.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets
[neocities-img]: https://img.shields.io/website/https/siteup.neocities.org?label=neocities&logo=data:image/png;base64,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

View File

@ -4,32 +4,20 @@ branding:
icon: aperture icon: aperture
color: orange color: orange
inputs: inputs:
api_key: # api token for site to deploy to api_token: # api token for site to deploy to
description: 'Neocities API key for site to deploy to' description: 'Neocities API token for site to deploy to'
required: true required: true
dist_dir: dist_dir:
description: 'Local folder to deploy to neocities' description: 'Local folder to deploy to neocities'
default: 'public' default: 'public'
required: true required: true
neocities_supporter:
description: 'Set to true if you are a Neocities supporter to bypass file type upload restrictions'
default: 'false'
required: true
cleanup: cleanup:
description: Delete orphaned files on neocities that don't exist in distDir description: Delete orphaned files on neocities that don't exist in distDir
default: 'false' default: false
required: true required: true
preview_before_deploy:
description: 'Set to true if you want to print deploy preview stats prior to deploying.'
default: 'true'
required: false
protected_files: protected_files:
description: A glob string that prevents matched files from ever being deleted. description: A glob string that prevents matched files from ever being deleted.
required: false required: false
api_token: # api token for site to deploy to
description: 'Neocities API key for site to deploy to'
required: false
deprecationMessage: 'api_token is deprecated, use api_key instead'
runs: runs:
using: 'node20' using: 'node12'
main: 'dist/index.cjs' main: 'dist/index.js'

53632
dist/index.cjs vendored

File diff suppressed because one or more lines are too long

7
dist/index.cjs.map vendored

File diff suppressed because one or more lines are too long

16324
dist/index.js vendored Normal file

File diff suppressed because one or more lines are too long

1
dist/index.js.map vendored Normal file

File diff suppressed because one or more lines are too long

9039
dist/meta.json vendored

File diff suppressed because it is too large Load Diff

1
dist/sourcemap-register.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -1,8 +0,0 @@
import neostandard, { resolveIgnoresFromGitignore } from 'neostandard'
export default neostandard({
ignores: [
...resolveIgnoresFromGitignore(),
'dist'
],
})

112
index.js
View File

@ -1,84 +1,56 @@
import core from '@actions/core' const core = require('@actions/core')
import { // const github = require('@actions/github')
NeocitiesAPIClient, const Neocities = require('async-neocities')
printDeployText, const path = require('path')
printPreviewText, const ms = require('ms')
printResultsErrorDump, const assert = require('webassert').default
SimpleTimer const fsp = require('fs').promises
} from 'async-neocities' const minimatch = require('minimatch')
import path from 'node:path'
import assert from 'node:assert'
import fs from 'node:fs/promises'
import { minimatch } from 'minimatch'
async function run () { let cleanup
const key = core.getInput('api_key') || core.getInput('api_token')
async function doDeploy () {
const token = core.getInput('api_token')
const distDir = path.join(process.cwd(), core.getInput('dist_dir')) const distDir = path.join(process.cwd(), core.getInput('dist_dir'))
const cleanup = JSON.parse(core.getInput('cleanup')) cleanup = JSON.parse(core.getInput('cleanup'))
const neocitiesSupporter = JSON.parse(core.getInput('neocities_supporter'))
const previewDeploy = JSON.parse(core.getInput('preview_before_deploy'))
const protectedFilesGlob = core.getInput('protected_files') const protectedFilesGlob = core.getInput('protected_files')
assert(typeof cleanup === 'boolean', '`cleanup` input must be a boolean "true" or "false"') assert(typeof cleanup === 'boolean', 'Cleanup input must be a boolean "true" or "false"')
assert(typeof neocitiesSupporter === 'boolean', '`neocities_supporter` input must be a boolean "true" or "false"') const stat = await fsp.stat(distDir)
assert(typeof previewDeploy === 'boolean', '`preview_before_deploy` input must be a boolean "true" or "false"') assert(stat.isDirectory(), 'dist_dir must be a directory that exists')
const stat = await fs.stat(distDir) const client = new Neocities(token)
assert(stat.isDirectory(), '`dist_dir` input must be a path to a directory that exists') const deployOpts = {
cleanup,
const client = new NeocitiesAPIClient(key) statsCb: Neocities.statsHandler()
if (previewDeploy) {
const previewTimer = new SimpleTimer()
console.log('Running deploy preview prior to deployment...\n\n')
const diff = await client.previewDeploy({
directory: distDir,
includeUnsupportedFiles: neocitiesSupporter,
protectedFileFilter: protectedFilesGlob ? minimatch.filter(protectedFilesGlob) : undefined
})
previewTimer.stop()
printPreviewText({
diff,
timer: previewTimer,
cleanup,
includeUnsupportedFiles: neocitiesSupporter
})
} }
const deployTimer = new SimpleTimer() if (protectedFilesGlob) deployOpts.protectedFileFilter = minimatch.filter(protectedFilesGlob)
console.log('Deploying to Neocities...')
const results = await client.deploy({ const stats = await client.deploy(distDir, deployOpts)
directory: distDir,
cleanup,
includeUnsupportedFiles: neocitiesSupporter,
protectedFileFilter: protectedFilesGlob ? minimatch.filter(protectedFilesGlob) : undefined
})
deployTimer.stop() console.log(`Deployed to Neocities in ${ms(stats.time)}:`)
console.log(` Uploaded ${stats.filesToUpload.length} files`)
if (results.errors.length > 0) { console.log(` ${cleanup ? 'Deleted' : 'Orphaned'} ${stats.filesToDelete.length} files`)
printResultsErrorDump({ console.log(` Skipped ${stats.filesSkipped.length} files`)
results, console.log(` ${stats.protectedFiles.length} protected files:`)
timer: deployTimer if (stats.protectedFiles.length) {
}) console.log(stats.protectedFiles)
core.setFailed('The deploy completed with errors.')
} else {
printDeployText({
results,
timer: deployTimer,
cleanup,
includeUnsupportedFiles: neocitiesSupporter
})
} }
} }
run().catch(err => { doDeploy().catch(err => {
console.log('Unexpected error/throw during deployment:\n\n') console.error(err)
console.dir(err, { colors: true, depth: 999 }) if (err.stats) {
core.setFailed(err instanceof Error ? err.message : `An unexpected error occurred during deployment: ${err}`) console.log('Files to upload: ')
console.dir(err.stats.filesToUpload, { colors: true, depth: 999 })
if (cleanup) {
console.log('Files to delete: ')
console.dir(err.stats.filesToDelete, { colors: true, depth: 999 })
}
}
core.setFailed(err.message)
}) })

View File

@ -1,32 +1,33 @@
{ {
"name": "deploy-to-neocities", "name": "deploy-to-neocities",
"description": "Github Action to deplpoy a folder to Neocities.org", "description": "Github Action to deplpoy a folder to Neocities.org",
"version": "3.0.4", "version": "1.1.3",
"author": "Bret Comnes <bcomnes@gmail.com> (https://bret.io/)", "author": "Bret Comnes <bcomnes@gmail.com> (https://bret.io/)",
"bugs": { "bugs": {
"url": "https://github.com/bcomnes/deploy-to-neocities/issues" "url": "https://github.com/bcomnes/deploy-to-neocities/issues"
}, },
"dependencies": { "dependencies": {
"@actions/core": "2.0.2", "@actions/core": "1.6.0",
"async-neocities": "4.1.2", "async-neocities": "2.1.1",
"minimatch": "10.1.1" "minimatch": "^3.0.4",
"ms": "2.1.3",
"webassert": "3.0.2"
}, },
"devDependencies": { "devDependencies": {
"@voxpelli/tsconfig": "^16.1.0", "@siteup/cli": "^1.3.3",
"top-bun": "^10.0.0", "@vercel/ncc": "^0.33.1",
"auto-changelog": "^2.0.0", "auto-changelog": "^2.0.0",
"gh-release": "^7.0.0", "browser-sync": "^2.27.7",
"npm-run-all2": "^8.0.1", "dependency-check": "^4.1.0",
"neostandard": "^0.12.0", "gh-release": "^6.0.0",
"c8": "^10.0.0", "mkdirp": "^1.0.4",
"esbuild": "~0.27.1", "npm-run-all2": "^5.0.2",
"typescript": "~5.9.3" "standard": "^16.0.0"
}, },
"homepage": "https://github.com/bcomnes/deploy-to-neocities#readme", "homepage": "https://github.com/bcomnes/deploy-to-neocities#readme",
"keywords": [], "keywords": [],
"license": "MIT", "license": "MIT",
"main": "index.js", "main": "index.js",
"type": "module",
"private": true, "private": true,
"repository": { "repository": {
"type": "git", "type": "git",
@ -34,20 +35,24 @@
}, },
"scripts": { "scripts": {
"build": "npm run clean && run-p build:*", "build": "npm run clean && run-p build:*",
"build:action": "rm -rf dist && esbuild index.js --bundle --platform=node --sourcemap=external --outdir=dist --metafile=dist/meta.json --out-extension:.js=.cjs", "build:action": "rm -rf dist && ncc build index.js -o dist -s",
"build:site": "tb --src . --dest public --ignore dist,coverage", "build:site": "siteup --src . --dest public",
"dist-pkg": "echo \"{ \\\"type\\\": \\\"commonjs\\\" }\" > dist/package.json", "clean": "rimraf public && mkdirp public",
"clean": "rm -rf public && mkdir -p public",
"release": "git push --follow-tags && gh-release -y", "release": "git push --follow-tags && gh-release -y",
"start": "npm run watch", "start": "npm run watch",
"test": "run-s test:*", "test": "run-s test:*",
"test:lint": "eslint", "test:deps": "dependency-check . --no-dev --no-peer",
"test:tsc": "tsc", "test:standard": "standard",
"test:node": "c8 node --test",
"version": "run-s version:*", "version": "run-s version:*",
"version:build": "npm run build:action && git add dist", "version:build": "npm run build:action && git add dist",
"version:changelog": "auto-changelog -p --template keepachangelog auto-changelog --breaking-pattern 'BREAKING CHANGE:' && git add CHANGELOG.md", "version:changelog": "auto-changelog -p --template keepachangelog auto-changelog --breaking-pattern 'BREAKING CHANGE:' && git add CHANGELOG.md",
"watch": "npm run clean && run-p watch:*", "watch": "npm run clean && run-p watch:*",
"watch:serve": "browser-sync start --server 'public' --files 'public'",
"watch:site": "npm run build:site -- -w" "watch:site": "npm run build:site -- -w"
},
"standard": {
"ignore": [
"dist"
]
} }
} }

View File

@ -1,6 +1,5 @@
import assert from 'node:assert' const tap = require('tap')
import test from 'node:test'
test('test', async _t => { tap.test('test', async t => {
assert.ok(true) t.ok(true)
}) })

View File

@ -1,14 +0,0 @@
{
"extends": "@voxpelli/tsconfig/node20.json",
"compilerOptions": {
"skipLibCheck": true
},
"include": [
"**/*"
],
"exclude": [
"node_modules",
"public",
"dist"
]
}