Skip to content

Commit

Permalink
Merge pull request #14 from siusin/master
Browse files Browse the repository at this point in the history
auto-pub the editor's draft
  • Loading branch information
siusin committed Sep 11, 2017
2 parents 50619ff + 1366424 commit 2688774
Show file tree
Hide file tree
Showing 9 changed files with 133 additions and 2 deletions.
15 changes: 15 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
sudo: false
language: python
python:
- '2.7'
install:
- pip install pygments lxml setuptools --upgrade
- git clone https://github.com/tabatkins/bikeshed.git
- pip install --editable $PWD/bikeshed
- bikeshed update
script:
- bash "./deploy.sh"
env:
global:
- ENCRYPTION_LABEL: "601a5bd7b1c0"
- COMMIT_AUTHOR_EMAIL: "plh+deploy@w3.org"
24 changes: 24 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
Contributions to this repository are intended to become part of Recommendation-track documents governed by the
[W3C Patent Policy](https://www.w3.org/Consortium/Patent-Policy-20040205/) and
[Software and Document License](https://www.w3.org/Consortium/Legal/copyright-software). To make substantive contributions to specifications, you must either participate
in the relevant W3C Working Group or make a non-member patent licensing commitment.

For our editing test-driven process, see [CONTRIBUTING.md](https://github.com/w3c/web-performance/blob/gh-pages/CONTRIBUTING.md).

If you are not the sole contributor to a contribution (pull request), please identify all
contributors in the pull request comment.

To add a contributor (other than yourself, that's automatic), mark them one per line as follows:

```
+@github_username
```

If you added a contributor by mistake, you can remove them in a comment with:

```
-@github_username
```

If you are making a pull request on behalf of someone else but you had no part in designing the
feature, you can remove yourself with the above syntax.
5 changes: 5 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
All Reports in this Repository are licensed by Contributors under the
[W3C Software and Document
License](http://www.w3.org/Consortium/Legal/2015/copyright-software-and-document). Contributions to
Specifications are made under the [W3C CLA](https://www.w3.org/community/about/agreements/cla/).

9 changes: 9 additions & 0 deletions compile.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/bash
set -e # Exit with nonzero exit code if anything fails

bikeshed spec

if [ -d out ]; then
echo Copy the generated spec into out/index.html
cp index.html out/index.html
fi
66 changes: 66 additions & 0 deletions deploy.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
#!/bin/bash
set -e # Exit with nonzero exit code if anything fails

# From https://gist.github.com/domenic/ec8b0fc8ab45f39403dd

SOURCE_BRANCH="master"
TARGET_BRANCH="gh-pages"

function doCompile {
chmod 755 ./compile.sh
./compile.sh
}

# Pull requests and commits to other branches shouldn't try to deploy, just build to verify
if [ "$TRAVIS_PULL_REQUEST" != "false" -o "$TRAVIS_BRANCH" != "$SOURCE_BRANCH" ]; then
echo "Skipping deploy; just doing a build."
doCompile
exit 0
fi

# Save some useful information
REPO=`git config remote.origin.url`
SSH_REPO=${REPO/https:\/\/github.com\//git@github.com:}
SHA=`git rev-parse --verify HEAD`

# Clone the existing gh-pages for this repo into out/
# Create a new empty branch if gh-pages doesn't exist yet (should only happen on first deply)
git clone $REPO out
cd out
git checkout $TARGET_BRANCH || git checkout --orphan $TARGET_BRANCH
cd ..

# Clean out existing contents
rm -rf out/**/* || exit 0

# Run our compile script
doCompile

# Now let's go have some fun with the cloned repo
cd out
git config user.name "Travis CI"
git config user.email "$COMMIT_AUTHOR_EMAIL"

# If there are no changes to the compiled out (e.g. this is a README update) then just bail.
if git diff --quiet; then
echo "No changes to the output on this push; exiting."
exit 0
fi

# Commit the "changes", i.e. the new version.
# The delta will show diffs between new and old versions.
git add -A .
git commit -m "Deploy to GitHub Pages: ${SHA}"

# 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_601a5bd7b1c0_key -iv $encrypted_601a5bd7b1c0_iv -in deploy_key.enc -out deploy_key -d
chmod 600 ../deploy_key
eval `ssh-agent -s`
ssh-add ../deploy_key

# Now that we're all set up, we can push.
git push $SSH_REPO $TARGET_BRANCH
Binary file added deploy_key.enc
Binary file not shown.
11 changes: 9 additions & 2 deletions device-memory.bs → index.bs
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@ Shortname: device-memory
Level: 1
URL: https://w3c.github.io/device-memory/
Group: webperf
Status: CG-DRAFT
Status: ED
TR: https://www.w3.org/TR/device-memory/
Editor: Shubhie Panicker, Google https://google.com, panicker@google.com
Repository: w3c/device-memory
Abstract: This document defines a HTTP Client Hint header to surface device capability for memory i.e. device RAM, in order to enable web apps to customize content depending on device memory constraints.
Status Text: If you wish to make comments regarding this document, please use GitHub or send them to <a href="mailto:public-web-perf@w3.org?subject=%5BLongTasks%5D">public-web-perf@w3.org</a> (<a href="mailto:public-web-perf-request@w3.org?subject=subscribe">subscribe</a>, <a href="https://lists.w3.org/Archives/Public/public-web-perf/">archives</a>) with <code nohighlight>[Device Memory]</code> at the start of your email's subject.
Default Highlight: js
</pre>

Expand Down Expand Up @@ -92,3 +92,10 @@ Device-Memory Client Hint header and JS API will only be available to HTTPS secu
Device identification and classification (e.g. device type and class) based on advertised User-Agent, and other characteristics of the client, are commonly used to select and provide optimized content. Such solutions frequently rely on commercial device databases, which are costly, hard to integrate, and hard to maintain. This specification defines a mechanism to obtain device memory capability that addresses these technical challenges.

The advertised memory value is restricted to a ceiling value (rounded to 2 most signicant bits) to reduce device fingerpriting, and is subject to <a href="http://httpwg.org/http-extensions/client-hints.html#security-considerations">Security Considerations</a> and recommendations outlined in the Client Hints specification.

<!-- ============================================================ -->
<h2 id=acknowledgements>Acknowledgements</h2>
<!-- ============================================================ -->

Special thanks to <a href="https://github.com/w3c/device-memory/graphs/contributors">all the contributors</a> for their technical input and suggestions that led to improvements to this
specification.
File renamed without changes.
5 changes: 5 additions & 0 deletions w3c.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"group": ["45211"]
, "contacts": ["plehegar"]
, "shortName": "device-memory"
}

0 comments on commit 2688774

Please sign in to comment.