{"action":"created","issue":{"url":"https://api.github.com/repos/fastlane/fastlane/issues/7133","repository_url":"https://api.github.com/repos/fastlane/fastlane","labels_url":"https://api.github.com/repos/fastlane/fastlane/issues/7133/labels{/name}","comments_url":"https://api.github.com/repos/fastlane/fastlane/issues/7133/comments","events_url":"https://api.github.com/repos/fastlane/fastlane/issues/7133/events","html_url":"https://github.com/fastlane/fastlane/issues/7133","id":191033171,"number":7133,"title":"[Match] Reusing manually generated certificates and provisioning ","user":{"login":"beloso","id":450923,"avatar_url":"https://avatars.githubusercontent.com/u/450923?v=3","gravatar_id":"","url":"https://api.github.com/users/beloso","html_url":"https://github.com/beloso","followers_url":"https://api.github.com/users/beloso/followers","following_url":"https://api.github.com/users/beloso/following{/other_user}","gists_url":"https://api.github.com/users/beloso/gists{/gist_id}","starred_url":"https://api.github.com/users/beloso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/beloso/subscriptions","organizations_url":"https://api.github.com/users/beloso/orgs","repos_url":"https://api.github.com/users/beloso/repos","events_url":"https://api.github.com/users/beloso/events{/privacy}","received_events_url":"https://api.github.com/users/beloso/received_events","type":"User","site_admin":false},"labels":[{"id":315718149,"url":"https://api.github.com/repos/fastlane/fastlane/labels/match","name":"match","color":"fad8c7","default":false},{"id":389827016,"url":"https://api.github.com/repos/fastlane/fastlane/labels/waiting-for-reply","name":"waiting-for-reply","color":"ededed","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2016-11-22T15:11:11Z","updated_at":"2017-01-21T19:11:11Z","closed_at":null,"body":"### New Issue Checklist\r\n\r\n- [x] Updated fastlane to the latest version\r\n- [x] I have read the [Contribution Guidelines](https://github.com/fastlane/fastlane/blob/master/CONTRIBUTING.md)\r\n\r\n### Issue Description\r\n\r\n##### Complete output when running fastlane, including the stack trace and command used\r\n```\r\n$ match development\r\n[14:52:35]: Successfully loaded '/Users/tveloso/Developer/redacted-ios-game/fastlane/Matchfile' 📄\r\n\r\n+----------------+------------------------------------------------------------------+\r\n|                    Detected Values from './fastlane/Matchfile'                    |\r\n+----------------+------------------------------------------------------------------+\r\n| git_url        | git@gitlab.redacted.com:ios/redacted-ios-certificates.git        |\r\n| type           | development                                                      |\r\n| app_identifier | [\"com.redacted.app.ios\", \"com.redacted.app.ios.debug\"] |\r\n| username       | ios@redacted.com                                                 |\r\n+----------------+------------------------------------------------------------------+\r\n\r\n\r\n+-----------------------+------------------------------------------------------------------+\r\n|                                 Summary for match 0.11.0                                 |\r\n+-----------------------+------------------------------------------------------------------+\r\n| git_url               | git@gitlab.redacted.com:ios/redacted-ios-certificates.git        |\r\n| type                  | development                                                      |\r\n| app_identifier        | [\"com.redacted.app.ios\", \"com.redacted.app.ios.debug\"] |\r\n| username              | ios@redacted.com                                                 |\r\n| git_branch            | master                                                           |\r\n| keychain_name         | login.keychain                                                   |\r\n| readonly              | false                                                            |\r\n| team_id               | <<TEAM ID>>                                                      |\r\n| team_name             | redacted S.A.                                                    |\r\n| verbose               | false                                                            |\r\n| force                 | false                                                            |\r\n| skip_confirmation     | false                                                            |\r\n| shallow_clone         | false                                                            |\r\n| force_for_new_devices | false                                                            |\r\n| skip_docs             | false                                                            |\r\n+-----------------------+------------------------------------------------------------------+\r\n\r\n[14:52:35]: Cloning remote git repo...\r\n[14:52:36]: 🔓  Successfully decrypted certificates repo\r\n[14:52:36]: Verifying that the certificate and profile are still valid on the Dev Portal...\r\n[14:52:40]: Couldn't find a valid code signing identity in the git repo for development... creating one for you now\r\n\r\n+---------------+----------------------------------------------------+\r\n|                       Summary for cert 1.4.4                       |\r\n+---------------+----------------------------------------------------+\r\n| development   | true                                               |\r\n| force         | true                                               |\r\n| username      | ios@redacted.com                                     |\r\n| team_id       | <<TEAM ID>>                                          |\r\n| team_name     | redacted S.A.                                        |\r\n| keychain_path | /Users/tveloso/Library/Keychains/login.keychain-db |\r\n+---------------+----------------------------------------------------+\r\n\r\n[14:52:40]: Starting login with user 'ios@redacted.com'\r\n[14:52:42]: Successfully logged in\r\n[14:52:48]: Successfully generated L8E~~~~GD3 which was imported to the local machine.\r\n[14:52:50]: Verifying the certificate is properly installed locally...\r\n[14:52:50]: Successfully installed certificate L8E~~~~GD3\r\n\r\n+-------------------------------------+---------------------------------------------+\r\n|                              Summary for sigh 1.11.2                              |\r\n+-------------------------------------+---------------------------------------------+\r\n| app_identifier                      | com.redacted.app.ios                   |\r\n| username                            | ios@redacted.com                              |\r\n| force                               | true                                        |\r\n| cert_id                             | L8E~~~~GD3                                  |\r\n| provisioning_name                   | match Development com.redacted.app.ios |\r\n| ignore_profiles_with_different_name | true                                        |\r\n| team_id                             | <<TEAM ID>>                                  |\r\n| development                         | true                                        |\r\n| adhoc                               | false                                       |\r\n| skip_install                        | false                                       |\r\n| team_name                           | redacted S.A.                                 |\r\n| skip_fetch_profiles                 | false                                       |\r\n| skip_certificate_verification       | false                                       |\r\n+-------------------------------------+---------------------------------------------+\r\n\r\n[14:52:51]: Starting login with user 'ios@redacted.com'\r\n[14:52:53]: Successfully logged in\r\n[14:52:53]: Fetching profiles...\r\n[14:52:53]: No existing profiles found, that match the certificates you have installed locally! Creating a new provisioning profile for you\r\n[14:52:58]: Creating new provisioning profile for 'com.redacted.app.ios' with name 'match Development com.redacted.app.ios'\r\n[14:53:02]: An error occured while verifying your certificates and profiles with the Apple Developer Portal.\r\n[14:53:02]: If you already have your certificates stored in git, you can run `match` in readonly mode\r\n[14:53:02]: to just install the certificates and profiles without accessing the Dev Portal.\r\n[14:53:02]: To do so, just pass `readonly: true` to your match call.\r\n[14:53:02]: 🔒  Successfully encrypted certificates repo\r\n\r\nLooking for related GitHub issues on fastlane/fastlane...\r\n\r\nFound no similar issues. To create a new issue, please visit:\r\nhttps://github.com/fastlane/fastlane/issues/new\r\n\r\nRun `fastlane env` to append the fastlane environment to your issue\r\n\r\n[!] Apple provided the following error info:\r\n\tYou are not permitted to create provisioning profiles for team.  Please contact one of your team admins, who can create a profile on your behalf.\r\n```\r\n\r\n### Environment\r\n\r\n<details><summary>✅ fastlane environment ✅</summary>\r\n\r\n### Stack\r\n\r\n| Key                 | Value                                             |\r\n| ------------------- | ------------------------------------------------- |\r\n| OS                  | 10.12.1                                           |\r\n| Ruby                | 2.2.3                                             |\r\n| Bundler?            | false                                             |\r\n| Git                 | git version 2.10.2                                |\r\n| Installation Source | /Users/tveloso/.rbenv/versions/2.2.3/bin/fastlane |\r\n| Host                | Mac OS X 10.12.1 (16B2555)                        |\r\n| Ruby Lib Dir        | /Users/tveloso/.rbenv/versions/2.2.3/lib          |\r\n| OpenSSL Version     | OpenSSL 1.0.2h  3 May 2016                        |\r\n| Is contained        | false                                             |\r\n| Xcode Path          | /Applications/Xcode.app/Contents/Developer/       |\r\n| Xcode Version       | 8.1                                               |\r\n\r\n\r\n### System Locale\r\n\r\n| Variable | Value       |   |\r\n| -------- | ----------- | - |\r\n| LANG     | en_US.UTF-8 | ✅ |\r\n| LC_ALL   | en_US.UTF-8 | ✅ |\r\n| LANGUAGE |             |   |\r\n\r\n\r\n### fastlane files:\r\n\r\n<details><summary>`./fastlane/Fastfile`</summary>\r\n\r\n```ruby\r\n# Customise this file, documentation can be found here:\r\n# https://github.com/KrauseFx/fastlane/tree/master/docs\r\n# All available actions: https://github.com/KrauseFx/fastlane/blob/master/docs/Actions.md\r\n# can also be listed using the `fastlane actions` command\r\n\r\n# Change the syntax highlighting to Ruby\r\n# All lines starting with a # are ignored when running `fastlane`\r\n\r\n# By default, fastlane will send which actions are used\r\n# No personal data is shared, more information on https://github.com/fastlane/enhancer\r\n# Uncomment the following line to opt out\r\n# opt_out_usage\r\n\r\n# If you want to automatically update fastlane if a new version is available:\r\n# update_fastlane\r\n\r\n# This is the minimum version number required.\r\n# Update this, if you use features of a newer version\r\n#fastlane_version \"1.85.0\"\r\n\r\ndefault_platform :ios\r\n\r\njenkins = is_ci?\r\n\r\nplatform :ios do\r\n  before_all do\r\n    ENV['SLACK_URL'] = \"https://hooks.slack.com/services/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\"\r\n    bundle_install(\r\n    quiet: true\r\n    )\r\n    cocoapods(\r\n    repo_update: true,\r\n    silent: true\r\n    )\r\n\r\n    test_and_build_app(\r\n    scheme:'Debug'\r\n    )\r\n    code_metrics(\r\n    scheme:'Debug'\r\n    )\r\n  end\r\n    \r\n  desc \"Local build\"\r\n  lane :local do\r\n    \r\n  end\r\n\r\n  desc \"Lane for a git lab merge request\"\r\n  lane :gitlab do\r\n    \r\n  end\r\n\r\n  desc \"Submit a new Beta Build to Fabric Crashlytics\"\r\n  lane :inhouse do |options|\r\n                \r\n    bump_version\r\n    \r\n    badge_icon\r\n    \r\n    archive_and_distribute(\r\n    test_group: options[:distribute]\r\n    )\r\n  end\r\n  \r\n  lane :beta do |options|\r\n                \r\n    bump_version\r\n    \r\n    gym(\r\n    scheme: 'AppStore',\r\n    clean: true,\r\n    output_name: 'redacted.ipa',\r\n    derived_data_path: 'build',\r\n    export_team_id: '<<TEAM ID>>',\r\n    export_method: 'app-store'\r\n    )\r\n    \r\n    testflight\r\n      \r\n  end\r\n  \r\n  desc \"Lane to generate archives for UI automation tests\"\r\n  lane :automation do |options|\r\n    \r\n    gym(\r\n    scheme: 'Automation',\r\n    output_name: 'redacted-Automation.ipa',\r\n    derived_data_path: 'build',\r\n    export_team_id: '<<TEAM ID>>',\r\n    export_method: 'development'\r\n    )\r\n  end\r\n  \r\n  private_lane :test_and_build_app do |options|\r\n    \r\n    scheme = options[:scheme]\r\n    \r\n    clear_derived_data(\r\n    derived_data_path: 'build'\r\n    )\r\n    \r\n    scan(\r\n    skip_slack: !jenkins,\r\n    scheme: scheme,\r\n    clean: true,\r\n    derived_data_path: 'build',\r\n    output_types: jenkins ? 'junit,json-compilation-database' : 'html,json-compilation-database',\r\n    use_clang_report_name: true,\r\n    device: 'iPhone 6s'\r\n    )\r\n        \r\n  end\r\n  \r\n  private_lane :archive_and_distribute do |options|\r\n    \r\n    archive\r\n    \r\n    if (options[:test_group])\r\n      \r\n      distribute(\r\n      test_group: options[:test_group]\r\n      )\r\n    end \r\n  end\r\n  \r\n  private_lane :badge_icon do\r\n        \r\n    badge(\r\n    dark: true\r\n    )\r\n  end\r\n\r\n  private_lane :code_metrics do |options|\r\n    \r\n    scheme = options[:scheme]\r\n    \r\n    cloc(\r\n    output_directory: 'reports',\r\n    source_directory: 'redacted/Classes'\r\n    )\r\n    \r\n    slather(\r\n    build_directory: 'build',\r\n    scheme: scheme,\r\n    jenkins: jenkins,\r\n    cobertura_xml: jenkins,\r\n    simple_output: !jenkins\r\n    )    \r\n\r\n    # oclint(\r\n    # compile_commands: 'reports/compile_commands.json',\r\n    # select_regex: /redacted\\/Classes/,               # Select all files matching this reqex\r\n    # report_type: jenkins ? 'pmd' : 'html',\r\n    # report_path: jenkins ? 'reports/oclint.pmd' : 'reports/oclint.html',\r\n    # max_priority_1: 1000,\r\n    # max_priority_2: 2000,\r\n    # max_priority_3: 3000,\r\n    # thresholds: [                         # Override the default behavior of rules\r\n    #     'LONG_LINE=120',\r\n    #     'LONG_METHOD=100',\r\n    #     'NCSS_METHOD=60',\r\n    #     'MINIMUM_CASES_IN_SWITCH=1'\r\n    #     ]\r\n    # )\r\n    \r\n  end\r\n  \r\n  private_lane :archive do |options|\r\n    \r\n    gym(\r\n    derived_data_path: 'build'\r\n    )\r\n    \r\n    if jenkins\r\n      slack(\r\n      message: 'IPA file created with success!!!'\r\n      )\r\n    end\r\n  end\r\n  \r\n  private_lane :distribute do |options|\r\n    \r\n    group = options[:test_group]\r\n    \r\n    changelog = 'Minor bugfixes'\r\n    unless ENV['GIT_PREVIOUS_SUCCESSFUL_COMMIT'].nil? || ENV['GIT_COMMIT'].nil?\r\n      changelog_from_git_commits(\r\n      between: [ENV['GIT_PREVIOUS_SUCCESSFUL_COMMIT'], ENV['GIT_COMMIT']],\r\n      pretty: '[%h] - %s',\r\n      merge_commit_filtering: 'exclude_merges'\r\n      )\r\n      \r\n      changelog = lane_context[SharedValues::FL_CHANGELOG]\r\n    end\r\n      \r\n    crashlytics(\r\n    crashlytics_path: './Pods/Crashlytics', # path to your 'Crashlytics.framework'\r\n    api_token: '0780960b23f2bcf406212a9af5876f6cc6e77025',\r\n    build_secret: 'e309ebe287c7feabb278034fe606e4f1d3c417403296229f92f6dfed8cc693a7',\r\n    ipa_path: \"dist/redacted.ipa\",\r\n    groups: group,\r\n    notes: changelog\r\n    )\r\n   \r\n    if jenkins\r\n      slack( message: \"Distributed app to internal testers, rejoice!!\" ) \r\n    end \r\n  end\r\n\r\n  private_lane :bump_version do |options|\r\n        \r\n    build = ''\r\n    if jenkins\r\n      \r\n      build = ENV['BUILD_NUMBER']\r\n      \r\n    else\r\n      \r\n      build = 'SNAPSHOT'\r\n    end\r\n    \r\n    # if options[:version_number]\r\n    #   increment_version_number(\r\n    #   version_number: options[:version_number]\r\n    #   )\r\n    # else\r\n    #   increment_version_number(\r\n    #   bump_type: \"patch\"\r\n    #   )\r\n    # end\r\n    \r\n    increment_build_number(\r\n    build_number:\"#{build}\"\r\n    )\r\n    \r\n  end\r\n\r\n  # You can define as many lanes as you want\r\n\r\n  after_all do |lane|\r\n    # This block is called, only if the executed lane was successful\r\n    \r\n    uninstall_app(\r\n    app_identifier: 'com.redacted.client.app.debug'\r\n    )\r\n\r\n    # slack(\r\n    #   message: \"Successfully deployed new App Update.\"\r\n    # )\r\n  end\r\n\r\n  error do |lane, exception|\r\n    uninstall_app(\r\n    app_identifier: 'com.redacted.client.app.debug'\r\n    )\r\n    \r\n    if jenkins\r\n      slack(\r\n      message: exception.message,\r\n      success: false\r\n      )\r\n    end\r\n  end\r\nend\r\n\r\n# More information about multiple platforms in fastlane: https://github.com/KrauseFx/fastlane/blob/master/docs/Platforms.md\r\n# All available actions: https://github.com/KrauseFx/fastlane/blob/master/docs/Actions.md\r\n```\r\n</details>\r\n\r\n<details><summary>`./fastlane/Appfile`</summary>\r\n\r\n```ruby\r\napp_identifier \"com.redacted.app.ios\" # The bundle identifier of your app\r\napple_id \"ios@redacted.com\" # Your Apple email address\r\n\r\n# You can uncomment any of the lines below and add your own\r\n# team selection in case you're in multiple teams\r\nteam_name \"redacted S.A.\"\r\nteam_id \"<<TEAM ID>>\"\r\n\r\n# you can even provide different app identifiers, Apple IDs and team names per lane:\r\n# https://github.com/KrauseFx/fastlane/blob/master/docs/Appfile.md\r\n```\r\n</details>\r\n\r\n### fastlane gems\r\n\r\n| Gem                 | Version | Update-Status |\r\n| ------------------- | ------- | ------------- |\r\n| credentials_manager | 0.16.2  | ✅ Up-To-Date  |\r\n| fastlane_core       | 0.57.0  | ✅ Up-To-Date  |\r\n| spaceship           | 0.37.0  | ✅ Up-To-Date  |\r\n| deliver             | 1.15.1  | ✅ Up-To-Date  |\r\n| frameit             | 3.0.0   | ✅ Up-To-Date  |\r\n| pem                 | 1.4.0   | ✅ Up-To-Date  |\r\n| cert                | 1.4.4   | ✅ Up-To-Date  |\r\n| sigh                | 1.11.2  | ✅ Up-To-Date  |\r\n| produce             | 1.3.0   | ✅ Up-To-Date  |\r\n| pilot               | 1.12.1  | ✅ Up-To-Date  |\r\n| supply              | 0.7.1   | ✅ Up-To-Date  |\r\n| match               | 0.11.0  | ✅ Up-To-Date  |\r\n| fastlane            | 1.110.0 | ✅ Up-To-Date  |\r\n| snapshot            | 1.16.4  | ✅ Up-To-Date  |\r\n| gym                 | 1.12.1  | ✅ Up-To-Date  |\r\n| scan                | 0.14.2  | ✅ Up-To-Date  |\r\n| screengrab          | 0.5.6   | ✅ Up-To-Date  |\r\n\r\n\r\n### Loaded fastlane plugins:\r\n\r\n**No plugins Loaded**\r\n\r\n\r\n<details><summary><b>Loaded gems</b></summary>\r\n\r\n| Gem                       | Version |\r\n| ------------------------- | ------- |\r\n| highline                  | 1.7.8   |\r\n| commander                 | 4.4.0   |\r\n| terminal-table            | 1.4.5   |\r\n| dotenv                    | 2.1.1   |\r\n| net-ssh                   | 3.2.0   |\r\n| net-sftp                  | 2.1.2   |\r\n| security                  | 0.1.3   |\r\n| krausefx-shenzhen         | 0.14.11 |\r\n| slack-notifier            | 1.5.1   |\r\n| rouge                     | 1.11.1  |\r\n| xcpretty                  | 0.2.4   |\r\n| terminal-notifier         | 1.7.1   |\r\n| multipart-post            | 2.0.0   |\r\n| word_wrap                 | 1.0.0   |\r\n| multi_json                | 1.12.1  |\r\n| colored                   | 1.2     |\r\n| babosa                    | 1.0.2   |\r\n| excon                     | 0.54.0  |\r\n| rubyzip                   | 1.1.7   |\r\n| gh_inspector              | 1.0.2   |\r\n| credentials_manager       | 0.16.2  |\r\n| fastlane_core             | 0.57.0  |\r\n| bundler                   | 1.13.1  |\r\n| multi_xml                 | 0.5.5   |\r\n| http-cookie               | 1.0.3   |\r\n| faraday-cookie_jar        | 0.0.6   |\r\n| fastimage                 | 1.6.8   |\r\n| mini_magick               | 4.5.1   |\r\n| i18n                      | 0.7.0   |\r\n| thread_safe               | 0.3.5   |\r\n| tzinfo                    | 1.2.2   |\r\n| activesupport             | 4.2.7.1 |\r\n| json                      | 2.0.2   |\r\n| plist                     | 3.2.0   |\r\n| claide                    | 1.0.1   |\r\n| xcode-install             | 2.0.9   |\r\n| CFPropertyList            | 2.3.3   |\r\n| xcodeproj                 | 1.4.1   |\r\n| xcpretty-travis-formatter | 0.0.4   |\r\n</details>\r\n\r\n\r\n*generated on:* **2016-11-22**\r\n</details>\r\n\r\n\r\nI have previously generated a certificate and provisioning profiles with my personal developer account that I currently have working.\r\n\r\nNow I have created an account for the whole team and I am trying to put to use the code signing guide (https://codesigning.guide) with match. What I am seeing is that match tries to create new certificates/provisioning profiles instead of reusing the ones I had manually generated.\r\n\r\nI am unsure of what I need to do here. I don't want to generate new certificates/provisioning profiles since the ones I have are working fine. Should I manually add my certificates/provisioning profiles to the git repo that match uses? do I need to put a specific name/directory structure?\r\n\r\nAnother doubt I have is should the common team account have admin rights on the developer portal? I don't trust that. "},"comment":{"url":"https://api.github.com/repos/fastlane/fastlane/issues/comments/274281586","html_url":"https://github.com/fastlane/fastlane/issues/7133#issuecomment-274281586","issue_url":"https://api.github.com/repos/fastlane/fastlane/issues/7133","id":274281586,"user":{"login":"fastlane-bot","id":17056452,"avatar_url":"https://avatars.githubusercontent.com/u/17056452?v=3","gravatar_id":"","url":"https://api.github.com/users/fastlane-bot","html_url":"https://github.com/fastlane-bot","followers_url":"https://api.github.com/users/fastlane-bot/followers","following_url":"https://api.github.com/users/fastlane-bot/following{/other_user}","gists_url":"https://api.github.com/users/fastlane-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/fastlane-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fastlane-bot/subscriptions","organizations_url":"https://api.github.com/users/fastlane-bot/orgs","repos_url":"https://api.github.com/users/fastlane-bot/repos","events_url":"https://api.github.com/users/fastlane-bot/events{/privacy}","received_events_url":"https://api.github.com/users/fastlane-bot/received_events","type":"User","site_admin":false},"created_at":"2017-01-21T19:11:11Z","updated_at":"2017-01-21T19:11:11Z","body":"There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.\n\nPlease make sure to update to the latest `fastlane` version and check if that solves the issue. Let us know if that works for you by adding a comment :+1:"}}
{"actor":{"display_login":"fastlane-bot"}}