@@ -3,7 +3,7 @@ use std::{collections::HashMap, fs};
33use anyhow:: { Context , ensure} ;
44use cert_ext:: CertExt ;
55use clap:: Parser ;
6- use cli_args:: Cli ;
6+ use cli_args:: { Cli , GeneratePkcs12 } ;
77use openssl:: x509:: X509 ;
88use stackable_secret_operator_utils:: pkcs12:: pkcs12_truststore;
99use tracing:: { info, level_filters:: LevelFilter , warn} ;
@@ -25,7 +25,15 @@ pub fn main() -> anyhow::Result<()> {
2525
2626 let cli = Cli :: parse ( ) ;
2727
28- let certificate_sources = cli. certificate_sources ( ) ;
28+ match cli {
29+ Cli :: GeneratePkcs12Truststore ( cli_args) => generate_pkcs12_truststore ( cli_args) ?,
30+ }
31+
32+ Ok ( ( ) )
33+ }
34+
35+ fn generate_pkcs12_truststore ( cli_args : GeneratePkcs12 ) -> anyhow:: Result < ( ) > {
36+ let certificate_sources = cli_args. certificate_sources ( ) ;
2937 ensure ! (
3038 !certificate_sources. is_empty( ) ,
3139 "The list of certificate sources can not be empty. Please provide at least on --pem or --pkcs12."
@@ -79,12 +87,12 @@ pub fn main() -> anyhow::Result<()> {
7987 }
8088
8189 let pkcs12_truststore_bytes =
82- pkcs12_truststore ( certificates. values ( ) . map ( |c| & * * c) , & cli . out_password )
90+ pkcs12_truststore ( certificates. values ( ) . map ( |c| & * * c) , & cli_args . out_password )
8391 . context ( "failed to create PKCS12 truststore from certificates" ) ?;
84- fs:: write ( & cli . out , & pkcs12_truststore_bytes) . with_context ( || {
92+ fs:: write ( & cli_args . out , & pkcs12_truststore_bytes) . with_context ( || {
8593 format ! (
8694 "failed to write to output PKCS12 truststore at {:?}" ,
87- cli . out
95+ cli_args . out
8896 )
8997 } ) ?;
9098
0 commit comments