Ruby/Automatization
< Ruby
Revision as of 17:11, 12 December 2023 by Majioa (talk | contribs) (Created page with "== Automatization == To automatize the watch and update the ruby-based packages the gem '''gem-rubobot''' shall be used, to accomplish the following functions: * execute the watch for new ruby-based package versions and notify the subscribers about their appearance on '''rubygems.org'''; * execute the watch for new version of ruby language, notify the subscribers about their appearance; * make an integrity control over the gem subsystem in Sisyphus, by the aim of the sp...")
Automatization
To automatize the watch and update the ruby-based packages the gem gem-rubobot shall be used, to accomplish the following functions:
- execute the watch for new ruby-based package versions and notify the subscribers about their appearance on rubygems.org;
- execute the watch for new version of ruby language, notify the subscribers about their appearance;
- make an integrity control over the gem subsystem in Sisyphus, by the aim of the specific Gemfile;
- monitor on the new non-packaged gem download count (from rubygems.org), and when the count is become more than a packetize threshold (by default 1M downloads), in automatic mode create an RPM-package based on the gem, and notify in both case of success or failure;
- try to update gem packages in automatic mode keeping integrity control of the built gem packages, and notify when it is impossible;
- try to update ruby application packages in automatic mode keeping integrity control of the built gem packages, the build here is allowing on-the-fly the replacement gem version to packages that are presented in the repo, and notify when it is impossible;
- update gem packages packages in semi-automatic mode (i.e. by the directive from maintainer) keeping integrity control of the built gem packages, with an automatic creation of the gem compatible packages;
- update ruby language package packages in semi-automatic mode (i.e. by the directive from maintainer) with automatic rebuild of dependent packages.