Implante com eficiência um site para neocidades usando ações do GitHub. Usa o Content CNECT Diffing para atualizar apenas os arquivos que foram alterados.
Como alternativa, você pode usar o ajudante de bin em neocidades de assíncronas para implantar neocidades localmente em sua própria máquina e também em IC.
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
Crie um arquivo .yml
de fluxo de trabalho no diretório .github/workflows
do seu repositório. Um exemplo de fluxo de trabalho está disponível acima. Para obter mais informações, faça referência à documentação do GitHub para criar um arquivo de fluxo de trabalho.
Você precisará do token da API para o seu site. Vá para:
https://neocities.org/settings/{{your-sitename}}#api_key
Obtenha o token da API do seu site. No seu repositório GitHub, defina um segredo chamado NEOCITIES_API_TOKEN
. Defina a entrada api_token
em sua ação deploy-to-neocities
como ${{ secrets.NEOCITIES_API_TOKEN }}
como no exemplo acima.
Durante o seu fluxo de trabalho, gerar os arquivos que você deseja implantar para neocidades em um diretório. Defina isso como o diretório dist_dir
no seu fluxo de trabalho (o padrão é public
). Você pode usar qualquer ferramenta para gerar seu site que possa ser instalado ou trazido para o ambiente de ações do GitHub.
Depois que a compilação estiver concluída, deploy-to-neocities
fará o upload com eficiência de todos os arquivos novos e todos alterados para neocidades. Quaisquer arquivos em neocidades que não existem no dist_dir
são considerados arquivos 'órfãos'. Para remover destrutivamente esses arquivos 'órfãos', defina a entrada cleanup
como true
.
Você provavelmente só deseja executar isso na filial master
, para que apenas as mudanças comprometidas com master
resultem em atualizações do site. A execução de uma construção de teste que não implanta em todas as agências e PRs pode ajudar a capturar alterações que quebram a construção.
api_key
( exigido ): O Token da API para o seu site de neocidades para implantar.dist_dir
: o diretório a implantar para neocidades. Padrão: public
. Não implante seu diretório de repositório de root (por exemplo ./
). Ele contém .git
, .github
e outros arquivos que não serão implantados corretamente nas neocidades. Mantenha -o limpo, mantendo ou construindo seu site em um subdir e implante isso.neocoties_supporter
: defina isso como true
se você tiver uma conta de neocidades pagas e desejar ignorar o filtro de arquivos não suportados.cleanup
: string booleana ( true
ou false
). Se true
, deploy-to-neocities
excluirá destrutivamente os arquivos encontrados nas neocidades não encontradas em seu dist_dir
. Padrão: false
.preview_before_deploy
: string boolean ( true
ou false
). Se true
, deploy-to-neocities
imprimirá uma visualização dos arquivos que serão enviados e excluídos. Padrão: true
.protected_files
: uma string glob opcional usada para marcar arquivos conforme protegido. Os arquivos protegidos nunca são limpos. Teste esta opção com cleanup
definida como falsa antes de confiar nela. Os arquivos protegidos são impressos quando cleanup
é definida como true ou falsa. As cadeias de globes são processadas pelo Minimatch contra os caminhos de arquivos de neocidades remotas. Os arquivos protegidos ainda podem ser atualizados.Nenhum.
As neocidades oferecem várias propriedades agradáveis:
A
e AAAA
são tudo o que você precisa. Nomes nus e tudo!Veja Changelog.md