difftreelog
fix post secret management refactor
in: trunk
3 files changed
cmds/fleet/src/cmds/secrets/mod.rsdiffbeforeafterboth6};6};7use anyhow::{anyhow, bail, ensure, Context, Result};7use anyhow::{anyhow, bail, ensure, Context, Result};8use chrono::{DateTime, Utc};8use chrono::{DateTime, Utc};9use clap::Parser;9use clap::{error::ErrorKind, Parser};10use crossterm::{terminal, tty::IsTty};11use itertools::Itertools;10use owo_colors::OwoColorize;12use owo_colors::OwoColorize;11use serde::Deserialize;13use serde::Deserialize;12use std::{14use std::{13 collections::{BTreeSet, HashSet},15 collections::{BTreeSet, HashSet},16 ffi::OsString,14 io::{self, Cursor, Read},17 io::{self, stdin, Cursor, Read, Write},15 path::PathBuf,18 path::PathBuf,16};19};17use tabled::{Table, Tabled};20use tabled::{Table, Tabled};21use tempfile::NamedTempFile;18use tokio::fs::read_to_string;22use tokio::{fs::read_to_string, process::Command};19use tracing::{error, info, info_span, warn, Instrument};23use tracing::{error, info, info_span, warn, Instrument};202421#[derive(Parser)]25#[derive(Parser)]586 {590 {587 Ok(v) => v,591 Ok(v) => v,588 Err(e) => {592 Err(e) => {589 error!("{e}");593 error!("{e:?}");590 continue;594 continue;591 }595 }592 };596 };cmds/fleet/src/host.rsdiffbeforeafterboth--- a/cmds/fleet/src/host.rs
+++ b/cmds/fleet/src/host.rs
@@ -385,7 +385,7 @@
let config_unchecked_field = nix_go!(fleet_field.unchecked.config);
let import = nix_go!(builtins_field.import);
- let overlays = nix_go!(fleet_field.overlays);
+ let overlays = nix_go!(config_unchecked_field.overlays);
let nixpkgs = nix_go!(fleet_field.nixpkgs | import);
let default_pkgs = nix_go!(nixpkgs(Obj {
modules/fleet/secrets.nixdiffbeforeafterboth--- a/modules/fleet/secrets.nix
+++ b/modules/fleet/secrets.nix
@@ -153,7 +153,7 @@
overlays = [
(final: prev: let
lib = final.lib;
- inherit (lib) strings;
+ inherit (lib) strings concatMap;
inherit (strings) escapeShellArgs;
in {
mkEncryptSecret = {
@@ -162,7 +162,7 @@
}:
prev.writeShellScript "encryptor" ''
#!/bin/sh
- exec ${rage}/bin/rage ${escapeShellArgs recipients} -e "$@"
+ exec ${rage}/bin/rage ${escapeShellArgs (concatMap (r: ["-r" r]) recipients)} -e "$@"
'';
# TODO: Move to fleet
# TODO: Merge both generators to one with consistent options syntax?
@@ -177,8 +177,12 @@
(prev.writeShellScript "impureGenerator.sh" ''
#!/bin/sh
set -eu
- cd /var/empty
+ # TODO: Provide tempdir from outside, to make it securely erasurable as needed?
+ tmp=$(mktemp -d)
+ cd $tmp
+ # cd /var/empty
+
created_at=$(date -u +"%Y-%m-%dT%H:%M:%S.%NZ")
${script}