Replace Make with Just
This commit is contained in:
parent
af4c2d7241
commit
d04d523bdf
3 changed files with 59 additions and 79 deletions
79
Makefile
79
Makefile
|
|
@ -1,79 +0,0 @@
|
||||||
PY?=
|
|
||||||
PELICAN?=pelican
|
|
||||||
PELICANOPTS=
|
|
||||||
|
|
||||||
BASEDIR=$(CURDIR)
|
|
||||||
INPUTDIR=$(BASEDIR)/content
|
|
||||||
OUTPUTDIR=$(BASEDIR)/output
|
|
||||||
CONFFILE=$(BASEDIR)/pelicanconf.py
|
|
||||||
PUBLISHCONF=$(BASEDIR)/publishconf.py
|
|
||||||
|
|
||||||
|
|
||||||
DEBUG ?= 0
|
|
||||||
ifeq ($(DEBUG), 1)
|
|
||||||
PELICANOPTS += -D
|
|
||||||
endif
|
|
||||||
|
|
||||||
RELATIVE ?= 0
|
|
||||||
ifeq ($(RELATIVE), 1)
|
|
||||||
PELICANOPTS += --relative-urls
|
|
||||||
endif
|
|
||||||
|
|
||||||
SERVER ?= "0.0.0.0"
|
|
||||||
|
|
||||||
PORT ?= 0
|
|
||||||
ifneq ($(PORT), 0)
|
|
||||||
PELICANOPTS += -p $(PORT)
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
help:
|
|
||||||
@echo 'Makefile for a pelican Web site '
|
|
||||||
@echo ' '
|
|
||||||
@echo 'Usage: '
|
|
||||||
@echo ' make html (re)generate the web site '
|
|
||||||
@echo ' make clean remove the generated files '
|
|
||||||
@echo ' make regenerate regenerate files upon modification '
|
|
||||||
@echo ' make publish generate using production settings '
|
|
||||||
@echo ' make serve [PORT=8000] serve site at http://localhost:8000'
|
|
||||||
@echo ' make serve-global [SERVER=0.0.0.0] serve (as root) to $(SERVER):80 '
|
|
||||||
@echo ' make devserver [PORT=8000] serve and regenerate together '
|
|
||||||
@echo ' make devserver-global regenerate and serve on 0.0.0.0 '
|
|
||||||
@echo ' make mail file=FILEPATH generate HTML email '
|
|
||||||
@echo ' '
|
|
||||||
@echo 'Set the DEBUG variable to 1 to enable debugging, e.g. make DEBUG=1 html '
|
|
||||||
@echo 'Set the RELATIVE variable to 1 to enable relative urls '
|
|
||||||
@echo ' '
|
|
||||||
|
|
||||||
html:
|
|
||||||
"$(PELICAN)" "$(INPUTDIR)" -o "$(OUTPUTDIR)" -s "$(CONFFILE)" $(PELICANOPTS)
|
|
||||||
|
|
||||||
clean:
|
|
||||||
[ ! -d "$(OUTPUTDIR)" ] || rm -rf "$(OUTPUTDIR)"
|
|
||||||
|
|
||||||
regenerate:
|
|
||||||
"$(PELICAN)" -r "$(INPUTDIR)" -o "$(OUTPUTDIR)" -s "$(CONFFILE)" $(PELICANOPTS)
|
|
||||||
|
|
||||||
serve:
|
|
||||||
"$(PELICAN)" -l "$(INPUTDIR)" -o "$(OUTPUTDIR)" -s "$(CONFFILE)" $(PELICANOPTS)
|
|
||||||
|
|
||||||
serve-global:
|
|
||||||
"$(PELICAN)" -l "$(INPUTDIR)" -o "$(OUTPUTDIR)" -s "$(CONFFILE)" $(PELICANOPTS) -b $(SERVER)
|
|
||||||
|
|
||||||
devserver:
|
|
||||||
"$(PELICAN)" -lr "$(INPUTDIR)" -o "$(OUTPUTDIR)" -s "$(CONFFILE)" $(PELICANOPTS)
|
|
||||||
|
|
||||||
devserver-global:
|
|
||||||
"$(PELICAN)" -lr "$(INPUTDIR)" -o "$(OUTPUTDIR)" -s "$(CONFFILE)" $(PELICANOPTS) -b 0.0.0.0
|
|
||||||
|
|
||||||
publish:
|
|
||||||
"$(PELICAN)" "$(INPUTDIR)" -o "$(OUTPUTDIR)" -s "$(PUBLISHCONF)" $(PELICANOPTS)
|
|
||||||
rsync -e ssh -av --delete-after /Users/pascal/Documents/craft-letter/output/ craftletter@ssh-craftletter.alwaysdata.net:/home/craftletter/www
|
|
||||||
|
|
||||||
ssh:
|
|
||||||
ssh craftletter@ssh-craftletter.alwaysdata.net
|
|
||||||
|
|
||||||
mail:
|
|
||||||
PYTHONPATH=PWD venv/bin/python ./prepare_email.py $(file)
|
|
||||||
|
|
||||||
.PHONY: html help clean regenerate serve serve-global devserver devserver-global publish mail
|
|
||||||
59
justfile
Normal file
59
justfile
Normal file
|
|
@ -0,0 +1,59 @@
|
||||||
|
CONFFILE := "pelicanconf.py"
|
||||||
|
PUBLISHCONF := "publishconf.py"
|
||||||
|
PELICANOPTS := ""
|
||||||
|
SERVER := "localhost"
|
||||||
|
|
||||||
|
default:
|
||||||
|
just --list
|
||||||
|
|
||||||
|
help:
|
||||||
|
@echo 'Set the DEBUG variable to 1 to enable debugging, e.g. make DEBUG=1 html '
|
||||||
|
@echo 'Set the RELATIVE variable to 1 to enable relative urls '
|
||||||
|
|
||||||
|
|
||||||
|
# (re)generate the web site
|
||||||
|
html:
|
||||||
|
pelican content -o output -s "{{CONFFILE}}" {{PELICANOPTS}}
|
||||||
|
|
||||||
|
# remove the generated files
|
||||||
|
clean:
|
||||||
|
[ ! -d "output" ] || rm -rf output
|
||||||
|
|
||||||
|
# regenerate files upon modification
|
||||||
|
regenerate:
|
||||||
|
pelican -r content -o output -s "{{CONFFILE}}" {{PELICANOPTS}}
|
||||||
|
|
||||||
|
# serve site at http://localhost:8000
|
||||||
|
serve:
|
||||||
|
pelican -l content -o output -s "{{CONFFILE}}" {{PELICANOPTS}}
|
||||||
|
|
||||||
|
# serve (as root) to {{SERVER}}:80
|
||||||
|
serve-global:
|
||||||
|
pelican -l content -o output -s "{{CONFFILE}}" {{PELICANOPTS}} -b {{SERVER}}
|
||||||
|
|
||||||
|
# serve and regenerate together
|
||||||
|
devserver:
|
||||||
|
pelican -lr content -o output -s "{{CONFFILE}}" {{PELICANOPTS}}
|
||||||
|
|
||||||
|
# regenerate and serve on 0.0.0.0
|
||||||
|
devserver-global:
|
||||||
|
pelican -lr content -o output -s "{{CONFFILE}}" {{PELICANOPTS}} -b 0.0.0.0
|
||||||
|
|
||||||
|
# generate using production settings
|
||||||
|
publish:
|
||||||
|
pelican content -o output -s "{{PUBLISHCONF}}" {{PELICANOPTS}}
|
||||||
|
rsync -e ssh -av --delete-after /Users/pascal/Documents/craft-letter/output/ craftletter@ssh-craftletter.alwaysdata.net:/home/craftletter/www
|
||||||
|
|
||||||
|
# connect to production server
|
||||||
|
ssh:
|
||||||
|
ssh craftletter@ssh-craftletter.alwaysdata.net
|
||||||
|
|
||||||
|
# Create the skeleton for a new issue of the newsletter, and reference it into the home page
|
||||||
|
new number:
|
||||||
|
PYTHONPATH=PWD venv/bin/python ./scripts/create_newsletter.py {{number}}
|
||||||
|
|
||||||
|
# generate HTML email
|
||||||
|
mail file:
|
||||||
|
echo {{file}}
|
||||||
|
PYTHONPATH=PWD venv/bin/python ./scripts/prepare_email.py {{file}}
|
||||||
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue