We use proprietary and third party's cookies to improve your experience and our services, identifying your Internet Browsing preferences on our website; develop analytic activities and display advertising based on your preferences. If you keep browsing, you accept its use. You can get more information on our Cookie Policy
Cookies Policy
Tutorial releasing fiware - FIWARE Forge Wiki

Tutorial releasing fiware

From FIWARE Forge Wiki

Jump to: navigation, search
Manual deprecated - we will use Github and dockers from Release 4 onwards


Release of Code

It will happen as in the past (Release 1). The release of Source code under FI-WARE is completely voluntarily and it is not subject to review from the coordination.

The repositories to use are:

  • Software of PU nature (open to anyone on the internet): is up to the GEi to chose the tool/platform to use, as long as it meets the requirement or be open to anyone on the Internet and a URL exists to be provided in the software deliverables. Valid options are GitHub.com or the SCM tool of FI-WARE Project (there is an underlying SVN).
  • Software of PP nature (access restricted to FI-WARE or PPP members): SCM tool of the project of each chapter in the forge (there is also an underlying SVN in each case)

Important note for interpreted languages: in the case of interpreted languages (e.g. Ruby, Perl, etc) in which a "pure" binary cannot be compiled from sources to provide the GEi, the source code will be considered as "binay package" in "Release of Binaries" below (including the mandatoriness of releasing).

Release of Binaries

Important warning: VMs are not accepted as a valid means of delivering the SW. We want something that people who adopt it can deploy (i.e install) flexibly. If we would release VMs, we would force people to use a particular kind of hypervisor and precluding the possibility of installing our released software in physical machines.

The release of binaries (.tgz, .rpm, .zip, etc.) in FI-WARE will take place in the tool called "Files" in Fusion Forge. Depending on the dissemination level, we will use a different project:

The structure of the repository follows the typical 3-level approach



N.B.: The figure at the end of this tutorial provides a complete example that is 100% compliant with these guidelines.

Package Management

  • In the context of FI-WARE, a package is a GE implementation and there will be a package and just a single package per GE implementation.
  • The name of the Package will be the GEi name. A prefix can be added if we want to make explicit to which chapter belongs the GEi (eg. “DATA-…, IOT-…”)
  • The basic operations on a Package are:

  • Go to Files and press "Admin"
  • Scroll down and on the bottom left corner you will see this. Type the package name (following the naming convention)
  • Choose "Public" for Packages on FI-WARE and "Private" for Packages on FI-WARE PPP Restricted. Public means that anyone on the internet will be able to see the files once published whereas Private means that the files will be visible to the forge project members only. NOTE THAT THIS CANNOT BE CHANGED AFTERWARDS (it would require the intervention of a system administrator updating the database directly). Make sure that you make the right choice.
  • Finally, press "Create this Package" and it will be created.
  • Now, you can create releases within this Package
  • Go to Files and press "Admin"
  • You will get a screen like this:
  • Press "Delete" on the row of the Package you want to remove and confirm the action. The Package will disappear permanently.
  • WARNING: this action is permanent and all Files in the Package are deleted. Be very cautious using this option.
PACKAGE UPDATE (Package name or visibility)
  • Go to Files and press "Admin"
  • You will get a screen like this:
  • You can modify the package name or to modify the visibility (Active= visible to the taget audience (See package creation: Public/Private);Hidden= the files will be visible to yourself and the administrators)
  • Once you are happy with the changes, press "Update"
  • Note that if you need to change the type of package (Public/Private), this can only be done by creting a ticket on the Support tracker for the administrator.

Release Management

  • A new release will be created each time the GE owner decides to release a new version.
  • Naming convention: use X.Y.Z format, where
    • X.Y = FI-WARE major release. It is mandatory to use the first two numbers of FIWARE numbering schema
      • E.g. most of the software packages that we deliver in April will correspond to R2.2 (finished at the end of March according to the FIWARE numbering schema) so must use X.Y = 2.2
    • Z = up to the partner, free text. It is recommended to use the thrid number of the FIWARE numbering schema.
    • E.g: 1.2.1,, 1.2.0-0.0.7, 2.0.1rc2, etc.
  • The basic operations on a Release are:

  • Go to Files and press "To create a new release Press here"
  • Alternatively, you can go to Files-> Admin and press "Add Release"
  • Now fill in the form with the details of the new Release. You need to upload a first file associated to the release to create it. Do not forget to respect the naming convention for the "Release Name" field (X.Y.Z) center|frame
  • "Release Notes" and "Change Log" are optional
  • Press the button "Release File" and you are done.
  • Go to Files-> Admin
  • Press "Edit Releases" in the row of the package of the Release you want to delete
  • Press "Delete" on the Release you want to remove. The system will ask for a confirmation. Confirm and the Release will be deleted for ever.
RELEASE UPDATE (Release name or visibility)
  • Go to Files-> Admin
  • Press "Edit Releases" in the row of the package of the Release you want to modify
  • Press "Edit " in the row of the Release you want to modify
  • A form will show you a number of modifiable fields in the section named "Step 1", edit them at your convenience
  • Once this is done, press "Submit/Refresh"
  • Note that there are additional options (under parts "Step 2" and "Step 3" of the form) the apply to the next section of this tutorial, dealing with the management of the files whithin a Relase.

File Management

  • Once the Package and the Release are created, we can upload the files for binary releases (.tgz, .rpm, .zip, etc.). We need to upload two set of files:
    • The binaries themselves. There are as many as needed per release. Typically 1 file, but there may be more.
    • The automated tests
  • There isn't a naming convention for the files, the GEi owner can decide how to name them.
  • As regards the visibility of the files (public or restricted to PPP), the file will inherit the settings from the package and release where it is located.

  • The upload of the first file is performed jointly with the Release Creation. Scroll up on this tutorial and see the "Release Creation" operation for more details.
  • To add extra files, go to Files-> Admin
  • Press "Edit Releases" in the row of the package of the Release you want to modify
  • Press Edit on the Release Name
  • Ignore "Section 1" in the form and go to "Section 2"
  • Upload the new file and choose the values for the associated parameters
  • Press "Add this file"
  • Go to Files-> Admin
  • Press "Edit Releases" in the row of the package of the Release you want to modify
  • Press Edit on the Release Name
  • Ignore "Section 1" and "Section 2" in the form and go to "Section 3"
  • Choose "Delete File", activating the checkbox "I am sure" and pressing the button "Delete File"
  • Go to Files-> Admin
  • Press "Edit Releases" in the row of the package of the Release you want to modify
  • Press Edit on the Release Name
  • Ignore "Section 1" and "Section 2" in the form and go to "Section 3"
  • Change the files at your convenience
  • Press "Update/Refresh"

Example of a Package, Release and set of Files that are compliant with the standard

After following the previous steps, we will end up with a software package for our GE together with as many Releases and files as needed within each one.

You can always visit the Samson Broker package for an actual up-to-date example at https://forge.fi-ware.eu/frs/?group_id=23

Treatment of binaries of Release 1

The GE owner has freedom to decide what to do with files already delivered for Release 1:

  • Alternative 1) Do nothing and leave everything as it is now
  • Alternative 2) Move the binaries to the File Manager, respecting the rules in this tutorial
Personal tools
Create a book