@@ -8,26 +8,39 @@ export default register => {
88 name : 'HTTP Post' ,
99 data : {
1010 auth : 'none' ,
11+ username : '' ,
12+ password : '' ,
13+ token : '' ,
1114 url : 'https://www.example.com/endpoint' ,
1215 } ,
1316 component : View ,
1417 readOnlyComponent : ReadOnly ,
1518 generateImports : ( ) =>
16- [ 'http' , 'json' ] . map ( i => `import "${ i } "` ) . join ( '\n' ) ,
19+ [ 'http' , 'influxdata/influxdb/secrets' , 'json' ]
20+ . map ( i => `import "${ i } "` )
21+ . join ( '\n' ) ,
1722 generateTestImports : ( ) =>
18- [ 'array' , 'http' , 'json' ] . map ( i => `import "${ i } "` ) . join ( '\n' ) ,
23+ [ 'array' , 'http' , 'influxdata/influxdb/secrets' , 'json' ]
24+ . map ( i => `import "${ i } "` )
25+ . join ( '\n' ) ,
1926 generateQuery : data => {
2027 const headers = [ [ '"Content-Type"' , '"application/json"' ] ]
28+ let prefixSecrets = ''
2129
2230 if ( data . auth === 'basic' ) {
23- headers . push ( [
24- 'Authorization' ,
25- `http.basicAuth(u:"${ data . username } ", p:"${ data . password } ")` ,
26- ] )
31+ headers . push ( [ 'Authorization' , 'auth' ] )
32+ prefixSecrets = `
33+ username = secrets.get(key: "${ data . username } ")
34+ password = secrets.get(key: "${ data . password } ")
35+ auth = http.basicAuth(u: username, p: password)
36+ `
2737 }
2838
2939 if ( data . auth === 'bearer' ) {
30- headers . push ( [ 'Authorization' , `"Bearer ${ data . token } "` ] )
40+ headers . push ( [ 'Authorization' , `"Bearer \${token}"` ] )
41+ prefixSecrets = `
42+ token = secrets.get(key: "${ data . token } ")
43+ `
3144 }
3245
3346 const _headers = headers
@@ -37,33 +50,42 @@ export default register => {
3750 } , [ ] )
3851 . join ( ', ' )
3952
40- const out = `task_data
41- |> schema["fieldsAsCols"]()
42- |> set(key: "_notebook_link", value: "${ window . location . href } ")
43- |> monitor["check"](
44- data: check,
45- messageFn: messageFn,
46- crit: trigger,
47- )
48- |> monitor["notify"](data: notification, endpoint: http.endpoint(url: "${ data . url } ")(
49- mapFn: (r) => {
50- body = {r with _version: 1}
51- return {headers: {${ _headers } }, data: json.encode(v: body)}
52- }))`
53+ const out = `
54+ ${ prefixSecrets }
55+ task_data
56+ |> schema["fieldsAsCols"]()
57+ |> set(key: "_notebook_link", value: "${ window . location . href } ")
58+ |> monitor["check"](
59+ data: check,
60+ messageFn: messageFn,
61+ crit: trigger,
62+ )
63+ |> monitor["notify"](data: notification, endpoint: http.endpoint(url: "${ data . url } ")(
64+ mapFn: (r) => {
65+ body = {r with _version: 1}
66+ return {headers: {${ _headers } }, data: json.encode(v: body)}
67+ }))
68+ `
5369 return out
5470 } ,
5571 generateTestQuery : data => {
5672 const headers = [ [ '"Content-Type"' , '"application/json"' ] ]
73+ let prefixSecrets = ''
5774
5875 if ( data . auth === 'basic' ) {
59- headers . push ( [
60- 'Authorization' ,
61- `http.basicAuth(u:"${ data . username } ", p:"${ data . password } ")` ,
62- ] )
76+ headers . push ( [ 'Authorization' , 'auth' ] )
77+ prefixSecrets = `
78+ username = secrets.get(key: "${ data . username } ")
79+ password = secrets.get(key: "${ data . password } ")
80+ auth = http.basicAuth(u: username, p: password)
81+ `
6382 }
6483
6584 if ( data . auth === 'bearer' ) {
66- headers . push ( [ 'Authorization' , `"Bearer ${ data . token } "` ] )
85+ headers . push ( [ 'Authorization' , `"Bearer \${token}"` ] )
86+ prefixSecrets = `
87+ token = secrets.get(key: "${ data . token } ")
88+ `
6789 }
6890
6991 const _headers = headers
@@ -73,14 +95,16 @@ export default register => {
7395 } , [ ] )
7496 . join ( ', ' )
7597
76- return `http.post(
77- url: "${ data . url } ",
78- headers: {${ _headers } },
79- data: json.encode(v: { msg: "${ TEST_NOTIFICATION } "})
80- )
81-
82- array.from(rows: [{value: 0}])
83- |> yield(name: "ignore")`
98+ return `
99+ ${ prefixSecrets }
100+ http.post(
101+ url: "${ data . url } ",
102+ headers: {${ _headers } },
103+ data: json.encode(v: { msg: "${ TEST_NOTIFICATION } "})
104+ )
105+ array.from(rows: [{value: 0}])
106+ |> yield(name: "ignore")
107+ `
84108 } ,
85109 } )
86110}
0 commit comments