Implemente eficientemente un sitio web en neocidades utilizando acciones de GitHub. Utiliza el contenido consciente de difusión para actualizar solo archivos que cambiaron.
Alternativamente, puede usar el bin ayudante en las neocidades asíncronas para desplegar en neocidades localmente desde su propia máquina y en CI.
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
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@v4
with :
node-version : lts/*
# If you have a different build process, replace this with your own build steps
- name : Install deps and build
run : |
npm i
npm run build
# When the dist_dir is ready, deploy it to neocities
- name : Deploy to neocities
uses : bcomnes/deploy-to-neocities@v3
with :
api_key : ${{ secrets.NEOCITIES_API_TOKEN }}
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
Cree un archivo .yml
de flujo de trabajo en el directorio .github/workflows
de su repositorio. Un ejemplo de flujo de trabajo está disponible arriba. Para obtener más información, haga referencia a la documentación de ayuda de GitHub para crear un archivo de flujo de trabajo.
Necesitará el token API para su sitio. Ir a:
https://neocities.org/settings/{{your-sitename}}#api_key
Obtenga el token API de su sitio. En su repositorio de GitHub, establezca un secreto llamado NEOCITIES_API_TOKEN
. Establezca la entrada api_token
en su acción deploy-to-neocities
en ${{ secrets.NEOCITIES_API_TOKEN }}
como en el ejemplo anterior.
Durante su flujo de trabajo, genere los archivos que desea implementar en las neocidades en un directorio. Establezca esto como el directorio dist_dir
en su flujo de trabajo (el valor predeterminado es public
). Puede usar cualquier herramienta para generar su sitio que se pueda instalar o llevar al entorno de acciones GitHub.
Una vez que se completa la compilación, deploy-to-neocities
cargará eficientemente todos los archivos nuevos y cambiados a las neocidades. Cualquier archivo sobre neocidades que no existan en dist_dir
se consideran archivos 'huérfanos'. Para eliminar destructivamente estos archivos 'huérfanos', establezca la entrada cleanup
en true
.
Lo más probable es que solo desee ejecutar esto en la rama master
para que solo los cambios comprometidos con los resultados master
en las actualizaciones del sitio web. Ejecutar una compilación de prueba que no se despliega en todas las ramas y PRS puede ayudar a atrapar cambios que romperán la compilación.
api_key
( requerido ): el token API para su sitio web de neocidades para implementar.dist_dir
: El directorio para desplegar en neocidades. Valor predeterminado: public
. No implementa su directorio de repositorio raíz (por ejemplo ./
). Contiene .git
, .github
y otros archivos que no se implementarán correctamente en las neocidades. Manténgalo limpio manteniendo o construyendo su sitio en un subdir e implementa eso.neocoties_supporter
: Establezca esto en true
si tiene una cuenta de neocidades pagas y desea pasar por alto el filtro de archivos no respaldado.cleanup
: cadena booleana ( true
o false
). Si es true
, deploy-to-neocities
eliminará destructivamente los archivos que se encuentran en las neocidades que no se encuentran en su dist_dir
. Predeterminado: false
.preview_before_deploy
: boolean string ( true
o false
). Si es true
, deploy-to-neocities
imprimirá una vista previa de los archivos que se cargarán y eliminarán. Valor predeterminado: true
.protected_files
: una cadena de globo opcional utilizada para marcar archivos como protegidos. Los archivos protegidos nunca se limpian. Pruebe esta opción con cleanup
establecida en falso antes de confiar en ella. Los archivos protegidos se imprimen cuando cleanup
se establece en True o False. Las cadenas de globas se procesan mediante minimatch contra rutas de archivos de neocidades remotas. Los archivos protegidos aún se pueden actualizar.Ninguno.
Neocity ofrece un montón de buenas propiedades:
A
y AAAA
son todo lo que necesita. ¡Nombres y todo!Ver ChangeLog.md