Difference between revisions of "File Release System/6.1"
(→Package) |
(→Package) |
||
Line 60: | Line 60: | ||
To create a new package, it requires ''FRS Administration'' permission. | To create a new package, it requires ''FRS Administration'' permission. | ||
The package creation form is displayed on the '''Administration''' page. | The package creation form is displayed on the '''Administration''' page. | ||
+ | |||
+ | ==== Creation ==== | ||
+ | [[File:Ff-frs-package-creation.png|thumb|right|400px]] | ||
=== Release === | === Release === |
Revision as of 12:37, 16 December 2017
This page in other versions: master
FusionForge provides a feature to organize deliverable/product/file releases. Organized by package, release, files, this feature relies on RBAC for permission.
Contents
Main Features
- unlimited organized packages/releases/files
- public/private packages
Available Widgets
user oriented widgets
project oriented widgets
forge oriented widgets
Activation
To enable this system at forge level, the configuration flag use_frs must be set to yes. Per project, the system can be enable/disable through the Project admin tab.
Permissions
Relying on RBAC, FRS permissions are splitted into 2 groups.
- FRS access level permissions:
- No access: Any access to FRS is disabled.
- FRS access: When set, the per package setting applies
- FRS Administration: when set, then role has full access to any package and any action over package/release or file.
- Per Package permissions:
- No access: disable any access to the package and his content.
- Read access: can browse/download files/releases in the package
- File Management: create/modify/delete files in the package.
- File & Release Management: create/modify/delete files & releases in the package.
- Package admin: full permission on any action on the package/release/file.
The section Default for new packages applies when new package is created.
Main Page
- View File Release:
- Reporting:
- Administration:
Package/Release/File
FusionForge proposes to organize hierarchicaly binaries/deliverables or any other items. One package can include unlimited number of releases which include unlimited number of files. There are no relation between different releases of the same package. There are no rules to name packages or releases.
One best practice of naming can be:
- package is the name of the deliverable
- release is the identifier of the package
Files can be source, documents, any element related to the release of the package.
Example:
- Package Name: FusionForge SOAP CLI
- Release Name: 1.0
- File: fusionforge-soap.cli-1.0.tar.bz2
- File: ReadMe
Package
A package is defined by a name. The name must be unique across the project. Name must be at least 3 characters long.
To create a new package, it requires FRS Administration permission. The package creation form is displayed on the Administration page.
Creation
Release
Creation
Edition
File
Creation
Edition
Import/Export
inject-files.php script
The inject-files.php is located in ~/fusionforge/bin/ directory. This script must be executed on the FusionForge hosting server.
The script creates packages based on the content of a parameter file files.txt which must be located in the same directory than the script.
The content of files.txt file must respect the following format:
- each line describe one file.
- each line must have 8 parameters separated by colons.
- project: the unixname of the project
- packagename: name of the package. If package does not exist, the package is created.
- releasename: name of the release. If release does not exist, the release is created.
- filepath: full path to the file to attach to the release
- notes: Notes of the release. Only used if release does not exist.
- changes: Changes of the release. Only used if release does not exist.
- type: File Type. Integer. See below for values.
- processor: Processor Type. Integer. See below for values.
type and processor values are respectively ids from frs_filetype and frs_processor.
- type values taken from SELECT * from frs_filetype:
1000 | .deb [...] 5000 | Source .zip 5010 | Source .bz2 5020 | Source .gz [...] 5900 | Other Source File [...] 9999 | Other
- processor values taken from SELECT * from frs_processor:
1000 | i386 6000 | IA64 [...] 8000 | Any [...] 9999 | Other
Example of file:
demoproject:MyPackageA:'1.0':/path/to/the/release/file:'new release':'security fix':5010:9999
forge command line
The forge command line is located in ~/bin/ directory.
The command line supports package/release import or export. Detail information here