Building Xcode project with Jenkins gives codesign error












1















I'm trying to build Xcode project with Jenkins. Project for Xcode generated by Unity Engine.
I am able to build this project directly from Xcode GUI, but when trying to build project through Jenkins i'm getting following error at the end of build:



Signing Identity:     "iPhone Developer: MyName MySurname (XXXXXXXXXX)"
Provisioning Profile: "iOS Team Provisioning Profile: *"
(XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX)

/usr/bin/codesign --force --sign 37DF6AF254E5A4856B1BA024D199DEE3CE596A58 --entitlements /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/myapplication.app.xcent --timestamp=none /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app
/Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app: errSecInternalComponent
Command CodeSign failed with a nonzero exit code

** BUILD FAILED **


The following build commands failed:
CodeSign /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app
(1 failure)
Build step 'Xcode' marked build as failure
Finished: FAILURE


I tried to reproduce following command in terminal, and it woked fine without any errors:



/usr/bin/codesign --force --sign 37DF6AF254E5A4856B1BA024D199DEE3CE596A58 --entitlements /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/myapplication.app.xcent --timestamp=none /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app


It asked me for my password two times(and same password specified in Jenkins job settings for Xcode), and finished without any errors.



Keychain i used to sign project is unlocked with: security unlock-keychain login.keychain



The question is - what could be the reason of following behavior? How can i solve this problem?



Thanks in advance!










share|improve this question



























    1















    I'm trying to build Xcode project with Jenkins. Project for Xcode generated by Unity Engine.
    I am able to build this project directly from Xcode GUI, but when trying to build project through Jenkins i'm getting following error at the end of build:



    Signing Identity:     "iPhone Developer: MyName MySurname (XXXXXXXXXX)"
    Provisioning Profile: "iOS Team Provisioning Profile: *"
    (XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX)

    /usr/bin/codesign --force --sign 37DF6AF254E5A4856B1BA024D199DEE3CE596A58 --entitlements /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/myapplication.app.xcent --timestamp=none /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app
    /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app: errSecInternalComponent
    Command CodeSign failed with a nonzero exit code

    ** BUILD FAILED **


    The following build commands failed:
    CodeSign /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app
    (1 failure)
    Build step 'Xcode' marked build as failure
    Finished: FAILURE


    I tried to reproduce following command in terminal, and it woked fine without any errors:



    /usr/bin/codesign --force --sign 37DF6AF254E5A4856B1BA024D199DEE3CE596A58 --entitlements /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/myapplication.app.xcent --timestamp=none /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app


    It asked me for my password two times(and same password specified in Jenkins job settings for Xcode), and finished without any errors.



    Keychain i used to sign project is unlocked with: security unlock-keychain login.keychain



    The question is - what could be the reason of following behavior? How can i solve this problem?



    Thanks in advance!










    share|improve this question

























      1












      1








      1








      I'm trying to build Xcode project with Jenkins. Project for Xcode generated by Unity Engine.
      I am able to build this project directly from Xcode GUI, but when trying to build project through Jenkins i'm getting following error at the end of build:



      Signing Identity:     "iPhone Developer: MyName MySurname (XXXXXXXXXX)"
      Provisioning Profile: "iOS Team Provisioning Profile: *"
      (XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX)

      /usr/bin/codesign --force --sign 37DF6AF254E5A4856B1BA024D199DEE3CE596A58 --entitlements /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/myapplication.app.xcent --timestamp=none /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app
      /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app: errSecInternalComponent
      Command CodeSign failed with a nonzero exit code

      ** BUILD FAILED **


      The following build commands failed:
      CodeSign /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app
      (1 failure)
      Build step 'Xcode' marked build as failure
      Finished: FAILURE


      I tried to reproduce following command in terminal, and it woked fine without any errors:



      /usr/bin/codesign --force --sign 37DF6AF254E5A4856B1BA024D199DEE3CE596A58 --entitlements /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/myapplication.app.xcent --timestamp=none /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app


      It asked me for my password two times(and same password specified in Jenkins job settings for Xcode), and finished without any errors.



      Keychain i used to sign project is unlocked with: security unlock-keychain login.keychain



      The question is - what could be the reason of following behavior? How can i solve this problem?



      Thanks in advance!










      share|improve this question














      I'm trying to build Xcode project with Jenkins. Project for Xcode generated by Unity Engine.
      I am able to build this project directly from Xcode GUI, but when trying to build project through Jenkins i'm getting following error at the end of build:



      Signing Identity:     "iPhone Developer: MyName MySurname (XXXXXXXXXX)"
      Provisioning Profile: "iOS Team Provisioning Profile: *"
      (XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX)

      /usr/bin/codesign --force --sign 37DF6AF254E5A4856B1BA024D199DEE3CE596A58 --entitlements /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/myapplication.app.xcent --timestamp=none /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app
      /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app: errSecInternalComponent
      Command CodeSign failed with a nonzero exit code

      ** BUILD FAILED **


      The following build commands failed:
      CodeSign /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app
      (1 failure)
      Build step 'Xcode' marked build as failure
      Finished: FAILURE


      I tried to reproduce following command in terminal, and it woked fine without any errors:



      /usr/bin/codesign --force --sign 37DF6AF254E5A4856B1BA024D199DEE3CE596A58 --entitlements /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/myapplication.app.xcent --timestamp=none /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app


      It asked me for my password two times(and same password specified in Jenkins job settings for Xcode), and finished without any errors.



      Keychain i used to sign project is unlocked with: security unlock-keychain login.keychain



      The question is - what could be the reason of following behavior? How can i solve this problem?



      Thanks in advance!







      ios xcode macos unity3d jenkins






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 28 '18 at 8:24









      NewJNewJ

      9910




      9910
























          1 Answer
          1






          active

          oldest

          votes


















          0














          Jenkins is SSHing into the box and not receiving access to your keychain. Jenkins needs to unlock the keychain before performing the build. It looks like you already understand how to unlock your keychain via password prompt. You need to have Jenkins perform the unlock without a prompt.



          Have Jenkins run the following before your build command:



          security unlock-keychain -p <YourPassword> ~/Library/Keychains/login.keychain



          If you'd rather not store the password in cleartext script area of your build, Jenkins offers various ways to store secrets and retrieve them as variables. Here's a decent write-up on doing that: https://support.cloudbees.com/hc/en-us/articles/203802500-Injecting-Secrets-into-Jenkins-Build-Jobs



          Alternatively:



          security unlock-keychain -p `cat ~/.file_with_your_password` ~/Library/Keychains/login.keychain ```





          share|improve this answer























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53515039%2fbuilding-xcode-project-with-jenkins-gives-codesign-error%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            Jenkins is SSHing into the box and not receiving access to your keychain. Jenkins needs to unlock the keychain before performing the build. It looks like you already understand how to unlock your keychain via password prompt. You need to have Jenkins perform the unlock without a prompt.



            Have Jenkins run the following before your build command:



            security unlock-keychain -p <YourPassword> ~/Library/Keychains/login.keychain



            If you'd rather not store the password in cleartext script area of your build, Jenkins offers various ways to store secrets and retrieve them as variables. Here's a decent write-up on doing that: https://support.cloudbees.com/hc/en-us/articles/203802500-Injecting-Secrets-into-Jenkins-Build-Jobs



            Alternatively:



            security unlock-keychain -p `cat ~/.file_with_your_password` ~/Library/Keychains/login.keychain ```





            share|improve this answer




























              0














              Jenkins is SSHing into the box and not receiving access to your keychain. Jenkins needs to unlock the keychain before performing the build. It looks like you already understand how to unlock your keychain via password prompt. You need to have Jenkins perform the unlock without a prompt.



              Have Jenkins run the following before your build command:



              security unlock-keychain -p <YourPassword> ~/Library/Keychains/login.keychain



              If you'd rather not store the password in cleartext script area of your build, Jenkins offers various ways to store secrets and retrieve them as variables. Here's a decent write-up on doing that: https://support.cloudbees.com/hc/en-us/articles/203802500-Injecting-Secrets-into-Jenkins-Build-Jobs



              Alternatively:



              security unlock-keychain -p `cat ~/.file_with_your_password` ~/Library/Keychains/login.keychain ```





              share|improve this answer


























                0












                0








                0







                Jenkins is SSHing into the box and not receiving access to your keychain. Jenkins needs to unlock the keychain before performing the build. It looks like you already understand how to unlock your keychain via password prompt. You need to have Jenkins perform the unlock without a prompt.



                Have Jenkins run the following before your build command:



                security unlock-keychain -p <YourPassword> ~/Library/Keychains/login.keychain



                If you'd rather not store the password in cleartext script area of your build, Jenkins offers various ways to store secrets and retrieve them as variables. Here's a decent write-up on doing that: https://support.cloudbees.com/hc/en-us/articles/203802500-Injecting-Secrets-into-Jenkins-Build-Jobs



                Alternatively:



                security unlock-keychain -p `cat ~/.file_with_your_password` ~/Library/Keychains/login.keychain ```





                share|improve this answer













                Jenkins is SSHing into the box and not receiving access to your keychain. Jenkins needs to unlock the keychain before performing the build. It looks like you already understand how to unlock your keychain via password prompt. You need to have Jenkins perform the unlock without a prompt.



                Have Jenkins run the following before your build command:



                security unlock-keychain -p <YourPassword> ~/Library/Keychains/login.keychain



                If you'd rather not store the password in cleartext script area of your build, Jenkins offers various ways to store secrets and retrieve them as variables. Here's a decent write-up on doing that: https://support.cloudbees.com/hc/en-us/articles/203802500-Injecting-Secrets-into-Jenkins-Build-Jobs



                Alternatively:



                security unlock-keychain -p `cat ~/.file_with_your_password` ~/Library/Keychains/login.keychain ```






                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Jan 15 at 17:39









                lance.dolanlance.dolan

                882916




                882916
































                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53515039%2fbuilding-xcode-project-with-jenkins-gives-codesign-error%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    A CLEAN and SIMPLE way to add appendices to Table of Contents and bookmarks

                    Calculate evaluation metrics using cross_val_predict sklearn

                    Insert data from modal to MySQL (multiple modal on website)