@ycmd/creds
Version:
LSK.js CLI Creds is the easiest way to manage GitHub / Gitlab secrets and credentials
1 lines • 4.34 kB
Source Map (JSON)
{"version":3,"sources":["../../src/commands/hooksCommand.ts"],"sourcesContent":["// @ts-nocheck\n\n/* eslint-disable no-console */\nimport Err from '@lskjs/err';\nimport axios from 'axios';\nimport { map } from 'fishbird';\n\nexport async function hooksCommand(dir, { force, ...options } = {}) {\n let config;\n try {\n // eslint-disable-next-line import/no-dynamic-require\n config = require(`${dir}/__config.js`);\n } catch (err) {\n config = {};\n }\n const service = options.service || config.service;\n if (service === 'github') {\n throw new Err('Github hooks is not supported yet');\n }\n\n const server = options.server || config.server;\n const id = options.id || config.id;\n const token = options.token || config.token;\n const projectName = options.project || config.project;\n const url = `https://${server}/api/v4/projects/${id}/hooks`;\n\n if (!server) throw new Err('!server');\n if (!id) throw new Err('!id');\n if (!token) throw new Err('!token');\n\n const hooksFromConfig = config?.hooks || [];\n try {\n const { data: hooksList } = await axios({\n method: 'get',\n url: `${url}`,\n headers: {\n 'PRIVATE-TOKEN': token,\n },\n }).catch((err) => {\n console.log(err);\n if (!force) throw err;\n return { data: { value: '@lskjs/creds' } };\n });\n await map(hooksList, async ({ id: hookId }) => {\n await axios({\n method: 'delete',\n url: `${url}/${hookId}`,\n headers: {\n 'PRIVATE-TOKEN': token,\n },\n });\n });\n } catch (err) {\n console.error(\n `[ERR] Project ${id}`,\n (err && err.response && err.response.data && err.response.data.message) || err,\n );\n }\n\n await map(hooksFromConfig, async (dataHook) => {\n try {\n // if (varData.value.indexOf('@lskjs/creds') === -1 && !force) {\n // console.log(`[IGNORE] Project ${id}`);\n // return;\n // }\n await axios({\n method: 'post',\n url,\n data: dataHook,\n headers: {\n 'PRIVATE-TOKEN': token,\n },\n });\n\n // console.log(data);\n console.log(`[OK] ${dir} => ${server}/${projectName}`);\n console.log(`[OK] Project ${projectName}`);\n } catch (err) {\n console.error(\n `[ERR] Project ${id}`,\n (err && err.response && err.response.data && err.response.data.message) || err,\n );\n }\n });\n}\n"],"mappings":"oUAGA,OAAOA,MAAS,aAChB,OAAOC,MAAW,QAClB,OAASC,OAAAA,MAAW,WAEpB,eAAsBC,EAAaC,EAAK,CAAEC,MAAAA,EAAO,GAAGC,CAAAA,EAAY,CAAC,EAAC,CAChE,IAAIC,EACJ,GAAI,CAEFA,EAASC,EAAQ,GAAGJ,CAAAA,cAAiB,CACvC,MAAc,CACZG,EAAS,CAAC,CACZ,CAEA,IADgBD,EAAQG,SAAWF,EAAOE,WAC1B,SACd,MAAM,IAAIC,EAAI,mCAAA,EAGhB,IAAMC,EAASL,EAAQK,QAAUJ,EAAOI,OAClCC,EAAKN,EAAQM,IAAML,EAAOK,GAC1BC,EAAQP,EAAQO,OAASN,EAAOM,MAChCC,EAAcR,EAAQS,SAAWR,EAAOQ,QACxCC,EAAM,WAAWL,CAAAA,oBAA0BC,CAAAA,SAEjD,GAAI,CAACD,EAAQ,MAAM,IAAID,EAAI,SAAA,EAC3B,GAAI,CAACE,EAAI,MAAM,IAAIF,EAAI,KAAA,EACvB,GAAI,CAACG,EAAO,MAAM,IAAIH,EAAI,QAAA,EAE1B,IAAMO,EAAkBV,GAAQW,OAAS,CAAA,EACzC,GAAI,CACF,GAAM,CAAEC,KAAMC,CAAS,EAAK,MAAMC,EAAM,CACtCC,OAAQ,MACRN,IAAK,GAAGA,CAAAA,GACRO,QAAS,CACP,gBAAiBV,CACnB,CACF,CAAA,EAAGW,MAAOC,GAAAA,CAER,GADAC,QAAQC,IAAIF,CAAAA,EACR,CAACpB,EAAO,MAAMoB,EAClB,MAAO,CAAEN,KAAM,CAAES,MAAO,cAAe,CAAE,CAC3C,CAAA,EACA,MAAMC,EAAIT,EAAW,MAAO,CAAER,GAAIkB,CAAM,IAAE,CACxC,MAAMT,EAAM,CACVC,OAAQ,SACRN,IAAK,GAAGA,CAAAA,IAAOc,CAAAA,GACfP,QAAS,CACP,gBAAiBV,CACnB,CACF,CAAA,CACF,CAAA,CACF,OAASY,EAAK,CACZC,QAAQK,MACN,iBAAiBnB,CAAAA,GAChBa,GAAOA,EAAIO,UAAYP,EAAIO,SAASb,MAAQM,EAAIO,SAASb,KAAKc,SAAYR,CAAAA,CAE/E,CAEA,MAAMI,EAAIZ,EAAiB,MAAOiB,GAAAA,CAChC,GAAI,CAKF,MAAMb,EAAM,CACVC,OAAQ,OACRN,IAAAA,EACAG,KAAMe,EACNX,QAAS,CACP,gBAAiBV,CACnB,CACF,CAAA,EAGAa,QAAQC,IAAI,QAAQvB,CAAAA,OAAUO,CAAAA,IAAUG,CAAAA,EAAa,EACrDY,QAAQC,IAAI,gBAAgBb,CAAAA,EAAa,CAC3C,OAASW,EAAK,CACZC,QAAQK,MACN,iBAAiBnB,CAAAA,GAChBa,GAAOA,EAAIO,UAAYP,EAAIO,SAASb,MAAQM,EAAIO,SAASb,KAAKc,SAAYR,CAAAA,CAE/E,CACF,CAAA,CACF,CA7EsBtB,EAAAA,EAAAA","names":["Err","axios","map","hooksCommand","dir","force","options","config","require","service","Err","server","id","token","projectName","project","url","hooksFromConfig","hooks","data","hooksList","axios","method","headers","catch","err","console","log","value","map","hookId","error","response","message","dataHook"]}