Skip to content

Commit 7d03940

Browse files
committed
Publish manual and statistics using webdav
Re magit/magit#5472.
1 parent 27c4fa0 commit 7d03940

4 files changed

Lines changed: 19 additions & 36 deletions

File tree

.github/workflows/manual.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,4 @@ jobs:
88
name: Manual
99
uses: emacscollective/workflows/.github/workflows/manual.yml@main
1010
secrets:
11-
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
12-
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
11+
rclone_config: ${{ secrets.RCLONE_CONFIG }}

.github/workflows/stats.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,4 @@ jobs:
99
name: Statistics
1010
uses: emacscollective/workflows/.github/workflows/stats.yml@main
1111
secrets:
12-
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
13-
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
12+
rclone_config: ${{ secrets.RCLONE_CONFIG }}

default.mk

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
TOP := $(dir $(lastword $(MAKEFILE_LIST)))
22

3+
DOMAIN ?= magit.vc
4+
35
PKG = transient
46

57
ELS = $(PKG).el
@@ -9,9 +11,6 @@ DEPS = compat
911
DEPS += cond-let
1012
DEPS += seq
1113

12-
DOMAIN ?= magit.vc
13-
CFRONT_DIST ?= E2LUHBKU1FBV02
14-
1514
VERSION ?= $(shell test -e $(TOP).git && git describe --tags --abbrev=0 | cut -c2-)
1615
REVDESC := $(shell test -e $(TOP).git && git describe --tags)
1716

@@ -38,3 +37,6 @@ GITSTATS_ARGS ?= -c style=https://magit.vc/assets/stats.css -c max_authors=999
3837
%.elc: %.el
3938
@printf "Compiling $<\n"
4039
@$(EMACS) -Q --batch $(EMACS_ARGS) $(LOAD_PATH) -f batch-byte-compile $<
40+
41+
RCLONE ?= rclone
42+
RCLONE_ARGS ?= -v

docs/Makefile

Lines changed: 12 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -67,46 +67,29 @@ HTML_FIXUP_MENU = '/<\/body>/i<div id="s-css-s--menu"><\/div>'
6767
@printf "Generating $@\n"
6868
@texi2pdf --clean $< > /dev/null
6969

70-
PUBLISH_PATH ?= /manual/
71-
RELEASE_PATH ?= /manual/$(VERSION)/
72-
S3_BUCKET ?= s3://$(DOMAIN)
73-
PUBLISH_TARGET = $(S3_BUCKET)$(PUBLISH_PATH)
74-
RELEASE_TARGET = $(S3_BUCKET)$(RELEASE_PATH)
75-
CFRONT_PATHS = $(PKG).html $(PKG).pdf $(PKG)/*
76-
77-
comma := ,
78-
empty :=
79-
space := $(empty) $(empty)
70+
DOCS_DOMAIN = docs.$(DOMAIN)
71+
STAT_DOMAIN = stats.$(DOMAIN)
72+
SNAP_TARGET = $(subst .,_,$(DOCS_DOMAIN)):devel/$(PKG)/
73+
DOCS_TARGET = $(subst .,_,$(DOCS_DOMAIN)):$(PKG)/
74+
STAT_TARGET = $(subst .,_,$(STAT_DOMAIN)):$(PKG)/
8075

8176
publish: redo-docs
82-
@aws s3 cp $(PKG).html $(PUBLISH_TARGET)
83-
@aws s3 cp $(PKG).pdf $(PUBLISH_TARGET)
84-
@aws s3 sync $(PKG) $(PUBLISH_TARGET)$(PKG)/
85-
@printf "Generating CDN invalidation\n"
86-
@aws cloudfront create-invalidation --distribution-id $(CFRONT_DIST) --paths \
87-
"$(subst $(space),$(comma),$(addprefix $(PUBLISH_PATH),$(CFRONT_PATHS)))" > /dev/null
77+
@printf "Publishing snapshot manual...\n"
78+
@cp $(PKG).pdf $(PKG)/$(PKG).pdf
79+
@$(RCLONE) sync $(RCLONE_ARGS) $(PKG) $(SNAP_TARGET)
8880

8981
release: redo-docs
90-
@aws s3 cp $(PKG).html $(RELEASE_TARGET)
91-
@aws s3 cp $(PKG).pdf $(RELEASE_TARGET)
92-
@aws s3 sync $(PKG) $(RELEASE_TARGET)$(PKG)/
93-
@aws s3 cp $(PUBLISH_TARGET)dir.html $(RELEASE_TARGET)dir.html
94-
@aws s3 cp $(PUBLISH_TARGET)dir/index.html $(RELEASE_TARGET)dir/index.html
95-
@printf "Generating CDN invalidation\n"
96-
@aws cloudfront create-invalidation --distribution-id $(CFRONT_DIST) --paths \
97-
"$(subst $(space),$(comma),$(addprefix $(RELEASE_PATH),$(CFRONT_PATHS)))" > /dev/null
82+
@printf "Publishing release manual...\n"
83+
@cp $(PKG).pdf $(PKG)/$(PKG).pdf
84+
@$(RCLONE) sync $(RCLONE_ARGS) $(PKG) $(DOCS_TARGET)
9885

9986
stats:
10087
@printf "Generating statistics...\n"
10188
@$(GITSTATS) $(GITSTATS_ARGS) $(TOP) $(GITSTATS_DIR)
10289

10390
stats-upload:
10491
@printf "Uploading statistics...\n"
105-
@aws s3 sync $(GITSTATS_DIR) $(S3_BUCKET)/stats/$(PKG)
106-
@printf "Uploaded to $(S3_BUCKET)/stats/$(PKG)\n"
107-
@printf "Generating CDN invalidation\n"
108-
@aws cloudfront create-invalidation \
109-
--distribution-id $(CFRONT_DIST) --paths "/stats/*" > /dev/null
92+
@$(RCLONE) sync $(RCLONE_ARGS) stats $(STAT_TARGET)
11093

11194
CLEAN = $(PKG).info dir $(PKG) $(PKG).html $(PKG).pdf
11295

0 commit comments

Comments
 (0)