build: Add sync-algolia script

This commit is contained in:
Cole Bemis
2018-05-17 21:51:49 -07:00
parent 894dcfd6a6
commit 1d3283d81d
4 changed files with 2022 additions and 1883 deletions

34
bin/sync-algolia.js Normal file
View File

@ -0,0 +1,34 @@
/* eslint-disable import/no-extraneous-dependencies */
import algolia from 'algoliasearch';
import icons from '../dist/icons.json';
import tags from '../src/tags.json';
const ALGOLIA_APP_ID = '5EEOG744D0';
if (
process.env.TRAVIS_PULL_REQUEST === 'false' &&
process.env.TRAVIS_BRANCH === 'master'
) {
syncAlgolia();
}
function syncAlgolia() {
const client = algolia(ALGOLIA_APP_ID, process.env.ALGOLIA_ADMIN_KEY);
const index = client.initIndex('icons');
const records = Object.keys(icons).map(name => ({
name,
tags: tags[name] || [],
}));
index.clearIndex((err, content) => {
if (err) throw err;
console.log(content); // eslint-disable-line no-console
});
index.addObjects(records, (err, content) => {
if (err) throw err;
console.log(content); // eslint-disable-line no-console
});
}