def add_file(group_name, package_name, release_name, userfile)
type_id = @userconfig["type_id"]
group_id = lookup "group", group_name
package_id = lookup "package", package_name
release_id = (Integer === release_name) ? release_name : lookup("release", package_name)[release_name]
url = "/releases/#{release_id}/files.js"
userfile = open userfile, 'rb'
type_id ||= userfile.path[%r|\.[^\./]+$|]
type_id = (lookup "type", type_id rescue lookup "type", ".oth")
processor_id = @userconfig["processor_id"]
processor_id ||= "Any"
processor_id = lookup "processor", processor_id
form = {
"file[filename]" => File.basename(userfile.path),
"file[processor_id]" => processor_id,
"file[type_id]" => type_id,
"contents" => userfile.read
}
run url, form
end