viagra vente libre belgique viagra rezeptfrei billig cialis generico portugal
viagra billig kaufen viagra in holland viagra einkaufen viagra order online australia is kamagra legal to bring into australia viagra australia discount coupon venlafaxine 37.5 mg withdrawal dutasteride vs saw palmetto buy priligy online pharmacy viagra quand le prendre generique viagra france pastilla levitra propecia finasteride for sale prednisone withdrawal fluconazole 150 mg dosage yeast infection
commander du viagra en belgique viagra billiger viagra generico portugal
propecia pills buy azithromycin online usa azithromycin tablets 250mg dosage
19 Jun

Starting Appium Via launchd

In a recent project I needed to find a way of getting the Appium node.js app to run all the time on an iOS CI server. The requirements were as follows:

  1. Appium must be run from the checked out Git repository
  2. Launch Appium on start-up, in case the server needs to be rebooted
  3. If Appium crashes (it does sometimes), relaunch the server
  4. Output stdout and stderror to a log file that I can easily view using Console.app to debug problems with Appium

This was achieved with the following launchd plist configuration file placed in ~/Library/LaunchAgents/.

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <dict>
        <key>KeepAlive</key>
        <dict>
            <key>SuccessfulExit</key>
            <false/>
        </dict>
        <key>Label</key>
        <string>com.companyname.appium</string>
        <key>ProgramArguments</key>
        <array>
            <string>/usr/local/bin/node</string>
            <string>/Users/Mike/Projects/appium/server.js</string>
        </array>
    	<key>Debug</key>
		<true/>
        <key>RunAtLoad</key>
        <true/>
        <key>WorkingDirectory</key>
        <string>/Users/Mike/Projects/appium/</string>
		<key>StandardOutPath</key>
		<string>/Users/Mike/Library/Logs/appium.log</string>
		<key>StandardErrorPath</key>
		<string>/Users/Mike/Library/Logs/appium_error.log</string>
    </dict>
</plist>

 

The WorkingDirectory setting is required, as Appium uses it to locate the instruments/client.js file.

Start the agent by running:


launchctl load ~/Library/LaunchAgents/<configuration name>.plist

Or stop it by running:


launchctl unload ~/Library/LaunchAgents/<configuration name>.plist

Hope this helps!

One thought on “Starting Appium Via launchd

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>