No description
Find a file
2022-08-16 10:42:35 +05:30
.github feat: fix repository ctrl 2022-08-16 10:42:35 +05:30
config chore: update deps and fix typo 2022-04-19 02:32:35 +05:30
contrib feat: link to enough community ansible playbook 2022-04-19 02:33:21 +05:30
docs feat: add bare metal deployment instructions 2022-03-31 16:40:54 +05:30
scripts feat: fix repository ctrl 2022-08-16 10:42:35 +05:30
src fix: page update with merge analysis 2022-08-15 19:34:26 +05:30
.dockerignore package docker container 2021-10-29 20:38:56 +05:30
.gitignore fix: create user if it doesn't exist 2022-08-15 19:26:28 +05:30
build.rs generate build metadata 2021-10-29 20:22:44 +05:30
Cargo.lock feat: handle errors in deploy endpoint 2022-04-26 19:56:59 +05:30
Cargo.toml chore: load app settings via app ctx and do away with global static loader 2022-04-27 10:52:24 +05:30
Dockerfile chore: update docker rust base img 2022-03-16 00:10:36 +05:30
LICENSE.md init 2021-10-29 20:21:46 +05:30
Makefile feat: tag docker img with version 0.1.0 2022-04-09 11:03:28 +05:30
README.md package docker container 2021-10-29 20:38:56 +05:30

Pages

Auto-deploy static websites from git repositories

Build dependency status codecov

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\"
    }"