Skip to content

Instantly share code, notes, and snippets.

@mauromorales
Created April 14, 2013 20:36
Show Gist options
  • Save mauromorales/5384110 to your computer and use it in GitHub Desktop.
Save mauromorales/5384110 to your computer and use it in GitHub Desktop.
FileWave client installation for package distribution on OS X Mountain Lion.
module InventoryClient
class FileWave
def self.install_pkg(pkg)
`sudo /usr/sbin/installer -pkg #{pkg} -target /`
end
def self.install_fw
fw_pkg = 'fw_5.8.1_osx.pkg'
install_pkg(fw_pkg) if File.exists?(fw_pkg)
end
def self.configure_fw(server, user, pass)
file = File.new( "fwcld.plist", "w+" )
file.write("
<?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>booster1</key>
<string>no.booster.set</string>
<key>booster1Port</key>
<integer>0</integer>
<key>booster2</key>
<string>no.booster.set</string>
<key>booster2Port</key>
<integer>0</integer>
<key>booster3</key>
<string>no.booster.set</string>
<key>booster3Port</key>
<integer>0</integer>
<key>booster4</key>
<string>no.booster.set</string>
<key>booster4Port</key>
<integer>0</integer>
<key>booster5</key>
<string>no.booster.set</string>
<key>booster5Port</key>
<integer>0</integer>
<key>debugLevel</key>
<integer>10</integer>
<key>fileCheckInterval</key>
<integer>86400</integer>
<key>freeSpaceMargin</key>
<integer>314572800</integer>
<key>fwPassword</key>
<string>#{pass}</string>
<key>fwUser</key>
<string>#{user}</string>
<key>kioskPort</key>
<integer>20020</integer>
<key>monitorPort</key>
<integer>20010</integer>
<key>primaryPort</key>
<integer>20015</integer>
<key>priority</key>
<integer>2</integer>
<key>server</key>
<string>#{server}</string>
<key>setUsersFilesOwner</key>
<integer>1</integer>
<key>syncComputerName</key>
<integer>1</integer>
<key>testMode</key>
<integer>0</integer>
<key>tickleInterval</key>
<integer>120</integer>
<key>useSSL</key>
<integer>0</integer>
</dict>
</plist>
")
file.chmod( 0744 )
`sudo mv fwcld.plist /usr/local/etc/fwcld.plist`
stop_fw_client
start_fw_client
end
def self.fwcontrol(action)
`sudo fwcontrol client #{action}`
end
def self.start_fw_client
fwcontrol('start')
end
def self.stop_fw_client
fwcontrol('stop')
end
def self.restart
`sudo shutdown -r now`
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment