git.delta.rocks / jrsonnet / refs/commits / 17bf21a48a36

difftreelog

refactor use z85

Yaroslav Bolyukin2021-09-18parent: #2fef068.patch.diff
in: trunk

5 files changed

modifiedsrc/cmds/build_systems.rsdiffbeforeafterboth
4747
48impl BuildSystems {48impl BuildSystems {
49 pub fn run(self, config: &Config) -> Result<()> {49 pub fn run(self, config: &Config) -> Result<()> {
50 println!("Build");
51 let hosts = config.list_hosts()?;50 let hosts = config.list_hosts()?;
5251
53 for host in hosts.iter() {52 for host in hosts.iter() {
76 ));75 ));
7776
78 if let Some(builders) = &self.builders {77 if let Some(builders) = &self.builders {
79 println!("Using builders: {}", builders);
80 nix_build.arg("--builders").arg(builders);78 nix_build.arg("--builders").arg(builders);
81 }79 }
82 if let Some(jobs) = &self.jobs {80 if let Some(jobs) = &self.jobs {
modifiedsrc/cmds/secrets/mod.rsdiffbeforeafterboth
56 let mut encryptor =56 let mut encryptor =
57 age::Encryptor::with_recipients(recipients).wrap_output(&mut encrypted)?;57 age::Encryptor::with_recipients(recipients).wrap_output(&mut encrypted)?;
58 io::copy(&mut Cursor::new(input), &mut encryptor)?;58 io::copy(&mut Cursor::new(input), &mut encryptor)?;
59 ascii85::encode(&encrypted)59 encryptor.finish()?;
60 encrypted
60 };61 };
6162
62 let mut data = config.data_mut();63 let mut data = config.data_mut();
63 if data.secret.contains_key(&name) && !force {64 if data.secrets.contains_key(&name) && !force {
64 bail!("secret already defined");65 bail!("secret already defined");
65 }66 }
66 data.secret.insert(67 data.secrets.insert(
67 name,68 name,
68 FleetSecret {69 FleetSecret {
69 owners: machines,70 owners: machines,
modifiedsrc/fleetdata.rsdiffbeforeafterboth
1use chrono::{DateTime, Utc};1use chrono::{DateTime, Utc};
2use serde::{Deserialize, Serialize};2use serde::{Deserialize, Deserializer, Serialize, Serializer};
3use std::collections::BTreeMap;3use std::collections::BTreeMap;
44
5#[derive(Serialize, Deserialize, Default)]5#[derive(Serialize, Deserialize, Default)]
16 pub hosts: BTreeMap<String, HostData>,16 pub hosts: BTreeMap<String, HostData>,
17 #[serde(default)]17 #[serde(default)]
18 #[serde(skip_serializing_if = "BTreeMap::is_empty")]18 #[serde(skip_serializing_if = "BTreeMap::is_empty")]
19 pub secret: BTreeMap<String, FleetSecret>,19 pub secrets: BTreeMap<String, FleetSecret>,
20}20}
2121
22#[derive(Serialize, Deserialize)]22#[derive(Serialize, Deserialize)]
28 pub expire_at: Option<DateTime<Utc>>,28 pub expire_at: Option<DateTime<Utc>>,
29 #[serde(skip_serializing_if = "Option::is_none")]29 #[serde(skip_serializing_if = "Option::is_none")]
30 pub public: Option<String>,30 pub public: Option<String>,
31 #[serde(serialize_with = "as_z85", deserialize_with = "from_z85")]
31 pub secret: String,32 pub secret: Vec<u8>,
32}33}
34
35fn as_z85<S>(key: &[u8], serializer: S) -> Result<S::Ok, S::Error>
36where
37 S: Serializer,
38{
39 serializer.serialize_str(&z85::encode(&key))
40}
41
42fn from_z85<'de, D>(deserializer: D) -> Result<Vec<u8>, D::Error>
43where
44 D: Deserializer<'de>,
45{
46 use serde::de::Error;
47 String::deserialize(deserializer)
48 .and_then(|string| z85::decode(&string).map_err(|err| Error::custom(err.to_string())))
49}
3350
modifiedsrc/host.rsdiffbeforeafterboth
69 str.push("#");69 str.push("#");
70 str.push(attr_name);70 str.push(attr_name);
71
72 println!("{:?}", str);
73 str71 str
74 }72 }
7573
deletedsrc/nixlike.rsdiffbeforeafterboth

no syntactic changes