Skip to content

Commit ee53f45

Browse files
committed
add back as_get
1 parent f879b86 commit ee53f45

File tree

3 files changed

+34
-9
lines changed

3 files changed

+34
-9
lines changed

dsc/src/args.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,8 @@ pub enum ConfigSubCommand {
103103
#[clap(short = 'f', long, help = "The output format to use")]
104104
format: Option<OutputFormat>,
105105
#[clap(long, hide = true)]
106+
as_get: bool,
107+
#[clap(long, hide = true)]
106108
as_test: bool,
107109
},
108110
#[clap(name = "validate", about = "Validate the current configuration", hide = true)]

dsc/src/subcommand.rs

Lines changed: 31 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,23 @@ use crate::resolve::{get_contents, Include};
66
use crate::resource_command::{get_resource, self};
77
use crate::tablewriter::Table;
88
use crate::util::{DSC_CONFIG_ROOT, EXIT_DSC_ERROR, EXIT_INVALID_ARGS, EXIT_INVALID_INPUT, EXIT_JSON_ERROR, get_schema, write_output, get_input, set_dscconfigroot, validate_json};
9-
use dsc_lib::configure::{Configurator, config_doc::{Configuration, ExecutionKind, Resource}};
10-
use dsc_lib::dscerror::DscError;
11-
use dsc_lib::dscresources::invoke_result::{ResolveResult, TestResult};
129
use dsc_lib::{
10+
configure::{
11+
config_doc::{
12+
Configuration,
13+
ExecutionKind,
14+
Resource,
15+
},
16+
config_result::ResourceGetResult,
17+
Configurator,
18+
},
19+
dscerror::DscError,
1320
DscManager,
14-
dscresources::invoke_result::ValidateResult,
21+
dscresources::invoke_result::{
22+
ResolveResult,
23+
TestResult,
24+
ValidateResult,
25+
},
1526
dscresources::dscresource::{Capability, ImplementedAs, Invoke},
1627
dscresources::resource_manifest::{import_manifest, ResourceManifest},
1728
};
@@ -93,7 +104,7 @@ pub fn config_set(configurator: &mut Configurator, format: &Option<OutputFormat>
93104
}
94105
}
95106

96-
pub fn config_test(configurator: &mut Configurator, format: &Option<OutputFormat>, as_group: &bool, as_test: &bool)
107+
pub fn config_test(configurator: &mut Configurator, format: &Option<OutputFormat>, as_group: &bool, as_get: &bool, as_test: &bool)
97108
{
98109
match configurator.invoke_test() {
99110
Ok(result) => {
@@ -134,6 +145,19 @@ pub fn config_test(configurator: &mut Configurator, format: &Option<OutputFormat
134145
}
135146
}
136147
}
148+
else if *as_get {
149+
let mut group_result = Vec::<ResourceGetResult>::new();
150+
for test_result in result.results {
151+
group_result.push(test_result.into());
152+
}
153+
match serde_json::to_string(&group_result) {
154+
Ok(json) => json,
155+
Err(err) => {
156+
error!("JSON Error: {err}");
157+
exit(EXIT_JSON_ERROR);
158+
}
159+
}
160+
}
137161
else {
138162
match serde_json::to_string(&(result.results)) {
139163
Ok(json) => json,
@@ -317,8 +341,8 @@ pub fn config(subcommand: &ConfigSubCommand, parameters: &Option<String>, mounte
317341
ConfigSubCommand::Set { format, .. } => {
318342
config_set(&mut configurator, format, as_group);
319343
},
320-
ConfigSubCommand::Test { format, as_test, .. } => {
321-
config_test(&mut configurator, format, as_group, as_test);
344+
ConfigSubCommand::Test { format, as_get, as_test, .. } => {
345+
config_test(&mut configurator, format, as_group, as_get, as_test);
322346
},
323347
ConfigSubCommand::Validate { document, path, format} => {
324348
let mut result = ValidateResult {

resources/apt/test/apt.tests.ps1

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@ Describe 'Apt resource tests' {
2828
Set-ItResult -Skip -Because "Apt not found"
2929
}
3030
$out = dsc -l trace config get -p $yamlPath 2> "$TestDrive/stderr.txt" | ConvertFrom-Json -Depth 10
31-
write-verbose -verbose (Get-Content "$TestDrive/stderr.txt" | Out-String)
32-
$LASTEXITCODE | Should -Be 0
31+
$LASTEXITCODE | Should -Be 0 -Because (Get-Content "$TestDrive/stderr.txt" | Out-String)
3332
$exists = $null -ne (Get-Command $pkgName -CommandType Application -ErrorAction Ignore)
3433
$observed = $out.results[1].result.actualState._exist
3534
$observed | Should -Be $exists

0 commit comments

Comments
 (0)