fix: replace chokidar with fs.watch

This commit is contained in:
Aarnav Tale
2024-03-30 04:20:16 -04:00
parent 935e015be9
commit 5c0b823c12
4 changed files with 5 additions and 6 deletions
+2
View File
@@ -12,6 +12,7 @@ import Spinner from '~/components/Spinner'
import TableList from '~/components/TableList'
import { getConfig, getContext, patchConfig } from '~/utils/config'
import { restartHeadscale } from '~/utils/docker'
import { useLiveData } from '~/utils/useLiveData'
import Domains from './domains'
import MagicModal from './magic'
@@ -56,6 +57,7 @@ export async function action({ request }: ActionFunctionArgs) {
}
export default function Page() {
useLiveData({ interval: 5000 })
const data = useLoaderData<typeof loader>()
const fetcher = useFetcher()
const [localOverride, setLocalOverride] = useState(data.overrideLocal)
+3 -2
View File
@@ -1,7 +1,7 @@
import { type FSWatcher, watch } from 'node:fs'
import { access, constants, readFile, writeFile } from 'node:fs/promises'
import { resolve } from 'node:path'
import { type FSWatcher, watch } from 'chokidar'
import { type Document, parseDocument } from 'yaml'
type Duration = `${string}s` | `${string}h` | `${string}m` | `${string}d` | `${string}y`
@@ -149,7 +149,8 @@ export function registerConfigWatcher() {
}
const path = resolve(process.env.CONFIG_FILE ?? '/etc/headscale/config.yaml')
watcher = watch(path).on('change', async () => {
watcher = watch(path, async () => {
console.log('Config file changed, reloading')
await getConfig(true)
})
}