Source for the IPFS Blog
Please Review PIPELINE.md to understand how this repo pipeline works.
- Install node + npm and required modules.
- Install hugo
npm install
- Run build.
npm run build
To create a new post:
cp -r drafts/post-draft-template drafts/<short-title>
cd drafts/<short-title>
# edit index.md
# edit skeleton.md
rm skeleton-template.md
That will create a directory for the post inside drafts/
. Edit the index.md
and skeleton.md
there. Place any static assets (e.g. images) inside that directory.
When ready to publish, the post directory will be moved from drafts/
into src/
, with be given the next sequential number.
Start a live reloading hugo:
npm start
Blog should not be available at http://localhost:1313/blog/
The layouts follow the example viewer. Modify the files inside
layouts/
static/
How to publish the blog on IPFS.io.
- Make a change to a file
- Add and commit.
make build
$ ipfs add -r build
Only if you want a preview for other people (you can just usemake serve
). The path isbuild
, in the website and the blog. The daemon needs to be running for others to access it, or to access it through a gateway.- Push to remote branch.
- Make a pull request to
master
. - Get it merged following review from another member.
$ git checkout master && git pull origin master
-
$ ipfs daemon
-
$ make publish
Now anyone who has the hash can access. -
Go to IRC: Use pinbot to liase with all of the other 8 gateways (planets: Uranus, Venus, etc) and make sure they have it pinned. So, like so:
$ !pin <hash> <label>
The label (it should be blog
) can change, of course. This can sometimes take ages, because there is a pinbug that causes a hang. Pinbot will tell you when it succeeds. If it continually hangs, the gateway needs to restart. Pin @lgierth or @whyrusleeping and tell them that the pinning bug is bugging you, and have them zap it. Then try pinning again (it should work right away).
$ make publish-to-domain
You will need access to DigitalOcean for this to work. You will then need to use the token. This will take a few minutes for DNS to propogate.
Feel free to join in! PRs and issues are welcome.
This repository falls under the IPFS Code of Conduct.
© Protocol Labs | Code is licensed with the MIT License. Except as noted, other content licensed CC-BY 3.0.