star-chart-search-enhancer/docs/internal-extension-distribution.md

2.0 KiB

Internal Extension Distribution

Fixed Extension ID

  • Manifest key is fixed in the project.
  • The unpacked extension ID is pkjopdibdnomhogjheclhnknmejccffg.
  • Update Logto with:
    • https://pkjopdibdnomhogjheclhnknmejccffg.chromiumapp.org/callback
    • https://pkjopdibdnomhogjheclhnknmejccffg.chromiumapp.org/
    • chrome-extension://pkjopdibdnomhogjheclhnknmejccffg

Internal Package

  1. Run npm test.
  2. Run npm run package:internal.
  3. Run npm run write:latest.
  4. Send release/star-chart-search-enhancer-internal.zip to coworkers.

COS Update Manifest

The popup checks src/shared/update-config.ts for the update manifest URL.

Before publishing the COS-based update flow:

  1. Upload these files to COS:
    • star-chart-search-enhancer/latest.json
    • star-chart-search-enhancer/releases/<version>/star-chart-search-enhancer-internal.zip
    • star-chart-search-enhancer/releases/<version>/星图增强插件-超简单安装使用指南.pdf
  2. Make the COS path publicly readable.
  3. Replace the placeholder UPDATE_MANIFEST_URL in src/shared/update-config.ts if your COS bucket changes.
  4. Rebuild and package the extension.

The release manifest can be generated with a real public base URL:

UPDATE_PUBLIC_BASE_URL="https://wksgx-1343191620.cos.ap-nanjing.myqcloud.com/star-chart-search-enhancer/releases/<version>" npm run write:latest

Quick access check:

curl -I https://wksgx-1343191620.cos.ap-nanjing.myqcloud.com/star-chart-search-enhancer/latest.json

Coworker Install Steps

  1. Unzip star-chart-search-enhancer-internal.zip.
  2. Open chrome://extensions.
  3. Enable developer mode.
  4. Click Load unpacked.
  5. Select the unzipped folder.
  6. Confirm the extension ID is pkjopdibdnomhogjheclhnknmejccffg.

Notes

  • Keep .local/extension-key.pem private and backed up internally.
  • Do not commit or share the private key with people who only need to install the extension.
  • If the batch submit backend changes away from 192.168.31.21:8083, update scripts/manifest.mjs before packaging.