-
Notifications
You must be signed in to change notification settings - Fork 5.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[question] How to keep push notification certificates in shared git repo with match? #8818
Comments
✅ fastlane environment ✅Stack
System Locale
fastlane files:`./fastlane/Fastfile`# Customise this file, documentation can be found here:
# https://github.com/fastlane/fastlane/tree/master/fastlane/docs
# All available actions: https://docs.fastlane.tools/actions
# can also be listed using the `fastlane actions` command
# Change the syntax highlighting to Ruby
# All lines starting with a # are ignored when running `fastlane`
# If you want to automatically update fastlane if a new version is available:
# update_fastlane
# This is the minimum version number required.
# Update this, if you use features of a newer version
fastlane_version "2.26.0"
# NOTE: If building on Teamcity and you see this error "security: cert import failed:" then update the LaunchDaemon
# plist file according to this page: http://stackoverflow.com/a/9482707/1074558
# username "appliedtechrequest@baystatehealth.org" # Your Apple Developer Portal username
default_platform :ios
app_name = "BHAppStore"
git_url = "git@bitbucket.org:okonon/bhcerts.git"
team_id = CredentialsManager::AppfileConfig.try_fetch_value(:team_id)
app_identifier = CredentialsManager::AppfileConfig.try_fetch_value(:app_identifier)
cert_path = "certs"
keychain_path = "~/Library/Keychains/login.keychain-db"
platform :ios do
lane :profiles_development do
# sh("mkdir -p #{cert_path}/development")
cert(
# keychain_path: "#{keychain_path}",
# keychain_password: ENV['KC_PW'],
development: true
# output_path: "#{cert_path}/development"
)
sigh(
development: true
# output_path: "#{cert_path}/development"
)
end
# lane :profiles_release do
# sh("mkdir -p #{cert_path}/release")
# cert(
# keychain_path: "#{keychain_path}",
# keychain_password: ENV['KC_PW'],
# development: false,
# output_path: "#{cert_path}/release"
# )
# sigh(
# development: false,
# output_path: "#{cert_path}/release"
# )
# end
lane :build_development do
if is_ci?
unlock_keychain(
path: "#{keychain_path}",
password: ENV['KC_PW']
)
end
profiles_development
gym(
clean: true,
configuration: "Debug",
output_directory: "builds/" + Time.now.strftime('%F'),
output_name: "#{app_name}-development.ipa",
project: "platforms/ios/#{app_name}.xcodeproj",
scheme: "#{app_name}",
toolchain: "swift_2_3"
)
end
# lane :build_release do
# if is_ci?
# unlock_keychain(
# path: "#{keychain_path}",
# password: ENV['KC_PW']
# )
# end
# profiles_release
# gym(
# clean: true,
# configuration: "Release",
# output_directory: "builds/" + Time.now.strftime('%F'),
# output_name: "#{app_name}-release.ipa",
# project: "platforms/ios/#{app_name}.xcodeproj",
# scheme: "#{app_name}",
# toolchain: "swift_2_3"
# )
# end
# lane :beta do
# build_release
# ENV["DELIVER_ITMSTRANSPORTER_ADDITIONAL_UPLOAD_PARAMETERS"] = "-t DAV"
# pilot
# end
# lane :release_app do
# deliver(
# ipa: "builds/#{Time.now.strftime('%F')}/#{app_name}-release.ipa",
# force: true,
# skip_metadata: true,
# skip_screenshots: true
# )
# end
end
platform :android do
lane :build_development do
Dir.chdir ".." do
sh("platforms/android/cordova/clean")
end
gradle(
task: "cdvBuildDebug",
project_dir: "platforms/android/",
properties: {
'android.useDeprecatedNdk' => true
}
)
Dir.chdir ".." do
sh("mkdir -p builds/#{Time.now.strftime('%F')}/")
sh("cp -f platforms/android/build/outputs/apk/android-armv7-debug.apk builds/#{Time.now.strftime('%F')}/")
sh("cp -f platforms/android/build/outputs/apk/android-x86-debug.apk builds/#{Time.now.strftime('%F')}/")
end
end
# lane :build_release do
# Dir.chdir ".." do
# sh("platforms/android/cordova/clean")
# end
# gradle(
# task: "cdvBuildRelease",
# project_dir: "platforms/android/",
# properties: {
# 'android.useDeprecatedNdk' => true
# }
# )
# Dir.chdir ".." do
# sh("mkdir -p builds/#{Time.now.strftime('%F')}/")
# sh("cp -f platforms/android/build/outputs/apk/android-armv7-release.apk builds/#{Time.now.strftime('%F')}/")
# sh("cp -f platforms/android/build/outputs/apk/android-x86-release.apk builds/#{Time.now.strftime('%F')}/")
# end
# end
# lane :release_app do |options|
# supply(
# track: options[:track],
# apk_paths: ["builds/#{Time.now.strftime('%F')}/android-x86-release.apk", "builds/#{Time.now.strftime('%F')}/android-armv7-release.apk"],
# skip_upload_metadata: true,
# skip_upload_images: true,
# skip_upload_screenshots: true
# )
# end
end `./fastlane/Appfile`app_identifier "org.baystatehealth.appstore" # The bundle identifier of your app
apple_id "appliedtechrequest@baystatehealth.org" # Your Apple email address
team_id "HJMX52WAVE" # Developer Portal Team ID
# you can even provide different app identifiers, Apple IDs and team names per lane:
# More information: https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Appfile.md fastlane gems
Loaded fastlane plugins:No plugins Loaded Loaded gems
generated on: 2017-04-07 |
hey @okonon 🤚 match is only for certificates and provisiong profiles. right now there is no out of the box solution for PEM's. you may have a look at https://github.com/hjanuschka/fastlane-plugin-cryptex - this is baked by the same principals as match but supports any file. |
@hjanuschka thanks for your response. So how would one manage their push notification certificates - use pem? |
Hello, Match command fails to push the certificates on Repo, As repo requires JIRA ID in commit message but Match using default commit message. Whats the solution for this @hjanuschka |
@rahulssoni the commit message is fixed inside the source code: https://github.com/fastlane/fastlane/blob/master/match/lib/match/git_helper.rb#L68 i guess the best solution would be to disable the jira-id requirement on the certificate repo (if that is possible; not a jira user :/). |
hjanuschka - Thanks for your quick reply. |
@okonon did you find a way to push this certificate with match ? |
@jdrouet Can you let us know what you are looking to do with Thanks! |
Correct, as @hjanuschka above said, |
@mpirri I am wondering if you could survey your users to see if supporting PEMs feature adds any value to them? |
@okonon Sure! We can leave this issue open and any folks who are interested can weight in on it. Again, no promises that we will be able to build it any time soon, but another option is to have a fastlane contributor take the lead on this functionality - we are always enthusiastic to review awesome PRs that add useful functionality to the tools. Thanks again! 🚀 |
I agree with @xavier-villelegier - it would be really great to have this feature |
Hey everyone, great news! It looks like someone is working on this already. You can follow the PR here! #9752 🚀 |
w00t ! nice! |
@ohayon is that for importing Signing certificates and for APNS certificates? |
The PR linked above is just for existing private keys for code signing, not for push from my understanding. |
Ok. Let's see if this issue gets more popularity. I wonder why people do not want to request this feature to maintain push to the defecation certificates the |
Anyways I've implemented a workaround using the https://github.com/hjanuschka/fastlane-plugin-cryptex |
Oh that's great, yeah @hjanuschka's plugin is awesome, that's a great workaround for this :) |
Thanks. I am really surprised that no one requested this feature before. I think majority of apps use push notifications nowadays. Thai would be a killer feature. Well let's see if people notice this thread d |
Yeah, most users will just upload the push certificate directly to their server I think |
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. Please make sure to update to the latest |
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. Please make sure to update to the latest |
This issue will be auto-closed because there hasn't been any activity for a few months. Feel free to open a new one if you still experience this problem 👍 |
Thank you for great tools!
How to keep push notification certificates in shared git repo with match?
The text was updated successfully, but these errors were encountered: