Source for the IPFS Blog
PIPELINE.md to understand how this repo pipeline works.Please Review
Table of Contents
- Publishing Post
- Run build.
npm run build
Creating a Post
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
skeleton.md there. Place any static assets (e.g. images) inside that directory.
When ready to publish, the post directory will be moved from
src/, with be given the next sequential number.
Start a live reloading hugo:
Blog should not be available at http://localhost:1313/blog/
The layouts follow the example viewer. Modify the files inside
How to publish the blog on IPFS.io.
- Make a change to a file
- Add and commit.
$ ipfs add -r buildOnly if you want a preview for other people (you can just use
make serve). The path is
build, 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
- Get it merged following review from another member.
$ git checkout master && git pull origin master
$ ipfs daemon
$ make publishNow 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.