Ошибка команды errSecInternalComponent CodeSign с ненулевым кодом выхода 65 - PullRequest
0 голосов
/ 08 марта 2019

Бег cordova build ios --device --release оставляет меня с:

...

CodeSign /Users/birowsky/Library/Developer/Xcode/DerivedData/мојЧоек-eihflkqaiafhhrgatfbnarfxvrlb/Build/Intermediates.noindex/ArchiveIntermediates/мојЧоек/InstallationBuildProductsLocation/Applications/мојЧоек.app (in target: мојЧоек)
    cd /Users/birowsky/Desktop/the-real-frontend/cordova/platforms/ios
    export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate

Signing Identity:     "iPhone Developer: Daniel Popeski (29B4H8BSP5)"
Provisioning Profile: "iOS Team Provisioning Profile: com.gotaguydev"
                      (b127e78b-f124-4f9a-be66-2411c56b73b6)

    /usr/bin/codesign --force --sign 2DEE62DC0A8710012CE44EC751490177B7C2467D --entitlements /Users/birowsky/Library/Developer/Xcode/DerivedData/мојЧоек-eihflkqaiafhhrgatfbnarfxvrlb/Build/Intermediates.noindex/ArchiveIntermediates/мојЧоек/IntermediateBuildFilesPath/мојЧоек.build/Release-iphoneos/мојЧоек.build/мојЧоек.app.xcent --timestamp=none /Users/birowsky/Library/Developer/Xcode/DerivedData/мојЧоек-eihflkqaiafhhrgatfbnarfxvrlb/Build/Intermediates.noindex/ArchiveIntermediates/мојЧоек/InstallationBuildProductsLocation/Applications/мојЧоек.app
/Users/birowsky/Library/Developer/Xcode/DerivedData/мојЧоек-eihflkqaiafhhrgatfbnarfxvrlb/Build/Intermediates.noindex/ArchiveIntermediates/мојЧоек/InstallationBuildProductsLocation/Applications/мојЧоек.app: errSecInternalComponent
Command CodeSign failed with a nonzero exit code

** ARCHIVE FAILED **


The following build commands failed:
    CodeSign /Users/birowsky/Library/Developer/Xcode/DerivedData/мојЧоек-eihflkqaiafhhrgatfbnarfxvrlb/Build/Intermediates.noindex/ArchiveIntermediates/мојЧоек/InstallationBuildProductsLocation/Applications/мојЧоек.app
(1 failure)
xcodebuild: Command failed with exit code 65

Вот мой build.json:

{
  "ios": {
    "debug": {
      "developmentTeam": "ABCDEFGHIJKL",
      "codeSignIdentity": "iPhone Developer",
      "packageType": "development",
      "automaticProvisioning": true,
      "buildFlag": [
        "EMBEDDED_CONTENT_CONTAINS_SWIFT = YES",
        "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO",
        "LD_RUNPATH_SEARCH_PATHS = \"@executable_path/Frameworks\""
      ]
    },
    "release": {
      "codeSignIdentity": "iPhone Developer",
      "developmentTeam": "ABCDEFGHIJKL",
      "packageType": "app-store",
      "automaticProvisioning": true,
      "buildFlag": [
        "EMBEDDED_CONTENT_CONTAINS_SWIFT = YES",
        "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO",
        "LD_RUNPATH_SEARCH_PATHS = \"@executable_path/Frameworks\""
      ]
    }
  },
  "android": {
    "release": {
      "keystore": "./app-name-release-key.keystore",
      "storePassword": "Some password",
      "alias": "app-name",
      "password" : "Some other password"
    }
  }
}

Тот же проект успешно создается локально, но не на удаленном Mac Mini.

Я также должен отметить, что ранее в процессе сборки распечатывались эти вещи:

...

Build settings from command line:
    ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO
    CONFIGURATION_BUILD_DIR = /Users/birowsky/Desktop/the-real-frontend/cordova/platforms/ios/build/device
    EMBEDDED_CONTENT_CONTAINS_SWIFT =  YES
    LD_RUNPATH_SEARCH_PATHS =  "@executable_path/Frameworks"
    SHARED_PRECOMPS_DIR = /Users/birowsky/Desktop/the-real-frontend/cordova/platforms/ios/build/sharedpch

2019-03-07 20:48:00.501 xcodebuild[30466:1537327]  DVTPortal: Service '<DVTPortalViewDeveloperService: 0x7ff8de7c4510; action='viewDeveloper'>' encountered an unexpected result code from the portal ('1100')
2019-03-07 20:48:00.502 xcodebuild[30466:1537327]  DVTPortal: Error:
Error Domain=DVTPortalServiceErrorDomain Code=1100 "Your session has expired.  Please log in." UserInfo={payload=<CFBasicHash 0x7ff8de58ff70 [0x7fff968df8f0]>{type = mutable dict, count = 9,
entries =>
    0 : responseId = <CFString 0x7ff8de590e60 [0x7fff968df8f0]>{contents = "fcc5bc1e-b847-4eac-af05-b531e2a363ac"}
    2 : <CFString 0x7fff9693fc58 [0x7fff968df8f0]>{contents = "protocolVersion"} = QH65B2
    3 : <CFString 0x7ff8de590d40 [0x7fff968df8f0]>{contents = "requestUrl"} = <CFString 0x7ff8de590d80 [0x7fff968df8f0]>{contents = "https://developerservices2.apple.com/services/QH65B2/viewDeveloper.action"}
    6 : <CFString 0x7ff8de58b7c0 [0x7fff968df8f0]>{contents = "userLocale"} = en_US
    8 : resultCode = <CFNumber 0x1d87d3e108e998c3 [0x7fff968df8f0]>{value = +1100, type = kCFNumberSInt64Type}
    9 : userString = <CFString 0x7ff8de570bf0 [0x7fff968df8f0]>{contents = "Your session has expired.  Please log in."}
    10 : <CFString 0x7ff8de58c780 [0x7fff968df8f0]>{contents = "resultString"} = <CFString 0x7ff8de58b840 [0x7fff968df8f0]>{contents = "authentication.failed"}
    11 : httpCode = <CFNumber 0x1d87d3e108ed1cc3 [0x7fff968df8f0]>{value = +200, type = kCFNumberSInt64Type}
    12 : <CFString 0x7ff8de58b790 [0x7fff968df8f0]>{contents = "creationTimestamp"} = <CFString 0x7ff8de58ec20 [0x7fff968df8f0]>{contents = "2019-03-07T20:48:00Z"}
}
, NSLocalizedDescription=Your session has expired.  Please log in.}
2019-03-07 20:48:01.432 xcodebuild[30466:1537327]  DVTPortal: Service '<DVTPortalViewDeveloperService: 0x7ff8e10416b0; action='viewDeveloper'>' encountered an unexpected result code from the portal ('1100')
2019-03-07 20:48:01.432 xcodebuild[30466:1537327]  DVTPortal: Error:
Error Domain=DVTPortalServiceErrorDomain Code=1100 "Your session has expired.  Please log in." UserInfo={payload=<CFBasicHash 0x7ff8de7cbb70 [0x7fff968df8f0]>{type = mutable dict, count = 9,
entries =>
    0 : responseId = <CFString 0x7ff8de796b40 [0x7fff968df8f0]>{contents = "7327ecd9-8984-4c14-bc79-86c9908073e7"}
    2 : <CFString 0x7fff9693fc58 [0x7fff968df8f0]>{contents = "protocolVersion"} = QH65B2
    3 : <CFString 0x7ff8de780b80 [0x7fff968df8f0]>{contents = "requestUrl"} = <CFString 0x7ff8de78e740 [0x7fff968df8f0]>{contents = "https://developerservices2.apple.com/services/QH65B2/viewDeveloper.action"}
    6 : <CFString 0x7ff8de7c3c10 [0x7fff968df8f0]>{contents = "userLocale"} = en_US
    8 : resultCode = <CFNumber 0x1d87d3e108e998c3 [0x7fff968df8f0]>{value = +1100, type = kCFNumberSInt64Type}
    9 : userString = <CFString 0x7ff8de779120 [0x7fff968df8f0]>{contents = "Your session has expired.  Please log in."}
    10 : <CFString 0x7ff8de7bf760 [0x7fff968df8f0]>{contents = "resultString"} = <CFString 0x7ff8de7a2240 [0x7fff968df8f0]>{contents = "authentication.failed"}
    11 : httpCode = <CFNumber 0x1d87d3e108ed1cc3 [0x7fff968df8f0]>{value = +200, type = kCFNumberSInt64Type}
    12 : <CFString 0x7ff8de788470 [0x7fff968df8f0]>{contents = "creationTimestamp"} = <CFString 0x7ff8de78fc60 [0x7fff968df8f0]>{contents = "2019-03-07T20:48:01Z"}
}
, NSLocalizedDescription=Your session has expired.  Please log in.}
note: Using new build system
note: Planning build
note: Constructing build description
CreateBuildDirectory /Users/birowsky/Library/Developer/Xcode/DerivedData/мојЧоек-eihflkqaiafhhrgatfbnarfxvrlb/Build/Intermediates.noindex/ArchiveIntermediates/мојЧоек/IntermediateBuildFilesPath (in target: CordovaLib)
    cd /Users/birowsky/Desktop/the-real-frontend/cordova/platforms/ios/CordovaLib
    builtin-create-build-directory /Users/birowsky/Library/Developer/Xcode/DerivedData/мојЧоек-eihflkqaiafhhrgatfbnarfxvrlb/Build/Intermediates.noindex/ArchiveIntermediates/мојЧоек/IntermediateBuildFilesPath

...

Я также пытался очистить платформу с помощью: cordova clean ios, и вот что я получил:

Running command: xcodebuild -project мојЧоек.xcodeproj -configuration Debug -alltargets clean
note: Using new build system
error: Could not delete `/Users/birowsky/Desktop/the-real-frontend/cordova/platforms/ios/build` because it was not created by the build system.

** CLEAN FAILED **

xcodebuild: Command failed with exit code 65

1 Ответ

1 голос
/ 12 марта 2019

Нигде в оригинальном вопросе не упоминалось о ssh-соединении. Рад, что мы смогли это выяснить!

Из руководства Apple " Testing with Xcode ": Использование ssh с xcodebuild

Вызов xcodebuild из удаленного входа с помощью ssh (или из запуска demon) завершается ошибкой, если на хозяйничать.

Среда «Аква-сессия» создается при интерактивном входе в вашу систему MacOS как пользователь. Аква сеансы инициализируют инфраструктура интерактивной среды macOS; они требуются для того, чтобы иметь возможность запускать приложения MacOS. Чтобы быть более конкретным, используйте код Фреймворки пользовательского интерфейса (AppKit или UIKit) должны работать в сеансе Aqua. Из-за этого требования тестирование на macOS (а также тестирование на Симулятор, само приложение MacOS) требует сеанса Aqua

Есть три варианта:

  1. Использовать Xcode Server с ботами Xcode - Apple поддерживает и рекомендует вариант
  2. Использовать сеанс Aqua с CI сервером
  3. Разблокируйте брелок с помощью security unlock-keychain и оступитесь до следующего выпуска.
...