====== Uploading Files for Analysis ====== To upload to the Fossology data-base you must be logged in to the FOSSology UI. Instructions on the use of this functionality are provided as a menu selection. Check this informaiton before using **Upload**. {{ui-menu-upload-v1.png|}} FOSSology has many options for importing and uploading files for analysis. The options vary based on where the data to upload is located. The data may be located: * On your browser system. Use the **Upload->Upload File** option to select and upload the file. While this can be very convenient (particularly if the file is not readily accessible online), uploading via your web browser can be slow for large files, and files larger than 650 Megabytes may not be uploadable. * On a remote server. Use the **Upload->Upload from URL** option to specify a remote server. This is the most flexible option, but the URL **must** denote a publicly accessible HTTP, HTTPS, or FTP location. URLs that require authentication or human interactions cannot be downloaded through this automated system. * On the FOSSology web server. Use the **Upload->Upload from Server** option to specify a file or path on the server. This option is intended for developers who have mounted directories containing source trees. The directory must be accessible via the web server's user. This last method, uploading from the server depends on your site configuration and how your administrators have configured your site. For advanced users, there is also a command line utility [[cp2foss]] that can be used to upload 1 or more files. The [[cp2foss]] utility is best used when large amounts of material need to be loaded or when a large data set needs to be broken into smaller chunks for ease of loading. Uploads take time. First the file has to be transfered to the web server. The file is then unpacked. Unpacking can take many hours depending on a number of factors. Next the selected agents are scheduled for that upload. Each agent must run in turn to do it's analysis. \\ **Real Time Analysis of One File** The **Upload->One-Shot License** menu item enables you to upload a single file for license analysis. This analysis is done in real-time. There are some important limitations to using this analyzer: * The analysis is done in real-time. Large files may take a while. This method is not recommended for files larger than a few hundred kilobytes. * Files that contain files are not unpacked. If you upload a 'zip' or 'deb' file, then the binary file will be scanned for licenses and nothing will likely be found. * Results are not stored. As soon as you get your results, your uploaded file is removed from the system. ===== Upload Times ===== ==== Upload Time is variable ==== An upload can take as little as minutes or as much as weeks to upload. Many factors influence this time. The first factor is the size of the upload. Obviously, a large upload (650MB) may take many hours to upload and analyze. Your network speed, the speed of your server and the amount of disk space can all influence this time. ==== Reuse Speeds Up Uploads ==== The second factor that affects upload time is if the same material has already been loaded into the Data-Base. Fossology keeps track of identical material through the use of checksums. Many open source projects use common parts from other open source projects. When fossology starts to upload a file, a check is first made to see if that file has already been uploaded and is identical to the file to be uploaded. If it is, the file will still be uploaded, but the actual analysis data will come from the previous analysis. This can greatly speed up the upload time. There is no way to predict how many files will be reused in a given upload. ===== Start with Graphical User Interface ===== Most users should find that the graphical user interface will meet their needs. For more specifics on each method, use the links below. * [[Upload from a file]] * [[Upload from a URL]] * [[Upload from the Web Server]]