No description
Find a file
Aravinth Manivannan dd38dd05d1
feat: add base_path to settings to specify deploy host name.
DESCRIPTION
    Each deployment should have a default hostname before a custom
    domain can be assigned. Therefore, this domain must be in control of
    the Librepages system (Librepages/conductor, namely)

SECURITY
    base_domain must be different from the domains hosting confidential
    information (authentication systems, PII data, etc.) to make use of
    browser domain sandboxing safety. If Librepages deployment is open
    to the public, unaudited, third-party content may be hosted in this
    domain, so it is very important that this domain shouldn't be used
    for critical infrastructure dealing with confidential information.
2022-11-10 17:19:35 +05:30
.github fix: CI: install node and sass in coverage workflow 2022-11-10 16:30:02 +05:30
config feat: add base_path to settings to specify deploy host name. 2022-11-10 17:19: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
migrations fix: rm unique constraint on librepages_sites.repo_url 2022-11-10 16:11:56 +05:30
scripts fix: ibn name 2022-08-16 14:06:56 +05:30
src feat: add base_path to settings to specify deploy host name. 2022-11-10 17:19:35 +05:30
templates feat: link to project homepage in footer 2022-11-09 13:32:21 +05:30
utils/cache-bust feat: setup cache busting of static assets 2022-09-16 17:40:49 +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
build.rs generate build metadata 2021-10-29 20:22:44 +05:30
Cargo.lock feat: setup cache busting of static assets 2022-09-16 17:40:49 +05:30
Cargo.toml feat: process static files when building docker img 2022-09-16 18:28:25 +05:30
Dockerfile feat: process static files when building docker img 2022-09-16 18:28:25 +05:30
LICENSE.md init 2021-10-29 20:21:46 +05:30
Makefile feat: cache bust before applying db migrations 2022-09-16 18:28:01 +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 package docker container 2021-10-29 20:38:56 +05:30
sqlx-data.json feat: add DB method to check if hostname exists 2022-11-10 16:19:28 +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\"
    }"