From 7703939be19eca56855c12153c0be25962af29b8 Mon Sep 17 00:00:00 2001 From: Ruud Senden <8635138+rsenden@users.noreply.github.com> Date: Wed, 14 Aug 2024 13:54:25 +0200 Subject: [PATCH] chore: `fcli fod mast-scan start` fixes fix: `fcli fod mast-scan start`: Add `--platform` option as required by current FoD API fix: `fcli fod mast-scan start`: Fix description for `--file` option --- .../fod/_common/scan/helper/mobile/FoDScanMobileHelper.java | 1 + .../_common/scan/helper/mobile/FoDScanMobileStartRequest.java | 1 + .../cli/fod/mast_scan/cli/cmd/FoDMastScanStartCommand.java | 4 ++++ .../resources/com/fortify/cli/fod/i18n/FoDMessages.properties | 3 ++- 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/fcli-core/fcli-fod/src/main/java/com/fortify/cli/fod/_common/scan/helper/mobile/FoDScanMobileHelper.java b/fcli-core/fcli-fod/src/main/java/com/fortify/cli/fod/_common/scan/helper/mobile/FoDScanMobileHelper.java index f10eecef49..221e53ef83 100644 --- a/fcli-core/fcli-fod/src/main/java/com/fortify/cli/fod/_common/scan/helper/mobile/FoDScanMobileHelper.java +++ b/fcli-core/fcli-fod/src/main/java/com/fortify/cli/fod/_common/scan/helper/mobile/FoDScanMobileHelper.java @@ -43,6 +43,7 @@ public static final FoDScanDescriptor startScan(UnirestInstance unirest, IProgre .queryString("startDate", (req.getStartDate())) .queryString("assessmentTypeId", req.getAssessmentTypeId()) .queryString("frameworkType", req.getFrameworkType()) + .queryString("platformType", req.getPlatformType()) .queryString("timeZone", req.getTimeZone()) .queryString("entitlementFrequencyType", req.getEntitlementFrequencyType()); diff --git a/fcli-core/fcli-fod/src/main/java/com/fortify/cli/fod/_common/scan/helper/mobile/FoDScanMobileStartRequest.java b/fcli-core/fcli-fod/src/main/java/com/fortify/cli/fod/_common/scan/helper/mobile/FoDScanMobileStartRequest.java index f827cce0eb..457f7a04f3 100644 --- a/fcli-core/fcli-fod/src/main/java/com/fortify/cli/fod/_common/scan/helper/mobile/FoDScanMobileStartRequest.java +++ b/fcli-core/fcli-fod/src/main/java/com/fortify/cli/fod/_common/scan/helper/mobile/FoDScanMobileStartRequest.java @@ -35,6 +35,7 @@ public class FoDScanMobileStartRequest { private String timeZone; private String frameworkType; + private String platformType; private Boolean isRemediationScan; //private Boolean isBundledAssessment; //private Integer parentAssessmentTypeId; diff --git a/fcli-core/fcli-fod/src/main/java/com/fortify/cli/fod/mast_scan/cli/cmd/FoDMastScanStartCommand.java b/fcli-core/fcli-fod/src/main/java/com/fortify/cli/fod/mast_scan/cli/cmd/FoDMastScanStartCommand.java index d889ca9269..dc24865898 100644 --- a/fcli-core/fcli-fod/src/main/java/com/fortify/cli/fod/mast_scan/cli/cmd/FoDMastScanStartCommand.java +++ b/fcli-core/fcli-fod/src/main/java/com/fortify/cli/fod/mast_scan/cli/cmd/FoDMastScanStartCommand.java @@ -60,6 +60,9 @@ public class FoDMastScanStartCommand extends AbstractFoDScanStartCommand { private enum MobileFrameworks { iOS, Android } @Option(names = {"--framework"}, required = true) private MobileFrameworks mobileFramework; + private enum MobilePlatforms { Phone, Tablet, Both } + @Option(names = {"--platform"}, required = true) + private MobilePlatforms mobilePlatform; @Option(names = {"--timezone"}) private String timezone; @Option(names = {"--start-date"}) @@ -144,6 +147,7 @@ protected FoDScanDescriptor startScan(UnirestInstance unirest, FoDReleaseDescrip .entitlementFrequencyType(entitlementFrequencyTypeMixin.getEntitlementFrequencyType().name()) .timeZone(timeZoneToUse) .frameworkType(mobileFramework.name()) + .platformType(mobilePlatform.name()) .scanMethodType("Other") .notes(notes != null && !notes.isEmpty() ? notes : "") .scanTool(fcliProperties.getProperty("projectName", "fcli")) diff --git a/fcli-core/fcli-fod/src/main/resources/com/fortify/cli/fod/i18n/FoDMessages.properties b/fcli-core/fcli-fod/src/main/resources/com/fortify/cli/fod/i18n/FoDMessages.properties index 5cb9607d72..3e506a7a40 100644 --- a/fcli-core/fcli-fod/src/main/resources/com/fortify/cli/fod/i18n/FoDMessages.properties +++ b/fcli-core/fcli-fod/src/main/resources/com/fortify/cli/fod/i18n/FoDMessages.properties @@ -702,8 +702,9 @@ fcli.fod.mast-scan.start.assessment-type = The type of MAST assessment to carry fcli.fod.mast-scan.start.entitlement-id = ${fcli.fod.sast-scan.start.entitlement-id} fcli.fod.mast-scan.start.entitlement-frequency = The Entitlement Frequency to use. Valid values: ${COMPLETION-CANDIDATES}. fcli.fod.mast-scan.start.notes = ${fcli.fod.sast-scan.start.notes} -fcli.fod.mast-scan.start.file = ${fcli.fod.sast-scan.start.file} +fcli.fod.mast-scan.start.file = Absolute path of the mobile application file to upload, for example .apk or .ipa file. See FoD documentation for supported file types and packaging instructions. fcli.fod.mast-scan.start.framework = The Mobile Framework to use. Valid values: ${COMPLETION-CANDIDATES}. +fcli.fod.mast-scan.start.platform = The Mobile Platform to use. Valid values: ${COMPLETION-CANDIDATES}. fcli.fod.mast-scan.start.timezone = The timezone to use for starting the scan - default is UTC. Use 'fod rest lookup TimeZones' to see the values. fcli.fod.mast-scan.import.usage.header = Import existing MAST scan results (from an FPR file). fcli.fod.mast-scan.import.usage.description = As FoD doesn't return a scan id for imported scans, the output of this command cannot be used with commands that expect a scan id, like the wait-for command.