Spec URL: https://copr-be.cloud.fedoraproject.org/results/mrmeee/awx/epel-7-x86_64/00687852-awx/awx-build.spec SRPM URL: https://copr-be.cloud.fedoraproject.org/results/mrmeee/awx/epel-7-x86_64/00687852-awx/awx-1.0.2.0-3.el7.centos.src.rpm Description: AWX, Ansible Management GUI Fedora Account System Username: mrmeee
Install instructions are available here: https://github.com/MrMEEE/awx-build/blob/master/installguide
INFO: Currently, AWX does not build on Fedora, so it's not possible to push this into Rawhide for testing...
This package spec is terribly broken, and doesn't follow *any* of the packaging guidelines at all. Please review the guidelines and rework the spec accordingly: https://fedoraproject.org/wiki/Packaging:Guidelines
Hi Could you give me some hints? I don't see what is broken? is it because the package includes a virtual environment? Also, as mentioned earlier, the package doesn't build on Fedora, so I want to push it directly to EPEL-test...
This covers the major issues: * Amazon Linux doesn't use Upstart anymore. They just released Amazon Linux 2, which uses systemd and they're no longer supporting Amazon Linux AMI v1 (which used upstart). Aside from that, packages for Fedora and EPEL cannot have Amazon Linux specific conditionals. c.f.: https://fedoraproject.org/wiki/Packaging:Guidelines#Spec_Legibility * Your Source0 is invalid. It needs to point to valid URL or have a comment of some kind describing where it came from. c.f.: https://fedoraproject.org/wiki/Packaging:SourceURL * License is wrong. It's "ASL 2.0", not GPLv3: https://github.com/ansible/awx/blob/devel/LICENSE.md * Vendor, Prefix, and BuildRoot tags MUST NOT be used. * Group is not mandatory, but when used, should match one of the following groups: https://fedoraproject.org/wiki/RPMGroups c.f.: https://fedoraproject.org/wiki/Packaging:Guidelines#Tags_and_Sections c.f.: https://fedoraproject.org/wiki/Packaging:Guidelines#Relocatable_packages * Packaging virtualenvs is not permitted in Fedora. Moreover, there is no internet access in the build environment, so packaging virtualenvs is functionally impossible. c.f.: https://fedoraproject.org/wiki/Packaging:Guidelines#Build_time_network_access * Web app files should be installed into `/usr/share/%{name}` rather than in a weird virtualenv location. c.f.: https://fedoraproject.org/wiki/Packaging:Guidelines#Web_Applications Packages like AWX can absolutely work in Fedora and EPEL, you just need to leverage the system packages for its dependent components.
Ok.. thanks... I'll rework the spec, if I can get the depends to check out.. Thanks again...
> Source0: /dist/awx-1.0.2.0.tar.gz Where do you get the sources from? Please add some comments or URL. https://fedoraproject.org/wiki/Licensing:Main https://fedoraproject.org/wiki/Packaging:Guidelines#Code_Vs_Content aws is already choosen as a package name. We would have to use another name, maybe try aws-management? https://src.fedoraproject.org/rpms/aws https://fedoraproject.org/wiki/Packaging:Guidelines#Spec_File_Naming Propably we need some help from legal team.
Somehow confusing. Maybe we talk about that Ansible AWX: https://www.ansible.com/blog/5-things-you-can-do-with-awx Can you use the package name ansible-awx? https://fedoraproject.org/wiki/Packaging:Naming?rd=Packaging:NamingGuidelines#Addon_Packages
@Raphael: the package is right now named awx, not aws.. should it still be named ansible-awx? Thanks for the suggestions.. right now i'm trying to sort out the dependency hell, that is need for AWX to run (pip packages for most).. and how many of them are already in EPEL/RHEL/CentOS and in which versions..
(In reply to Martin Juhl from comment #9) > @Raphael: the package is right now named awx, not aws.. should it still be > named ansible-awx? IMHO ansible-awx is a more readable name to let everyone know what it is. And please notice the guideline about package name for an addon, here to ansible. https://fedoraproject.org/wiki/Packaging:Naming?rd=Packaging:NamingGuidelines#Addon_Packages
Oh cool, Ansible Tower is getting packaged. @Martin please make any reviews for unpackaged dependencies block this one so that prospective reviewers can see what is still pending. Also, for Fedora this should use python3. Why are you saying it doesn't build on Fedora? Is there an upstream bug report about this?
Martin, are you still interest in this package ? The review bug was not updated in a very long time.
Xavier Yes, but I'm not sure how we can make this happen... There are just too many dependencies (100-150) that has to included first.. https://copr.fedorainfracloud.org/coprs/mrmeee/ansible-awx/builds/
Can you link to an updated spec file and SRPM ? Also, do you have a list of needed python dependencies, both available and still to be packaged ? I appreciate building all the needed dependencies will likely be a long journey, but this is the way to go.
Everything is in: https://copr.fedorainfracloud.org/coprs/mrmeee/ansible-awx/builds/ I have already packaged everything.. right now they are utilizing Software Collections.. So I wonder if it would be easier to wait until I complete support for EL8 and Modules/Streams?
(In reply to Martin Juhl from comment #15) > Everything is in: > https://copr.fedorainfracloud.org/coprs/mrmeee/ansible-awx/builds/ > A stable direct link to the spec would be useful. Searching in copr is not straight forward and also the builds are getting dropped so the spec file links goes 404. > I have already packaged everything.. right now they are utilizing Software > Collections.. > > So I wonder if it would be easier to wait until I complete support for EL8 > and Modules/Streams? The awx package needs to go to Fedora Rawhide first before being branched for EPEL. I expect a lot of the python modules to be already available in Fedora. Any missing module will require a separate package review. Make them block this bug so we have a clear view of what's missing, as Rathann suggested above.
Sorry: https://awx.wiki/repository/ansible-awx-8.0.0.0-1.el7.src.rpm Two things are missing right now in the SPEC: 1. Source is prebuilt, so is included as binary, but this should be pretty simple to do.. 2. Dependency list is not complete.. I'm just not sure that this will work with the version available in EPEL, but it's worth a try.. I will see if I can get the time to fix the above..
According to what I read in the specfile and a bit of correction in the packages names, I think the list of missing deps in F31 is not that big. The list might not be fully accurate, but here's what I think is missing and needs to be packaged: python3-azure-common python3-azure-keyvault python3-azure-nspkg python3-build python3-channels python3-daphne python3-django-auth-ldap python3-django-crum python3-django-extensions python3-django-oauth-toolkit python3-django-pglocks python3-django-polymorphic python3-django-solo python3-django-taggit python3-djangorest-framework-yaml python3-irc python3-jaraco-collections python3-jaraco-itertools python3-jaraco-logging python3-jaraco-stream python3-jaraco-text python3-pygerduty python3-logstash python3-social-auth-app-django The specfile itself needs some work: - Specfile should be named awx.spec (or ansible-awx.spec, see below) - I am not convinced the package should be named ansible-awx. I'd go for plain awx. - Use %global rather than %define - Remove %define debug_package %{nil} - Remove %define _prefix /opt/awx - No need to redefine %{_mandir} - Remove %global __os_install_post %{nil} - Replace /var/lib, /var/log, /etc/, /usr/bin, /usr/share, etc... by the corresponding macros - Reword Summary to actually be helpful - Full URL for Source0 - Full URL or useful comment for all the other SxurceX - Why all the %if 0%{el7} ? - Drop Group: tag - Drop BuildRoot: - Drop Vendor: - Drop Prefix: - Why disable the rpm dependency generator ? - Rewrite %description to be useful. Just the Summary: is not enough and is useless as is anyway, see above. - Use macros where possible (awx --> %{name}, 8.0.0.0 --> %{version}) - Virtual env is a no go. - /opt is a no-go. - "cp %{_sourcedir}/nginx.conf.example ./" and similar lines looks dubious to me. Timestamp needs to be preserved. Use 'install -p %{sourceX} /path/to/dest/file' (or at least "cp -a"). - Be consistant in usage of %{buildroot} vs $RPM_BUILD_ROOT. The former is the preferred form nowadays. - Make sure all directories deployed are owned by either the package or a dependency. For example, /var/lib/awx/ is unowned. - %config should be %config(noreplace). - Missing %license. - %changelog entries are both invalid and not very legible: - Add the release - Each entry needs at least one description line below the date. - Add a whiteline between each entry. - And probably lost more, but addressing at least some of the above should allow for a clearer view on the remaining fixes...
And also drop empty and unneeded anyway %clean section.
This is an automatic check from review-stats script. This review request ticket hasn't been updated for some time. We're sorry it is taking so long. If you're still interested in packaging this software into Fedora repositories, please respond to this comment clearing the NEEDINFO flag. You may want to update the specfile and the src.rpm to the latest version available and to propose a review swap on Fedora devel mailing list to increase chances to have your package reviewed. If this is your first package and you need a sponsor, you may want to post some informal reviews. Read more at https://fedoraproject.org/wiki/How_to_get_sponsored_into_the_packager_group. Without any reply, this request will shortly be considered abandoned and will be closed. Thank you for your patience.
This is an automatic action taken by review-stats script. The ticket submitter failed to clear the NEEDINFO flag in a month. As per https://fedoraproject.org/wiki/Policy_for_stalled_package_reviews we consider this ticket as DEADREVIEW and proceed to close it.