Menyebarkan situs web ke Neocities secara efisien menggunakan tindakan GitHub. Menggunakan konten yang sadar hanya memperbarui file yang berubah.
Atau, Anda dapat menggunakan Helper Bin di Neocities async untuk digunakan ke neokitas secara lokal dari mesin Anda sendiri dan juga di 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
Buat file workflow .yml
di direktori .github/workflows
repositori Anda. Contoh alur kerja tersedia di atas. Untuk informasi lebih lanjut, referensi dokumentasi Bantuan GitHub untuk membuat file alur kerja.
Anda akan membutuhkan token API untuk situs Anda. Pergi ke:
https://neocities.org/settings/{{your-sitename}}#api_key
Dapatkan token API situs Anda. Di repositori GitHub Anda, tetapkan rahasia yang disebut NEOCITIES_API_TOKEN
. Atur input api_token
pada tindakan deploy-to-neocities
Anda menjadi ${{ secrets.NEOCITIES_API_TOKEN }}
seperti pada contoh di atas.
Selama alur kerja Anda, hasilkan file yang ingin Anda berikan ke neokitas ke dalam direktori. Atur ini sebagai direktori dist_dir
dalam alur kerja Anda (standarnya public
). Anda dapat menggunakan alat apa pun untuk menghasilkan situs Anda yang dapat diinstal atau dibawa ke lingkungan Tindakan GitHub.
Setelah build selesai, deploy-to-neocities
akan secara efisien mengunggah semua file baru dan semua yang diubah menjadi neokitas. File apa pun tentang neokitas yang tidak ada di dist_dir
dianggap file 'yatim piatu'. Untuk menghapus file 'yatim' yang merusak ini, atur input cleanup
ke true
.
Anda kemungkinan besar hanya ingin menjalankan ini di cabang master
sehingga hanya perubahan yang berkomitmen untuk master
hasil dalam pembaruan situs web. Menjalankan tes build yang tidak menggunakan semua cabang dan PR dapat membantu menangkap perubahan yang akan merusak build.
api_key
( wajib ): Token API untuk digunakan situs web Neocities Anda.dist_dir
: Direktori untuk digunakan ke Neocities. Default: public
. Jangan menggunakan direktori repo root Anda ( ./
). Ini berisi .git
, .github
dan file lain yang tidak akan digunakan dengan benar untuk kebiasaan. Jaga agar tetap bersih dengan menyimpan atau membangun situs Anda menjadi subdir dan menggunakannya.neocoties_supporter
: Setel ini ke true
jika Anda memiliki akun neokitas berbayar dan ingin memotong filter file yang tidak didukung.cleanup
: String Boolean ( true
atau false
). Jika true
, deploy-to-neocities
akan secara destruktif menghapus file yang ditemukan pada neokitas yang tidak ditemukan di dist_dir
Anda. Default: false
.preview_before_deploy
: string boolean ( true
atau false
). Jika true
, deploy-to-neocities
akan mencetak pratinjau file yang akan diunggah dan dihapus. Default: true
.protected_files
: String glob opsional yang digunakan untuk menandai file sebagai dilindungi. File yang dilindungi tidak pernah dibersihkan. Uji opsi ini dengan cleanup
diatur ke false sebelum mengandalkannya. File yang dilindungi dicetak saat cleanup
diatur ke benar atau salah. String Glob diproses dengan minimatch terhadap jalur file neokitas jarak jauh. File yang dilindungi masih dapat diperbarui.Tidak ada.
Neocities menawarkan banyak properti yang bagus:
A
dan AAAA
sederhana adalah semua yang Anda butuhkan. Nama telanjang dan semuanya!Lihat Changelog.MD