From 7eadf7c5fe608aab36c6953db9cc9b0ead71d9f7 Mon Sep 17 00:00:00 2001 From: uni-kakurenbo Date: Wed, 25 Mar 2026 16:41:38 +0900 Subject: [PATCH 1/2] =?UTF-8?q?chore:=20`config.d.ts`=20=E3=81=8B=E3=82=89?= =?UTF-8?q?=20`config.schema.json`=20=E3=82=92=E8=87=AA=E5=8B=95=E7=94=9F?= =?UTF-8?q?=E6=88=90=E3=81=99=E3=82=8B=20script=20=E3=82=92=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/check-schema.yml | 27 +++++ .prettierignore | 1 + build/docker/startup.sh | 24 ++--- src/types/config.d.ts => config.d.ts | 0 config.schema.json | 1 + package-lock.json | 145 ++++++++++++++++++++++++++- package.json | 2 + scripts/generate-schema.js | 23 +++++ tests/unit/tsconfig.json | 2 +- tsconfig.json | 2 +- 10 files changed, 210 insertions(+), 17 deletions(-) create mode 100644 .github/workflows/check-schema.yml rename src/types/config.d.ts => config.d.ts (100%) create mode 100644 config.schema.json create mode 100644 scripts/generate-schema.js diff --git a/.github/workflows/check-schema.yml b/.github/workflows/check-schema.yml new file mode 100644 index 0000000000..51baeec0b3 --- /dev/null +++ b/.github/workflows/check-schema.yml @@ -0,0 +1,27 @@ +name: Check Config Schema + +on: + pull_request: + +jobs: + check-schema: + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v6 + + - name: Setup Node.js + uses: actions/setup-node@v6 + with: + node-version: '20' + + - name: Install dependencies + run: npm ci + + - name: Generate JSON Schema from config.d.ts + run: npm run generate-schema + + - name: Check for changes + run: | + git diff --exit-code config.schema.json diff --git a/.prettierignore b/.prettierignore index ee2d74488d..4dd75fd452 100644 --- a/.prettierignore +++ b/.prettierignore @@ -5,3 +5,4 @@ node_modules /src/assets/emoji_altname_table.json /src/assets/unicode_emojis.json /public/new-relic.js +*.schema.json diff --git a/build/docker/startup.sh b/build/docker/startup.sh index 00dd119d98..128543c044 100644 --- a/build/docker/startup.sh +++ b/build/docker/startup.sh @@ -14,8 +14,8 @@ echo "Startup: check override files" ls /app/override/* >/dev/null 2>&1 if [ $? -eq 0 ]; then - echo "Startup: copy override files" - cp -r -L /app/override/* /usr/share/caddy + echo "Startup: copy override files" + cp -r -L /app/override/* /usr/share/caddy fi ### @@ -35,17 +35,17 @@ sed -i -e "s/#0D67EA/$THEME_COLOR/g" /usr/share/caddy/index.html # New Relic 設定 ### if [ -n "$NEW_RELIC_LICENSE_KEY" ] && [ -n "$NEW_RELIC_ACCOUNT_ID" ] && [ -n "$NEW_RELIC_TRUST_KEY" ] && [ -n "$NEW_RELIC_AGENT_ID" ] && [ -n "$NEW_RELIC_APPLICATION_ID" ]; then - echo "Startup: set up New Relic" - sed -i -e "s/LICENSE_KEY_PLACEHOLDER/$NEW_RELIC_LICENSE_KEY/g" /usr/share/caddy/new-relic.js - sed -i -e "s/ACCOUNT_ID_PLACEHOLDER/$NEW_RELIC_ACCOUNT_ID/g" /usr/share/caddy/new-relic.js - sed -i -e "s/TRUST_KEY_PLACEHOLDER/$NEW_RELIC_TRUST_KEY/g" /usr/share/caddy/new-relic.js - sed -i -e "s/AGENT_ID_PLACEHOLDER/$NEW_RELIC_AGENT_ID/g" /usr/share/caddy/new-relic.js - sed -i -e "s/APPLICATION_ID_PLACEHOLDER/$NEW_RELIC_APPLICATION_ID/g" /usr/share/caddy/new-relic.js - CACHE_KEY=$(md5sum /usr/share/caddy/new-relic.js | cut -d ' ' -f 1) - mv /usr/share/caddy/new-relic.js /usr/share/caddy/new-relic-$CACHE_KEY.js - sed -i -e "s//