Last week I spent some time to setup a new jenkins server, I need to migrate from the old server to new server, including:
- install all the plugins,
- and import all the jenkins jobs from the old server to the new server.
I found jenkins-cli is so powerful and so easy to use, it is a big helper. Now I would like to share how I use this powerful tool.
Download jenkins-cli
You can download the JAR file for the client from the URL "/jnlpJars/jenkins-cli.jar" on your Jenkins server, e.g. http://jenkins.example.com/jnlpJars/jenkins-cli.jar
List plugins
java -jar jenkins-cli.jar -s http://your-jenkins-server/ list-plugins
Migrate the plugins
To install plugins which are installed in the old servers, use the following command:
java -jar jenkins-cli.jar -s http://old-jenkins-server/ list-plugins | awk '{print $1}' | xargs java -jar jenkins-cli.jar -s http://new-jenkins-server/ install-plugin
Migrate the jenkins jobs
java -jar jenkins-cli.jar -s http://old-jenkins-server/ get-job "my job" > my_job.xml
java -jar jenkins-cli.jar -s http://new-jenkins-server/ create-job "my job" < my_job.xml
Showing posts with label Jenkins. Show all posts
Showing posts with label Jenkins. Show all posts
Sunday, March 6, 2016
Saturday, September 15, 2012
Fix the iOS code signing issue when using Jenkins
This week I setup the Jenkins on my Mac and try to build iOS applications. unfortunately I got the code signing issues, either I use xcode plugin or xcode command line tool. Through a couple days of googling and I could not find any solution that works for me, but I finally solve this issue by myself through different try out, and the solution is such an easy, now I would like to share with my solution.
The core reason is Jenkins is running as daemon mode in Mac, just assume it is a different user - "Jenkins", so it will not have access to the keychain or provision profile as a you login using your credentials, which cause the code signing issue.
I found I have following 2 errors
1. "Code Sign error: There are no valid certificate/private key pairs in the default keychain"
Solution: Copy your iPhone developer certificate from "login" keychain to "System" keychain.
Detailed steps:
open the "Keychain Access" application, click the login tab, right click the certificate like "iPhone Developer: your_name (XXXXXXX)", choose copy, then click the "System" tab, right click mouse, choose "Paste 2 items"; you might need to do the same thing with the certificate like "iPhone Distribution: your_name".
After doing this, you will get the second error.
2. "Code Sign error: Provisioning profile 'xxxxx-xxxx-xxxx-xxxxx' can't be found"
Solution: Copy the provision profile to Jenkins user folder.
The provision profile is under in the folder
/YourUserName/Library/MobileDevice/Provisioning Profiles,
for example in my machine, the provision profile files are under /Users/steve/Library/MobileDevice/Provisioning Profiles
In the mac, the Jenkins will be in /Users/Shared/Jenkins, create the following folder:
/Users/Shared/Jenkins/Library/MobileDevice/Provisioning Profile, then copy the .mobileprovision file to this folder.
After doing this, the code signing issues will be fixed. Hope my finding will be helpful to other Jenkins users.
Subscribe to:
Posts (Atom)