Class: PEM::DeveloperCenter
- Inherits:
-
FastlaneCore::DeveloperCenter
- Object
- FastlaneCore::DeveloperCenter
- PEM::DeveloperCenter
- Defined in:
- lib/pem/developer_center.rb
Constant Summary collapse
- APP_IDS_URL =
"https://developer.apple.com/account/ios/identifiers/bundle/bundleList.action"
Instance Method Summary collapse
-
#fetch_cer_file ⇒ Object
This method will enable push for the given app and download the cer file in any case, no matter if it existed before or not.
- #has_actual_cert ⇒ Object
Instance Method Details
#fetch_cer_file ⇒ Object
This method will enable push for the given app and download the cer file in any case, no matter if it existed before or not
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/pem/developer_center.rb', line 11 def fetch_cer_file @app_identifier = PEM.config[:app_identifier] begin open_app_page click_on "Edit" wait_for_elements(".item-details") # just to finish loading push_value = first(:css, '#pushEnabled').value if push_value == "on" Helper.log.info "Push for app '#{@app_identifier}' is enabled" else Helper.log.warn "Push for app '#{@app_identifier}' is disabled. This has to change." first(:css, '#pushEnabled').click sleep 3 # this takes some time end if has_actual_cert and not PEM.config[:force] Helper.log.info "You already have a push certificate, which is active for more than 30 more days. No need to create a new one".green Helper.log.info "If you still want to create a new one, use the --force option when running PEM.".green false else Helper.log.warn "Creating push certificate for app '#{@app_identifier}'." create_push_for_app end rescue => ex error_occured(ex) end end |
#has_actual_cert ⇒ Object
41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/pem/developer_center.rb', line 41 def has_actual_cert apps = all(:xpath, "//div[@class = 'certificate']") cert_type = PEM.config[:development] ? 'Development' : 'Production' cert_section = apps.select { |c| c.text.include? cert_type } unless cert_section.empty? data_s = cert_section.last.all('dd').last.text data = Date.parse(data_s) data - Time.now.to_date > 30 # valid for more than 30 days (Apple email) end end |