Platform Team/Guide/Sweets Packaging: Difference between revisions
No edit summary |
|||
| Line 169: | Line 169: | ||
== Releasing == | == Releasing == | ||
In Sweets, releasing means uploading sources tarball with a release (though, that [[#Stability_status|doesn't mean]] | In Sweets, releasing means uploading a sources tarball with a release (though, that [[#Stability_status|doesn't only mean]] stable versions) to the Sugar Labs [[Platform_Team/Open_Build_System|instance]] of the [http://openbuildservice.org/ Open Build Service] (OBS). Before releasing, make sure that you have a Sugar Labs [[Service/Account#Sugar_Labs_Central_Login|account]]. A login with password will be required the first time or when your cookie is missing. | ||
Before releasing, make sure that your recipe conforms OBS [[Platform_Team/Open_Build_System/Policy|Policy]]. While releasing, sweet sources will be uploaded to OBS project/package according to the [[#Interfaces|implement]] recipe option. If particular project or package don't exist, they will be created ( | Before releasing, make sure that your recipe conforms to the OBS [[Platform_Team/Open_Build_System/Policy|Policy]]. While releasing, sweet sources will be uploaded to an OBS project/package according to the [[#Interfaces|implement]] recipe option. If a particular project or package don't exist, they will be created (upon user's confirmation for project creation). | ||
To initiate releasing, | To initiate releasing, enter from the sweet sources directory: | ||
sweets commit | sweets commit | ||
The {{Code|sweets}} command will ask for commit message, i.e., release notes. The same notes might be passed to {{Code|commit}} command via {{Code|--message}} command-line argument. | The {{Code|sweets}} command will ask for a commit message, i.e., release notes. The same notes might be passed to {{Code|commit}} command via the {{Code|--message}} command-line argument. | ||
If releasing sweet is | If the releasing sweet is binary based, only the most recent stable version will be built on the OBS side, other versions will be built on the client side. | ||
== Development with Sweets == | == Development with Sweets == | ||
Source bundles might be used on | Source bundles might be used on the client side not only indirectly, via {{Code|sweets}} command for example, but also explicitly. Sources might be bundled, emailed, etc. In this case, it is just like {{Code|.xo}} files. To make sources useful within Sweets, the local directory with sources might be employed in several ways: | ||
* Applications might be launched from sources, {{Code|sweets ''<path-to-sources>''}}; | * Applications might be launched from sources, {{Code|sweets ''<path-to-sources>''}}; | ||
* To reuse sources as dependencies for other sweets, source directory needs to be registered in Sweets, {{Code|sweets checkout ''<path-to-sources>''}}; applications might be checked out as well. | * To reuse sources as dependencies for other sweets, the source directory needs to be registered in Sweets, {{Code|sweets checkout ''<path-to-sources>''}}; applications might be checked out as well. | ||
Checking out will register a ''sweet'' in the local ''Sweets'' instance as a single ''implementation'' for the ''interfaces'' it ''implements''. This feature is especially useful for libraries, for example, if the sugar-toolkit sources, which implement the {{Code|sdk/sugar-toolkit}} ''interface'', were cloned to the {{Code|~/src/sugar-toolkit}} directory, then, while running a {{Code|sdk/sugar}} ''sweet'', it would become possible to reuse local sugar-toolkit sources as a regular ''implementation'' of the {{Code|sdk/sugar-toolkit}} dependency of {{Code|sdk/sugar}}. | Checking out will register a ''sweet'' in the local ''Sweets'' instance as a single ''implementation'' for the ''interfaces'' it ''implements''. This feature is especially useful for libraries, for example, if the sugar-toolkit sources, which implement the {{Code|sdk/sugar-toolkit}} ''interface'', were cloned to the {{Code|~/src/sugar-toolkit}} directory, then, while running a {{Code|sdk/sugar}} ''sweet'', it would become possible to reuse local sugar-toolkit sources as a regular ''implementation'' of the {{Code|sdk/sugar-toolkit}} dependency of {{Code|sdk/sugar}}. | ||