fix: replace chokidar with fs.watch
This commit is contained in:
parent
935e015be9
commit
5c0b823c12
@ -12,6 +12,7 @@ import Spinner from '~/components/Spinner'
|
|||||||
import TableList from '~/components/TableList'
|
import TableList from '~/components/TableList'
|
||||||
import { getConfig, getContext, patchConfig } from '~/utils/config'
|
import { getConfig, getContext, patchConfig } from '~/utils/config'
|
||||||
import { restartHeadscale } from '~/utils/docker'
|
import { restartHeadscale } from '~/utils/docker'
|
||||||
|
import { useLiveData } from '~/utils/useLiveData'
|
||||||
|
|
||||||
import Domains from './domains'
|
import Domains from './domains'
|
||||||
import MagicModal from './magic'
|
import MagicModal from './magic'
|
||||||
@ -56,6 +57,7 @@ export async function action({ request }: ActionFunctionArgs) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export default function Page() {
|
export default function Page() {
|
||||||
|
useLiveData({ interval: 5000 })
|
||||||
const data = useLoaderData<typeof loader>()
|
const data = useLoaderData<typeof loader>()
|
||||||
const fetcher = useFetcher()
|
const fetcher = useFetcher()
|
||||||
const [localOverride, setLocalOverride] = useState(data.overrideLocal)
|
const [localOverride, setLocalOverride] = useState(data.overrideLocal)
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
|
import { type FSWatcher, watch } from 'node:fs'
|
||||||
import { access, constants, readFile, writeFile } from 'node:fs/promises'
|
import { access, constants, readFile, writeFile } from 'node:fs/promises'
|
||||||
import { resolve } from 'node:path'
|
import { resolve } from 'node:path'
|
||||||
|
|
||||||
import { type FSWatcher, watch } from 'chokidar'
|
|
||||||
import { type Document, parseDocument } from 'yaml'
|
import { type Document, parseDocument } from 'yaml'
|
||||||
|
|
||||||
type Duration = `${string}s` | `${string}h` | `${string}m` | `${string}d` | `${string}y`
|
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')
|
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)
|
await getConfig(true)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
@ -20,7 +20,6 @@
|
|||||||
"@remix-run/node": "^2.8.1",
|
"@remix-run/node": "^2.8.1",
|
||||||
"@remix-run/react": "^2.8.1",
|
"@remix-run/react": "^2.8.1",
|
||||||
"@remix-run/serve": "^2.8.1",
|
"@remix-run/serve": "^2.8.1",
|
||||||
"chokidar": "^3.6.0",
|
|
||||||
"clsx": "^2.1.0",
|
"clsx": "^2.1.0",
|
||||||
"isbot": "^4.1.0",
|
"isbot": "^4.1.0",
|
||||||
"oauth4webapi": "^2.10.3",
|
"oauth4webapi": "^2.10.3",
|
||||||
|
|||||||
3
pnpm-lock.yaml
generated
3
pnpm-lock.yaml
generated
@ -32,9 +32,6 @@ dependencies:
|
|||||||
'@remix-run/serve':
|
'@remix-run/serve':
|
||||||
specifier: ^2.8.1
|
specifier: ^2.8.1
|
||||||
version: 2.8.1(typescript@5.4.3)
|
version: 2.8.1(typescript@5.4.3)
|
||||||
chokidar:
|
|
||||||
specifier: ^3.6.0
|
|
||||||
version: 3.6.0
|
|
||||||
clsx:
|
clsx:
|
||||||
specifier: ^2.1.0
|
specifier: ^2.1.0
|
||||||
version: 2.1.0
|
version: 2.1.0
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user