branch: externals/transient
commit 7d03940e6cb33cf492879784f8ebd00c9b9290e5
Author: Jonas Bernoulli <[email protected]>
Commit: Jonas Bernoulli <[email protected]>

    Publish manual and statistics using webdav
    
    Re magit/magit#5472.
---
 .github/workflows/manual.yml |  3 +--
 .github/workflows/stats.yml  |  3 +--
 default.mk                   |  8 +++++---
 docs/Makefile                | 41 ++++++++++++-----------------------------
 4 files changed, 19 insertions(+), 36 deletions(-)

diff --git a/.github/workflows/manual.yml b/.github/workflows/manual.yml
index 3b02f40e39..2a655ae46d 100644
--- a/.github/workflows/manual.yml
+++ b/.github/workflows/manual.yml
@@ -8,5 +8,4 @@ jobs:
     name: Manual
     uses: emacscollective/workflows/.github/workflows/manual.yml@main
     secrets:
-      aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
-      aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
+      rclone_config: ${{ secrets.RCLONE_CONFIG }}
diff --git a/.github/workflows/stats.yml b/.github/workflows/stats.yml
index e941fb9588..5597fb9732 100644
--- a/.github/workflows/stats.yml
+++ b/.github/workflows/stats.yml
@@ -9,5 +9,4 @@ jobs:
     name: Statistics
     uses: emacscollective/workflows/.github/workflows/stats.yml@main
     secrets:
-      aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
-      aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
+      rclone_config: ${{ secrets.RCLONE_CONFIG }}
diff --git a/default.mk b/default.mk
index 921908443e..a29003a1cc 100644
--- a/default.mk
+++ b/default.mk
@@ -1,5 +1,7 @@
 TOP := $(dir $(lastword $(MAKEFILE_LIST)))
 
+DOMAIN ?= magit.vc
+
 PKG = transient
 
 ELS   = $(PKG).el
@@ -9,9 +11,6 @@ DEPS  = compat
 DEPS += cond-let
 DEPS += seq
 
-DOMAIN      ?= magit.vc
-CFRONT_DIST ?= E2LUHBKU1FBV02
-
 VERSION ?= $(shell test -e $(TOP).git && git describe --tags --abbrev=0 | cut 
-c2-)
 REVDESC := $(shell test -e $(TOP).git && git describe --tags)
 
@@ -38,3 +37,6 @@ GITSTATS_ARGS ?= -c style=https://magit.vc/assets/stats.css 
-c max_authors=999
 %.elc: %.el
        @printf "Compiling $<\n"
        @$(EMACS) -Q --batch $(EMACS_ARGS) $(LOAD_PATH) -f batch-byte-compile $<
+
+RCLONE      ?= rclone
+RCLONE_ARGS ?= -v
diff --git a/docs/Makefile b/docs/Makefile
index 74085b7ab6..2dd73a8eba 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -67,34 +67,21 @@ HTML_FIXUP_MENU   = '/<\/body>/i<div 
id="s-css-s--menu"><\/div>'
        @printf "Generating $@\n"
        @texi2pdf --clean $< > /dev/null
 
-PUBLISH_PATH   ?= /manual/
-RELEASE_PATH   ?= /manual/$(VERSION)/
-S3_BUCKET      ?= s3://$(DOMAIN)
-PUBLISH_TARGET  = $(S3_BUCKET)$(PUBLISH_PATH)
-RELEASE_TARGET  = $(S3_BUCKET)$(RELEASE_PATH)
-CFRONT_PATHS    = $(PKG).html $(PKG).pdf $(PKG)/*
-
-comma := ,
-empty :=
-space := $(empty) $(empty)
+DOCS_DOMAIN = docs.$(DOMAIN)
+STAT_DOMAIN = stats.$(DOMAIN)
+SNAP_TARGET = $(subst .,_,$(DOCS_DOMAIN)):devel/$(PKG)/
+DOCS_TARGET = $(subst .,_,$(DOCS_DOMAIN)):$(PKG)/
+STAT_TARGET = $(subst .,_,$(STAT_DOMAIN)):$(PKG)/
 
 publish: redo-docs
-       @aws s3 cp $(PKG).html $(PUBLISH_TARGET)
-       @aws s3 cp $(PKG).pdf  $(PUBLISH_TARGET)
-       @aws s3 sync $(PKG)    $(PUBLISH_TARGET)$(PKG)/
-       @printf "Generating CDN invalidation\n"
-       @aws cloudfront create-invalidation --distribution-id $(CFRONT_DIST) 
--paths \
-       "$(subst $(space),$(comma),$(addprefix 
$(PUBLISH_PATH),$(CFRONT_PATHS)))" > /dev/null
+       @printf "Publishing snapshot manual...\n"
+       @cp $(PKG).pdf $(PKG)/$(PKG).pdf
+       @$(RCLONE) sync $(RCLONE_ARGS) $(PKG) $(SNAP_TARGET)
 
 release: redo-docs
-       @aws s3 cp $(PKG).html $(RELEASE_TARGET)
-       @aws s3 cp $(PKG).pdf  $(RELEASE_TARGET)
-       @aws s3 sync $(PKG)    $(RELEASE_TARGET)$(PKG)/
-       @aws s3 cp $(PUBLISH_TARGET)dir.html $(RELEASE_TARGET)dir.html
-       @aws s3 cp $(PUBLISH_TARGET)dir/index.html 
$(RELEASE_TARGET)dir/index.html
-       @printf "Generating CDN invalidation\n"
-       @aws cloudfront create-invalidation --distribution-id $(CFRONT_DIST) 
--paths \
-       "$(subst $(space),$(comma),$(addprefix 
$(RELEASE_PATH),$(CFRONT_PATHS)))" > /dev/null
+       @printf "Publishing release manual...\n"
+       @cp $(PKG).pdf $(PKG)/$(PKG).pdf
+       @$(RCLONE) sync $(RCLONE_ARGS) $(PKG) $(DOCS_TARGET)
 
 stats:
        @printf "Generating statistics...\n"
@@ -102,11 +89,7 @@ stats:
 
 stats-upload:
        @printf "Uploading statistics...\n"
-       @aws s3 sync $(GITSTATS_DIR) $(S3_BUCKET)/stats/$(PKG)
-       @printf "Uploaded to $(S3_BUCKET)/stats/$(PKG)\n"
-       @printf "Generating CDN invalidation\n"
-       @aws cloudfront create-invalidation \
-       --distribution-id $(CFRONT_DIST) --paths "/stats/*" > /dev/null
+       @$(RCLONE) sync $(RCLONE_ARGS) stats $(STAT_TARGET)
 
 CLEAN = $(PKG).info dir $(PKG) $(PKG).html $(PKG).pdf
 

Reply via email to