文章校正機能(draftlint)の設定はソースコードにべた書きしている。
もう少し手軽に許可リストを変更したい。
保存先を変更することで回避できないか。
環境変数
ストレージ系のサービス
CMS(コンテンツの保存先)に設定も保存する。
良い
良くない
今回はリソースに余裕があるので CMS へ保存を選択。
CMS へ保存された設定をどのように取得し利用するか。
.json
初期コストは低いが問題もある。
初期コストはそれなりだが問題は少ない。
現状では様子見の面もあるので、初期コストが低い方法を選択。
#!/bin/sh set -e curl "${API_BASE_URL}api/v1/config/draftlint-config?fields=config" -s -H "X-API-KEY:${GET_API_KEY}" \ > src/\$draftlint-config.json
export function mergeRules(r1: any[], r2: any[]): any[] { if (r2) { const ret = new Array(r1.length); r1.forEach((r, i) => { const idx = r2.findIndex(({ ruleId }) => r.ruleId === ruleId); if (idx >= 0) { ret[i] = merge(r, r2[idx]); return; } ret[i] = r; }); return ret; } return r1; }
今後も、状況に応じて構成を変更することはある。
少し使ってみたが、「設定追加後のスクリプト実行」が既に面倒に感じている。
次ページからその後の所感的なものを追記していく。
ジョグのときに判明、モバイル環境では以下の問題がある
スマホで JSON の編集はかなり難易度高い
スクリプトの実行が難しい
自分の不注意なので「慣れろ」という話ではあるが。