Bug 1149407 - Review Request: rOCCI-server - Ruby OCCI Server
Summary: Review Request: rOCCI-server - Ruby OCCI Server
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Mamoru TASAKA
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1132008 1135502 1138455 1142497
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-10-04 14:59 UTC by František Dvořák
Modified: 2015-01-26 02:36 UTC (History)
1 user (show)

Fixed In Version: rOCCI-server-1.0.5-3.fc21
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-01-26 02:36:35 UTC
mtasaka: fedora-review+
opensource: fedora-cvs+


Attachments (Terms of Use)

Description František Dvořák 2014-10-04 14:59:52 UTC
Spec URL: http://scientific.zcu.cz/fedora/rOCCI-server-1.0.5-1/rOCCI-server.spec
SRPM URL: http://scientific.zcu.cz/fedora/rOCCI-server-1.0.5-1/rOCCI-server-1.0.5-1.fc22.src.rpm
Description: OCCI (the Open Cloud Computing Interface) is a standard by the Open Grid Forum, specifying a protocol and API to perform various remote management tasks in clouds. The rOCCI-server extends cloud managers, which are not OCCI-compliant natively, with its own OCCI interface. It is based on the rOCCI (Ruby OCCI) Framework.
Fedora Account System Username: valtri

koji build: http://scientific.zcu.cz/fedora/rOCCI-server-1.0.5-1/koji.txt

Comment 1 Mamoru TASAKA 2014-12-30 07:49:05 UTC
Now it is time to review this, taking. May take a bit long time because this package seems a bit complicated, however I will try.

By the way, are there any "simple" way to check the packaged rpm actually works? (if there is no simple way, it is okay).


Also I will appreciate it if you would review my review request (bug 1177739)

Comment 2 František Dvořák 2014-12-30 09:22:55 UTC
Wow, thanks! This is large and complicated package and I would be happy with the review process started. :-) I'll take the review of #117739.

Quick launching and testing of rOCCI server with dummy backend is described in the README.Fedora file (in the package, or it can be downloaded here http://scientific.zcu.cz/git/?p=rOCCI-packaging-fedora.git;a=blob_plain;f=README.Fedora;hb=refs/heads/1.0.x).

Larger documentation is here: https://github.com/EGI-FCTF/rOCCI-server/wiki/rOCCI-Server-Admin-Guide#Installation_and_Configuration . But many tasks there are solved by the packaging.

I should update this package a little yet (to permit newer version of occi-core from newer branch, and the tests should probably go to separated package).

Note, this is a version from the older branch for now. The newer version of rOCCI-server will need more packages (ox, jmespath, and aws-sdk-core gems).

Comment 3 František Dvořák 2014-12-30 12:47:07 UTC
Here is the updated package:

Spec URL: http://scientific.zcu.cz/fedora/rOCCI-server-1.0.5-2/rOCCI-server.spec
SRPM URL: http://scientific.zcu.cz/fedora/rOCCI-server-1.0.5-2/rOCCI-server-1.0.5-2.fc22.src.rpm

koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=8499707

%changelog
* Tue Dec 30 2014 František Dvořák <valtri@civ.zcu.cz> - 1.0.5-2
- Tests into a subpackage
- Relax occi-core dependency
- License file only in %%{app_root}

Comment 4 Mamoru TASAKA 2014-12-31 06:42:57 UTC
Well, I will do review on mainly packaging issue.

* Creating user
  - Is the shell of "rocci" user okay with /bin/bash? (/sbin/nologin preferred?)

* Selinux related
  - Well, I don't know selinux handling in detail, so if I am
    wrong, please correct me. Now:

  * Status of log files
    - What selinux status does files under %{_localstatedir}/log/rocci-server/
      after the final "removal" of rOCCI-server?
      Log files under %{_localstatedir}/log/rocci-server/ can remail undeleted
      after the removal of rOCCI-server rpm, and can't those files be undefined
      selinux state without again executing "restorecon" at %postun with "$1 == 0"?

* Documentation
  - Can files under %{app_root}/examples/ moved to -doc subpackage?

* Requires for rubygem(%{openssl_cms})
  - By the way, not strictly for this package, however are there any
    reason why rubygem(%{openssl_cms}) has different naming between
    ruby 2.0 and ruby 2.1?
    Note that when gem contains C extension (under %gem_extdir_mri),
    C library dependency is correctly added by rpmbuild process
    (like libruby.so.2.1), and there should be no need to append
    additional suffix to %gem_name, e.g.

    http://koji.fedoraproject.org/koji/buildinfo?buildID=596281
    http://koji.fedoraproject.org/koji/buildinfo?buildID=596282

Other things looks okay.

Comment 5 František Dvořák 2014-12-31 16:42:59 UTC
(In reply to Mamoru TASAKA from comment #4)
> * Creating user
>   - Is the shell of "rocci" user okay with /bin/bash? (/sbin/nologin
> preferred?)
> 

Nice catch! Fixed.

> * Selinux related
>   - Well, I don't know selinux handling in detail, so if I am
>     wrong, please correct me. Now:
> 
>   * Status of log files
>     - What selinux status does files under
> %{_localstatedir}/log/rocci-server/
>       after the final "removal" of rOCCI-server?
>       Log files under %{_localstatedir}/log/rocci-server/ can remail
> undeleted
>       after the removal of rOCCI-server rpm, and can't those files be
> undefined
>       selinux state without again executing "restorecon" at %postun with "$1
> == 0"?
> 

You're right. It is more interresting: passenger_log_t type is part of the main selinux policy already, so in this case it will remain on the files even after uninstalling both rOCCI-server and passenger. But it will be better to keep contexts consistent with currentley installed SELinux modules ==> calling restorecon to reset it to var_log_t.

> * Documentation
>   - Can files under %{app_root}/examples/ moved to -doc subpackage?
> 

OK, moved.

> * Requires for rubygem(%{openssl_cms})
>   - By the way, not strictly for this package, however are there any
>     reason why rubygem(%{openssl_cms}) has different naming between
>     ruby 2.0 and ruby 2.1?
>     Note that when gem contains C extension (under %gem_extdir_mri),
>     C library dependency is correctly added by rpmbuild process
>     (like libruby.so.2.1), and there should be no need to append
>     additional suffix to %gem_name, e.g.
> 
>     http://koji.fedoraproject.org/koji/buildinfo?buildID=596281
>     http://koji.fedoraproject.org/koji/buildinfo?buildID=596282
> 

This is little more complicated. There are really used different gems (different code branches) for each ruby version in openssl_cms, so gems are named by upstream with the suffix.

It's true it would be possible to do some patching and "lie" about the gem name (it is not on rubygem.org, so it would be even less complicated), but I've rather remained closer to the upstream way.

> Other things looks okay.

The new version:

Spec URL: http://scientific.zcu.cz/fedora/rOCCI-server-1.0.5-3/rOCCI-server.spec
SRPM URL: http://scientific.zcu.cz/fedora/rOCCI-server-1.0.5-3/rOCCI-server-1.0.5-3.fc22.src.rpm

%changelog
* Wed Dec 31 2014 František Dvořák <valtri@civ.zcu.cz> - 1.0.5-3
- No shell for rocci user
- SELinux cleanups: rules for Fedora 22, dependencies, context after uninstall
- Update README.Fedora
- Examples to doc subpackage

Comment 6 Mamoru TASAKA 2014-12-31 23:40:13 UTC
Okay, approving.

----------------------------------------------------------
    This package (rOCCI-server) is APPROVED by mtasaka
----------------------------------------------------------

Comment 7 František Dvořák 2015-01-01 00:28:06 UTC
New Package SCM Request
=======================
Package Name: rOCCI-server
Short Description: Ruby OCCI Server
Upstream URL: https://github.com/EGI-FCTF/rOCCI-server
Owners: valtri
Branches: f21
InitialCC:

Comment 8 Till Maas 2015-01-01 22:56:09 UTC
Git done (by process-git-requests).

Comment 9 Fedora Update System 2015-01-02 06:21:52 UTC
rOCCI-server-1.0.5-3.fc21 has been submitted as an update for Fedora 21.
https://admin.fedoraproject.org/updates/rOCCI-server-1.0.5-3.fc21

Comment 10 Fedora Update System 2015-01-03 18:58:00 UTC
rOCCI-server-1.0.5-3.fc21 has been pushed to the Fedora 21 testing repository.

Comment 11 Fedora Update System 2015-01-26 02:36:35 UTC
rOCCI-server-1.0.5-3.fc21 has been pushed to the Fedora 21 stable repository.


Note You need to log in before you can comment on or make changes to this bug.