|
1 |
| -extern crate serde_json; |
2 | 1 | extern crate actions;
|
3 | 2 | extern crate libc;
|
| 3 | +extern crate serde_json; |
4 | 4 |
|
| 5 | +use actions::main as actionMain; |
| 6 | +use serde_json::{Error, Value}; |
| 7 | +use std::collections::HashMap; |
5 | 8 | use std::env;
|
6 |
| -use std::io::{self, Write, stdout, stderr}; |
7 | 9 | use std::fs::File;
|
| 10 | +use std::io::{self, stderr, stdout, Write}; |
8 | 11 | use std::os::unix::io::FromRawFd;
|
9 |
| -use std::collections::HashMap; |
10 |
| -use serde_json::{Value, Error}; |
11 |
| -use actions::main as actionMain; |
12 | 12 |
|
13 | 13 | fn main() {
|
14 |
| - let mut fd3 = unsafe { File::from_raw_fd(3)}; |
| 14 | + let mut fd3 = unsafe { File::from_raw_fd(3) }; |
15 | 15 | loop {
|
16 | 16 | let mut buffer = String::new();
|
17 | 17 | io::stdin().read_line(&mut buffer).unwrap();
|
18 |
| - let parsed_input:Result<HashMap<String,Value>,Error> = serde_json::from_str(&buffer); |
19 |
| - let mut payload:HashMap<String, Value> = HashMap::new(); |
| 18 | + let parsed_input: Result<HashMap<String, Value>, Error> = serde_json::from_str(&buffer); |
| 19 | + let mut payload: HashMap<String, Value> = HashMap::new(); |
20 | 20 | match parsed_input {
|
21 | 21 | Ok(n) => {
|
22 | 22 | for (key, val) in n {
|
23 | 23 | if key == "value" {
|
24 |
| - let mut unparsed_payload:Result<HashMap<String,Value>,Error> = serde_json::from_value(val); |
| 24 | + let mut unparsed_payload: Result<HashMap<String, Value>, Error> = |
| 25 | + serde_json::from_value(val); |
25 | 26 | match unparsed_payload {
|
26 | 27 | Ok(value) => payload = value,
|
27 | 28 | Err(err) => {
|
28 | 29 | eprintln!("Error parsing value json: {}", err);
|
29 |
| - continue |
| 30 | + continue; |
30 | 31 | }
|
31 | 32 | }
|
32 | 33 | } else {
|
33 | 34 | env::set_var(format!("__OW_{}", key.to_uppercase()), val.to_string());
|
34 | 35 | }
|
35 | 36 | }
|
36 | 37 | }
|
37 |
| - Err(e) =>{ |
| 38 | + Err(e) => { |
38 | 39 | eprintln!("Error: {}", e);
|
39 |
| - continue |
| 40 | + continue; |
40 | 41 | }
|
41 | 42 | }
|
42 |
| - |
43 |
| - match serde_json::to_string(&actionMain(payload)){ |
44 |
| - Ok(result) => { write!(&mut fd3, "{}\n", result).expect("Error writting on fd3");} |
45 |
| - Err(err) => { eprintln!("Error parsing resul value json: {}", err);} |
| 43 | + |
| 44 | + match serde_json::to_string(&actionMain(payload)) { |
| 45 | + Ok(result) => { |
| 46 | + writeln!(&mut fd3, "{}", result).expect("Error writing on fd3"); |
| 47 | + } |
| 48 | + Err(err) => { |
| 49 | + eprintln!("Error formatting result value json: {}", err); |
| 50 | + } |
46 | 51 | }
|
47 | 52 | stdout().flush().expect("Error flushing stdout");
|
48 | 53 | stderr().flush().expect("Error flushing stderr");
|
|
0 commit comments