stage('Fortify TV-iOS') { when { beforeAgent true expression { env.BRANCH_NAME.contains('release/') || env.fortifyTV == 'true' } } agent { label agentName } steps { script { catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') { sh """ sudo xcode-select --switch /Applications/Xcode14.3.1.app/Contents/Developer export BUILDID="479_OTT-CLIENT.${ env.BRANCH_NAME.contains('release/') ? "development" : "development" }_${BUILD_NUMBER}" export URL=https://sast.turkcell.entp.tgc/ssc export FPR_PATH="${env.WORKSPACE}" export fortifyProjectKey="479_OTT-CLIENT.ios" export fortifyProjectVersionKey="${ env.BRANCH_NAME.contains('release/') ? "development" : "development" }" export AUTHTOKEN="e89e1fba-c66a-4187-a2d0-86bbeb11867d" /Applications/Fortify/Fortify_SCA_and_Apps/bin/sourceanalyzer -b \$BUILDID -clean if [ \$? -eq 0 ]; then /Applications/Fortify/Fortify_SCA_and_Apps/bin/sourceanalyzer -Xmx12G -b \$BUILDID -exclude “**/Pods/*” xcodebuild CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED="NO" CODE_SIGN_ENTITLEMENTS="" CODE_SIGNING_ALLOWED="NO" -workspace ${env.WORKSPACE}/TV.xcworkspace -scheme TV-iOS -allowProvisioningUpdates clean build else exit -1 fi /Applications/Fortify/Fortify_SCA_and_Apps/bin/sourceanalyzer -Xmx12G -b \$BUILDID -exclude “**/Pods/*” -scan -f \$FPR_PATH/\$BUILDID.fpr ls -alh ${env.WORKSPACE} | grep .fpr if [ \$? -eq 0 ]; then /Applications/Fortify/Fortify_SCA_and_Apps/bin/fortifyclient uploadFPR -file \$FPR_PATH/\$BUILDID.fpr -application \$fortifyProjectKey -applicationVersion \$fortifyProjectVersionKey -authtoken \$AUTHTOKEN -url \$URL else exit -1 fi """ } } } }