No description
Find a file
2022-12-19 06:37:11 +05:30
.github feat: CI: configure and run conductor instance while testing 2022-12-15 01:01:59 +05:30
config chore: rename pages -> librepages 2022-12-19 06:32:51 +05:30
contrib feat: link to enough community ansible playbook 2022-04-19 02:33:21 +05:30
docs chore: rename pages -> librepages 2022-12-19 06:32:51 +05:30
migrations feat: tombstone deployments instead of deleting them. 2022-12-06 06:29:56 +05:30
scripts chore: rename pages -> librepages 2022-12-19 06:32:51 +05:30
src fix: CI: use github.com/mcaptcha/website for testing 2022-12-15 01:13:24 +05:30
static/cache/img/svg feat: add show and hide icons 2022-12-05 15:45:04 +05:30
templates feat: delete deployment from web UI 2022-12-05 17:40:38 +05:30
tests/cases/contains-everything/toml feat: read configuration from repositories 2022-11-12 15:51:34 +05:30
utils/cache-bust fix: cache-buster link 2022-12-19 06:37:11 +05:30
.dockerignore package docker container 2021-10-29 20:38:56 +05:30
.gitignore feat: setup sass compilation 2022-09-16 17:41:11 +05:30
.woodpecker.yml fix: cache-buster link 2022-12-19 06:37:11 +05:30
build.rs chore: apply clippy lints 2022-11-15 18:09:34 +05:30
Cargo.lock chore: rename pages -> librepages 2022-12-19 06:32:51 +05:30
Cargo.toml chore: rename pages -> librepages 2022-12-19 06:32:51 +05:30
Dockerfile chore: rename pages -> librepages 2022-12-19 06:32:51 +05:30
LICENSE.md init 2021-10-29 20:21:46 +05:30
Makefile chore: rename pages -> librepages 2022-12-19 06:32:51 +05:30
package-lock.json feat: setup sass compilation 2022-09-16 17:41:11 +05:30
package.json feat: setup sass compilation 2022-09-16 17:41:11 +05:30
README.md chore: rename pages -> librepages 2022-12-19 06:32:51 +05:30
sqlx-data.json feat: tombstone deployments instead of deleting them. 2022-12-06 06:29:56 +05:30

Pages

Auto-deploy static websites from git repositories

Why?

SSHing into a server and performing a git pull is boring. I couldn't find any free(as in freedom) software for automating static website deploys like GitHub Pages or Netlify.

This is very minimal, all it does is a git fetch $branch but it works for me :)

Usage

  1. All configuration is done through ./config/default.toml(can be moved to /etc/static-pages/config.toml). Too add a website, make a similar entry:

    pages = [
    	{ branch = "gh-pages", repo = "https://github.com/realaravinth/realaravinth/", path ="/var/www/pages/realaravinth", secret = "mytopsecretsuperlongpassword123" },
    ]
    
  2. If pages is deployed at pages.example.com and you wish to deploy changes from gh-pages branch, you can do so with the following command:

     curl -v --location --request POST 'https://pages.example.com/api/v1/update' \
    --header 'Content-Type: application/json' \
    --data-raw "{
    	\"secret\": \"$token\",
    	\"branch\": \"gh-pages\"
    }"