-
Notifications
You must be signed in to change notification settings - Fork 70
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Meta: add commit and branch snapshots
This moves the deploy process to be in line with most other WHATWG specifications; see whatwg/meta#2. It also adds the missing dfn.js file to get popups when clicking on <dfn> elements and makes other small tweaks.
- Loading branch information
Showing
8 changed files
with
128 additions
and
60 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,9 @@ | ||
node_modules/ | ||
npm-debug.log | ||
index.html | ||
|
||
console_spec_id_rsa | ||
deploy_key | ||
console.spec.whatwg.org/ | ||
.DS_Store | ||
.idea |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,59 +1,10 @@ | ||
SHELL=/bin/bash -o pipefail | ||
|
||
spec = console | ||
targetfolder = $(spec).spec.whatwg.org | ||
server = $(spec).spec.whatwg.org | ||
local: index.bs | ||
bikeshed spec index.bs index.html --md-Text-Macro="SNAPSHOT-LINK LOCAL COPY" | ||
|
||
# find all bikeshed files and create a target for them | ||
# ./index.bs gets console.spec.whatwg.org/index.html | ||
markupfiles := $(shell find . -name '*.bs' \ | ||
| sed 's|.bs|.html|g' \ | ||
| sed 's|./|$(targetfolder)/|g') | ||
remote: index.bs | ||
curl https://api.csswg.org/bikeshed/ -f -F [email protected] > index.html -F md-Text-Macro="SNAPSHOT-LINK LOCAL COPY" | ||
|
||
# and build after a clean | ||
all: clean $(markupfiles) $(targetfolder)/images | ||
|
||
# rule matches our target files from markupfiles: | ||
# $(targetfolder)/%.html matches all html file in the targetfolder | ||
# $@ in the rule gets the target files from markupfiles | ||
# i.e. if markupfiles contains bla/foo.html and bla/index.html it gets: | ||
# bla/index.html and bla/foo.html | ||
# the magic var @D is the directory part of our matching rule. | ||
# @$ is basically what is matched in the % of the %.html | ||
$(targetfolder)/%.html: | ||
@[ -d $(@D) ] || mkdir -p $(@D) # create dir if it does not exist | ||
@curl -f -s https://api.csswg.org/bikeshed/ -F file=@$*.bs \ | ||
| node_modules/.bin/emu-algify > $@ | ||
|
||
# copy images | ||
$(targetfolder)/images: | ||
$(shell cp -R images $(targetfolder)/) | ||
|
||
# cleaning up | ||
clean: | ||
@rm -rf $(targetfolder) | ||
|
||
# deployment | ||
ifneq ($(TRAVIS_BRANCH),master) | ||
deploy: | ||
@echo "Not on master branch; skipping deploy" | ||
else ifneq ($(TRAVIS_PULL_REQUEST),false) | ||
deploy: | ||
@echo "Building a pull request; skipping deploy" | ||
else | ||
deploy: clean all upload | ||
@echo "Living standard output to $(targetfolder)" | ||
@echo "" | ||
@find $(targetfolder) -print | ||
@echo "" | ||
endif | ||
|
||
# upload to server | ||
upload: | ||
@openssl aes-256-cbc -K $(encrypted_b9b018a1d67d_key) -iv $(encrypted_b9b018a1d67d_iv) -in console_spec_id_rsa.enc -out console_spec_id_rsa -d | ||
@chmod 600 console_spec_id_rsa | ||
@scp -r -i console_spec_id_rsa $(targetfolder) $(DEPLOY_USER)@$(server): | ||
|
||
# don't confuse make given we have files called "clean" "upload" | ||
# "deploy" or "all" in our root dir | ||
.PHONY: clean upload deploy all | ||
# Don't confuse make given we have files called "local" or "remote" in our root dir | ||
.PHONY: local remote |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,105 @@ | ||
#!/bin/bash | ||
set -e | ||
|
||
DEPLOY_USER="ddenicola" | ||
|
||
TITLE="Console Standard" | ||
LS_URL="https://console.spec.whatwg.org/" | ||
COMMIT_URL_BASE="https://github.com/whatwg/console/commit/" | ||
BRANCH_URL_BASE="https://github.com/whatwg/console/tree/" | ||
|
||
INPUT_FILE="index.bs" | ||
SERVER="console.spec.whatwg.org" | ||
WEB_ROOT="console.spec.whatwg.org" | ||
COMMITS_DIR="commit-snapshots" | ||
BRANCHES_DIR="branch-snapshots" | ||
|
||
if [ "$1" != "--local" -a "$DEPLOY_USER" == "" ]; then | ||
echo "No deploy credentials present; skipping deploy" | ||
exit 0 | ||
fi | ||
|
||
if [ "$1" == "--local" ]; then | ||
echo "Running a local deploy into $WEB_ROOT directory" | ||
echo "" | ||
fi | ||
|
||
SHA="`git rev-parse HEAD`" | ||
BRANCH="`git rev-parse --abbrev-ref HEAD`" | ||
if [ "$BRANCH" == "HEAD" ]; then # Travis does this for some reason | ||
BRANCH=$TRAVIS_BRANCH | ||
fi | ||
|
||
if [ "$BRANCH" == "master" -a "$TRAVIS_PULL_REQUEST" != "false" -a "$TRAVIS_PULL_REQUEST" != "" ]; then | ||
echo "Skipping deploy for a pull request; the branch build will suffice" | ||
exit 0 | ||
fi | ||
|
||
BACK_TO_LS_LINK="<a href=\"/\" id=\"commit-snapshot-link\">Go to the living standard</a>" | ||
SNAPSHOT_LINK="<a href=\"/commit-snapshots/$SHA/\" id=\"commit-snapshot-link\">Snapshot as of this commit</a>" | ||
|
||
echo "Branch = $BRANCH" | ||
echo "Commit = $SHA" | ||
echo "" | ||
|
||
rm -rf $WEB_ROOT || exit 0 | ||
|
||
# Commit snapshot | ||
COMMIT_DIR=$WEB_ROOT/$COMMITS_DIR/$SHA | ||
mkdir -p $COMMIT_DIR | ||
curl https://api.csswg.org/bikeshed/ -f -F file=@$INPUT_FILE -F md-status=LS-COMMIT \ | ||
-F md-warning="Commit $SHA $COMMIT_URL_BASE$SHA replaced by $LS_URL" \ | ||
-F md-title="$TITLE (Commit Snapshot $SHA)" \ | ||
-F md-Text-Macro="SNAPSHOT-LINK $BACK_TO_LS_LINK" \ | ||
> $COMMIT_DIR/index.intermediate.html; | ||
node_modules/.bin/emu-algify < $COMMIT_DIR/index.intermediate.html > $COMMIT_DIR/index.html | ||
rm $COMMIT_DIR/index.intermediate.html | ||
mkdir $COMMIT_DIR/images | ||
cp images/*.* $COMMIT_DIR/images/ | ||
echo "Commit snapshot output to $WEB_ROOT/$COMMITS_DIR/$SHA" | ||
echo "" | ||
|
||
if [ $BRANCH != "master" ] ; then | ||
# Branch snapshot, if not master | ||
BRANCH_DIR=$WEB_ROOT/$BRANCHES_DIR/$BRANCH | ||
mkdir -p $BRANCH_DIR | ||
curl https://api.csswg.org/bikeshed/ -f -F file=@$INPUT_FILE -F md-status=LS-BRANCH \ | ||
-F md-warning="Branch $BRANCH $BRANCH_URL_BASE$BRANCH replaced by $LS_URL" \ | ||
-F md-title="$TITLE (Branch Snapshot $BRANCH)" \ | ||
-F md-Text-Macro="SNAPSHOT-LINK $SNAPSHOT_LINK" \ | ||
> $BRANCH_DIR/index.intermediate.html; | ||
node_modules/.bin/emu-algify < $BRANCH_DIR/index.intermediate.html > $BRANCH_DIR/index.html | ||
mkdir $BRANCH_DIR/images | ||
rm $BRANCH_DIR/index.intermediate.html | ||
cp images/*.* $BRANCH_DIR/images/ | ||
echo "Branch snapshot output to $WEB_ROOT/$BRANCHES_DIR/$BRANCH" | ||
else | ||
# Living standard, if master | ||
curl https://api.csswg.org/bikeshed/ -f -F file=@$INPUT_FILE \ | ||
-F md-Text-Macro="SNAPSHOT-LINK $SNAPSHOT_LINK" \ | ||
> $WEB_ROOT/index.intermediate.html; | ||
node_modules/.bin/emu-algify < $WEB_ROOT/index.intermediate.html > $WEB_ROOT/index.html | ||
rm $WEB_ROOT/index.intermediate.html | ||
mkdir $WEB_ROOT/images | ||
cp images/*.* $WEB_ROOT/images/ | ||
echo "Living standard output to $WEB_ROOT" | ||
fi | ||
|
||
echo "" | ||
find $WEB_ROOT -print | ||
echo "" | ||
|
||
if [ "$1" != "--local" ]; then | ||
# Get the deploy key by using Travis's stored variables to decrypt deploy_key.enc | ||
ENCRYPTED_KEY_VAR="encrypted_${ENCRYPTION_LABEL}_key" | ||
ENCRYPTED_IV_VAR="encrypted_${ENCRYPTION_LABEL}_iv" | ||
ENCRYPTED_KEY=${!ENCRYPTED_KEY_VAR} | ||
ENCRYPTED_IV=${!ENCRYPTED_IV_VAR} | ||
openssl aes-256-cbc -K $ENCRYPTED_KEY -iv $ENCRYPTED_IV -in deploy_key.enc -out deploy_key -d | ||
chmod 600 deploy_key | ||
eval `ssh-agent -s` | ||
ssh-add deploy_key | ||
|
||
# scp the output directory up | ||
scp -r $WEB_ROOT $DEPLOY_USER@$SERVER: | ||
fi |
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,6 +7,6 @@ | |
"author": "Terin Stock <[email protected]> & Robert Kowalski <[email protected]>", | ||
"license": "CC0", | ||
"devDependencies": { | ||
"emu-algify": "^2.0.0" | ||
"emu-algify": "^2.2.0" | ||
} | ||
} |