]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - server/tools/cli.ts
parametrize gpg key in release script
[github/Chocobozzz/PeerTube.git] / server / tools / cli.ts
1 const config = require('application-config')('PeerTube/CLI')
2 const netrc = require('netrc-parser').default
3 import { getVersion } from '../helpers/utils'
4
5 const version = getVersion
6
7 let settings = {
8 remotes: [],
9 default: 0
10 }
11
12 interface Settings {
13 remotes: any[],
14 default: number
15 }
16
17 async function getSettings () {
18 return new Promise<Settings>((res, rej) => {
19 let settings = {
20 remotes: [],
21 default: 0
22 } as Settings
23 config.read((err, data) => {
24 if (err) {
25 return rej(err)
26 }
27 return res(data || settings)
28 })
29 })
30 }
31
32 async function writeSettings (settings) {
33 return new Promise((res, rej) => {
34 config.write(settings, function (err) {
35 if (err) {
36 return rej(err)
37 }
38 return res()
39 })
40 })
41 }
42
43 netrc.loadSync()
44
45 // ---------------------------------------------------------------------------
46
47 export {
48 version,
49 config,
50 settings,
51 getSettings,
52 writeSettings,
53 netrc
54 }