3.4 KiB
Packaging
D-Installer packages are available in the YaST:Head:D-Installer project in OBS. This document summarizes the process we follow to build those packages.
Update release information
Before releasing a new version, you are expected to update the version and the changelogs and commit those changes to the repository.
VERSIONcontains the version number for the Ruby packages (the service and the CLI). This value is read and injected in the correspondinggemspecfiles when building the Ruby gems. Do not forget to runbundleto update the version in theGemfile.lockfile.web/package/_servicedefines the configuration of the build service. The version number is specified as a param of theset_versionservice.- The changes files are included in the corresponding
packagedirectories.
Building the packages
After updating the releasing information and commiting those changes to the repository, it is time to update the packages in the build service.
Service and CLI
The process to release new version of the service and the CLI is pretty much the same. You can check the current packages in YaST:Head:D-Installer/rubygem-d-installer and YaST:Head:D-Installer/rubygem-d-installer-cli.
Given that you are in the service or the cli directories, the process to release a new version
can be summarized in these steps:
-
Build the
gemby runninggem build d-installer.gemspecorgem build d-installer-cli.gemspec. -
Update the
specfile using thegem2rpmtool. The configuration is included in the repository. To regenerate the spec, you might type something like:gem2rpm --config package/gem2rpm.yml d-installer-0.1.gem > package/rubygem-d-installer.spec -
Checkout the OBS package and copy the
gem, thespecand thechangesfiles from the repository. -
Commit the changes.
The Cockpit module
The current package is YaST:Head:D-Installer/cockpit-d-installer. You can figure out most details by checking the _service file. It might happen that you get out of RAM when building the package, so in this case, it is better to build it remotely.
Given that you are in the web directory, the process to update the package is:
- Checkout the OBS package and copy
package/*andpackage-lock.jsonfiles from the repository. - In your package checkout, run
osc service manualrun. It will update D-Installer sources and dependencies (node_modules). - Commit the changes.
You can read more about the overall approach of this package in the following article: Git work flows in the upcoming 2.7 release.
The Live ISO
The ISO is built in
YaST:Head:D-Installer/d-installer-live.
Once the rest of the packages are ready, it is just a matter of bumping the version in the
preferences section of the
kiwi
file.
<version>0.4</version>