Deliver • Snapshot • FrameIt • PEM
-------Tired of manually creating and maintaining your push notification profiles? Tired of generating a pem
file for your server?
PEM
does all that for, just by running pem
.
Felix Krause (@KrauseFx) the developer of PEM
Sebastian Mayr (@sebmasterkde) who implemented the download mechanism of signing certificates
Alexander Schuch (@schuchalexander) who automated the generation of the signing request
Features • Installation • Usage • How does it work? • Tips • Need help?
Well, it's actually just one: Generate the pem
file for your server.
Check out this gif:
sudo gem install pem
Make sure, you have the latest version of the Xcode command line tools installed:
xcode-select --install
pem
Yes, that's the whole command!
This does the following:
- Verifies the production push certificate looks alright
- Renews the push certificate in case it's necessary
- Downloads the certificate
- Generates a new
.pem
file in the current working directory, which you can upload to your server
You can pass parameters like this:
pem -a at.felixkrause.app -u username
If you want to generate a development certificate instead:
pem --development
In case you prefer environment variables:
PEM_USERNAME
PEM_APP_IDENTIFIER
PEM_CERT_SIGNING_REQUEST
in case you want to pass your own signing request file
There are 2 actions involved:
- Accessing the
iOS Dev Center
to download the latestaps_production.cer
. See: developer_center.rb. - Generating all the necessary profiles and files to prepare the finished
.pem
file. See: cert_manager.rb.PEM
will create a temporary keychain calledPEM.keychain
and use that to generate the necessary profiles. That meansPEM
will not pollute your default keychain. - The
.certSigningRequest
file will be generated in signing_request.rb
PEM
uses the password manager from Deliver
. Take a look the Deliver README for more information.
Download and install the Provisioning Plugin.
It will show you the pem
files like this:
- If there is a technical problem with
PEM
, submit an issue. Runpem --trace
to get the stacktrace. - I'm available for contract work - drop me an email: [email protected]
This project is licensed under the terms of the MIT license. See the LICENSE file.
- Create an issue to discuss about your idea
- Fork it (https://github.com/KrauseFx/pem/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request