awesome-ipfs/.circleci/config.yml
2020-06-24 10:55:02 +01:00

67 lines
1.5 KiB
YAML

version: 2
jobs:
awesome:
docker:
- image: circleci/ruby:2.4.2-jessie-node
steps:
- checkout
- run: gem install awesome_bot
- run: awesome_bot --allow 429 --allow-redirect --allow-dupe --allow-ssl -w ipfs.io README.md
build:
docker:
- image: circleci/node:10.15.1-browsers
environment:
NO_SANDBOX: true
steps:
- checkout
- run: npm ci
- run: npm run build
- persist_to_workspace:
root: .
paths:
- public
deploy:
docker:
- image: olizilla/ipfs-dns-deploy
environment:
DOMAIN: awesome.ipfs.io
BUILD_DIR: public
steps:
- attach_workspace:
at: /tmp/workspace
- run:
name: Deploy website to IPFS
command: |
pin_name="$DOMAIN build $CIRCLE_BUILD_NUMBER"
hash=$(pin-to-cluster.sh "$pin_name" /tmp/workspace/$BUILD_DIR)
echo "Website added to IPFS: https://ipfs.io/ipfs/$hash"
if [ "$CIRCLE_BRANCH" == "master" ] ; then
dnslink-dnsimple -d $DOMAIN -r _dnslink -l /ipfs/$hash
fi
workflows:
version: 2
check-links:
triggers:
- schedule:
cron: "0 0 * * *"
filters:
branches:
only:
- master
jobs:
- awesome
build-deploy:
jobs:
- awesome
- build
- deploy:
context: ipfs-dns-deploy
requires:
- build