diff options
| author | Jonas Bernoulli <jonas@bernoul.li> | 2025-11-13 20:25:55 +0100 |
|---|---|---|
| committer | Jonas Bernoulli <jonas@bernoul.li> | 2025-11-13 20:25:55 +0100 |
| commit | c313064daa0e5a61c4484f7b12fe01427ba7b7e4 (patch) | |
| tree | ec7e056d685280b53e3043b8b1382934392e7d34 | |
| parent | 5cc70b9e5850e61a66f1afbb546f6c1703b39dab (diff) | |
Publish manual and statistics using webdav
Re magit/magit#5472.
| -rw-r--r-- | .github/workflows/manual.yml | 3 | ||||
| -rw-r--r-- | .github/workflows/stats.yml | 3 | ||||
| -rw-r--r-- | default.mk | 10 | ||||
| -rw-r--r-- | docs/Makefile | 74 |
4 files changed, 33 insertions, 57 deletions
diff --git a/.github/workflows/manual.yml b/.github/workflows/manual.yml index 3b02f40..2a655ae 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 e941fb9..5597fb9 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 }} @@ -1,5 +1,7 @@ TOP := $(dir $(lastword $(MAKEFILE_LIST))) +DOMAIN ?= magit.vc + ## User options ###################################################### # # You can override these settings in "config.mk" or on the command @@ -35,7 +37,7 @@ LISP_EXTRA_TARGETS ?= check-declare INSTALL_INFO ?= $(shell command -v ginstall-info || printf install-info) MAKEINFO ?= makeinfo -MANUAL_HTML_ARGS ?= --css-ref /assets/page.css +MANUAL_HTML_ARGS ?= --css-ref https://$(DOMAIN)/assets/page.css GITSTATS ?= gitstats GITSTATS_DIR ?= $(TOP)docs/stats @@ -243,9 +245,9 @@ DEPS += with-editor/lisp ## Publish ########################################################### -DOMAIN ?= magit.vc -CFRONT_DIST ?= E2LUHBKU1FBV02 - DOCBOOK_XSL ?= /usr/share/xml/docbook/stylesheet/docbook-xsl/epub/docbook.xsl EPUBTRASH = epub.xml META-INF OEBPS + +RCLONE ?= rclone +RCLONE_ARGS ?= -v diff --git a/docs/Makefile b/docs/Makefile index 7bebba1..351bc27 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -43,13 +43,13 @@ dir: magit.info magit-section.info @printf "Generating dir\n" @echo $^ | xargs -n 1 $(INSTALL_INFO) --dir=$@ -HTML_FIXUP_CSS = '/<link rel="stylesheet" type="text\/css" href="\/assets\/page.css">/a\ -<link rel="icon" href="/assets/magit_alt1.ico">\ -\n<link class="s-css-s--style" rel="stylesheet" title="Default" href="/assets/themes/default.css">\ -\n<link class="s-css-s--style" rel="stylesheet alternate" title="Default high contrast" href="/assets/themes/default-high-contrast.css">\ -\n<link class="s-css-s--style" rel="stylesheet alternate" title="Solarized dark xterm" href="/assets/themes/solarized-dark-xterm.css">\ -\n<link class="s-css-s--style" rel="stylesheet alternate" title="Black on white" href="/assets/themes/black-on-white.css">\ -\n<script src="/assets/js/simple-css-switch.js"></script>' +HTML_FIXUP_CSS = '/<link rel="stylesheet" type="text\/css" href="https:\/\/$(DOMAIN)\/assets\/page.css">/a\ +<link rel="icon" href="https://$(DOMAIN)/assets/magit_alt1.ico">\ +\n<link class="s-css-s--style" rel="stylesheet" title="Default" href="https://$(DOMAIN)/assets/themes/default.css">\ +\n<link class="s-css-s--style" rel="stylesheet alternate" title="Default high contrast" href="https://$(DOMAIN)/assets/themes/default-high-contrast.css">\ +\n<link class="s-css-s--style" rel="stylesheet alternate" title="Solarized dark xterm" href="https://$(DOMAIN)/assets/themes/solarized-dark-xterm.css">\ +\n<link class="s-css-s--style" rel="stylesheet alternate" title="Black on white" href="https://$(DOMAIN)/assets/themes/black-on-white.css">\ +\n<script src="https://$(DOMAIN)/assets/js/simple-css-switch.js"></script>' HTML_FIXUP_ONLOAD = 's/<body lang="en">/<body lang="en" onload="simpleCssSwitch()">/' HTML_FIXUP_MENU = '/<\/body>/i<div id="s-css-s--menu"><\/div>' @@ -119,60 +119,36 @@ AUTHORS.md: @git commit --gpg-sign -m "AUTHORS.md: Update list of contributors" \ -o -- $@ ../.mailmap && git show --pretty= -p HEAD || true -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) +SNAP_TARGET = $(subst .,_,$(DOCS_DOMAIN)):devel/ +DOCS_TARGET = $(subst .,_,$(DOCS_DOMAIN)): publish: redo-docs - @printf "Uploading snapshot manuals...\n" - @aws s3 cp $(PKG).html $(PUBLISH_TARGET) - @aws s3 cp $(PKG).pdf $(PUBLISH_TARGET) - @printf "upload: ./$(PKG)/* to $(PUBLISH_TARGET)*\n" - @aws s3 sync --delete $(PKG) $(PUBLISH_TARGET)$(PKG)/ > /dev/null - @aws s3 cp magit-section.html $(PUBLISH_TARGET) - @aws s3 cp magit-section.pdf $(PUBLISH_TARGET) - @printf "upload: ./magit-section/* to $(PUBLISH_TARGET)*\n" - @aws s3 sync --delete magit-section $(PUBLISH_TARGET)magit-section/ > /dev/null - @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 + @cp $(PKG)-section.pdf $(PKG)-section/$(PKG)-section.pdf + @$(RCLONE) sync $(RCLONE_ARGS) $(PKG) $(SNAP_TARGET)/$(PKG)/ + @$(RCLONE) sync $(RCLONE_ARGS) $(PKG)-section $(SNAP_TARGET)/$(PKG)-section/ release: redo-docs - @printf "Uploading release manuals...\n" - @aws s3 cp $(PKG).html $(RELEASE_TARGET) - @aws s3 cp $(PKG).pdf $(RELEASE_TARGET) - @printf "upload: ./$(PKG)/* to $(RELEASE_TARGET)*\n" - @aws s3 sync --delete $(PKG) $(RELEASE_TARGET)$(PKG)/ > /dev/null - @aws s3 cp magit-section.html $(RELEASE_TARGET) - @aws s3 cp magit-section.pdf $(RELEASE_TARGET) - @printf "upload: ./magit-section/* to $(RELEASE_TARGET)*\n" - @aws s3 sync --delete magit-section $(RELEASE_TARGET)magit-section/ > /dev/null - @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 + @cp $(PKG)-section.pdf $(PKG)-section/$(PKG)-section.pdf + @$(RCLONE) sync $(RCLONE_ARGS) $(PKG) $(DOCS_TARGET)/$(PKG)/ + @$(RCLONE) sync $(RCLONE_ARGS) $(PKG)-section $(DOCS_TARGET)/$(PKG)-section/ ## Statistics ######################################################## +STAT_DOMAIN = stats.$(DOMAIN) +STAT_TARGET = $(subst .,_,$(STAT_DOMAIN)):$(PKG)/ + stats: @printf "Generating statistics\n" @$(GITSTATS) $(GITSTATS_ARGS) $(TOP) $(GITSTATS_DIR) 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) ## Lisp ############################################################## @@ -202,7 +178,7 @@ export ORG_MAN_EXPORT define AUTHORS_HEADER The following people have contributed to Magit. -For statistics see https://magit.vc/stats/magit/authors.html. +For statistics see https://$(STAT_DOMAIN)/magit/authors.html. Authors ------- |
