Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes #12970 - Package patternfly-sass #944

Merged
merged 1 commit into from
Jan 18, 2016

Conversation

dLobatog
Copy link
Member

cc - theforeman/foreman#294

Release: 1%{?dist}
Summary: Red Hat's Patternfly, converted to Sass and ready to drop into Rails
Group: Development/Languages
License: Apache-2.0
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ASL 2.0 in a spec file

@domcleal
Copy link
Contributor

domcleal commented Jan 4, 2016

  1. as per Fixes #12969 - font-awesome-sass package for Patternfly #943, missing comps/ and rel-eng/ updates. Please rebase first to avoid a conflict.
  2. missing runtime requires
  3. missing relevant versions of sass and bootstrap-sass, they'd also need updating

@domcleal
Copy link
Contributor

domcleal commented Jan 4, 2016

It looks like you're updating a lot of packages to fully implement the changes in #4629, so you might find this easier in one PR and/or with a temporary repo (e.g. using mockchain or copr) to show the changes work together - including the changes to foreman/foreman.spec.

@dLobatog
Copy link
Member Author

dLobatog commented Jan 4, 2016

It looks like I have to:

  • Add patternfly-sass (done?)
  • Update bootstrap-sass to 3.3.6
  • Add autoprefixer-rails 5.2.1.3
  • Update sprockets-rails to 2.3.3 (at least). 2.2.4 is the maximum version in the ror41 SCL, would it be worth it to submit changes there directly?
  • Add sprockets 3 (at least). The maximum version on ror41 is 2.12.3.
  • Add sass-rails 5.0, ror41 max version is 4.0.3
  • Add font-awesome-sass - Fixes #12969 - font-awesome-sass package for Patternfly #943
  • Update foreman.spec to depend on the aforementioned packages

I think that would be it, I'll add it to the original comment as a check list. @domcleal, you said you would prefer all of these changes in this PR, plus a copr with the packages then? Most of the items in the list above don't necessarily have to rely on one another so they could be merged independently.

@domcleal
Copy link
Contributor

domcleal commented Jan 5, 2016

Update sprockets-rails to 2.3.3 (at least). 2.2.4 is the maximum version in the ror41 SCL, would it be worth it to submit changes there directly?

I doubt very much that you could get this changed in the rh-ror41 SCL, since it's a rebuild of a Red Hat product, so the "upstream" has a policy of no rebases.

I don't mind if this is in one PR or many, but I think the series of packages will need to be chainbuilt to prove that it all works together (mockchain with the configs in mock/ and SRPMs from tito build --srpm --test should be easy).

@domcleal
Copy link
Contributor

domcleal commented Jan 5, 2016

Don't worry about Redmine tickets for each change too, it's not necessary here - just more admin work.

@@ -140,6 +140,7 @@
<packagereq type="default">rubygem-multi_json-doc</packagereq>
<packagereq type="default">rubygem-multi-select-rails-doc</packagereq>
<packagereq type="default">rubygem-net-ldap-doc</packagereq>
<packagereq type="default">rubygem-patternfly-sass-doc</packagereq>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

missing the main package?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's on line 75

@domcleal
Copy link
Contributor

Please let me know when you have a set of packages tested together. It should be possible to use mockchain with the configs provided in the mock/ directory to build all of these packages in sequence and then the SRPM of foreman.

At the moment they're also going to have quite a few merge conflicts in foreman.spec, which'll make it a bit trickier.

@dLobatog
Copy link
Member Author

I'm building this temporary repo now with:

for dir in rubygem-*; do 
(cd "$dir" && 
tito build --srpm --test\
 --builder tito.builder.MockBuilder\
 --arg mock_config_dir=mock/ --arg mock=el7-scl); 
done

mockchain -r el7-scl -l /tmp/patternfly/ --recurse /tmp/tito/*.src.rpm

@dLobatog
Copy link
Member Author

Duh, it looks like rubygem(ejs) is not packaged. I'll take it from https://github.com/domcleal/sclo-ror42/tree/master/rubygem-ejs

@dLobatog
Copy link
Member Author

For the record I'm keeping a branch with all of the changes here

If that builds properly (currently it doesn't), I'll port the relevant changes to every PR on the checklist.

@dLobatog
Copy link
Member Author

Success! I'll start updating the PRs with the few changes I made, basically dLobatog@ad77506

screenshot from 2016-01-14 15-59-24

@dLobatog
Copy link
Member Author

Find the output of mockchain at patternfly.zip

@domcleal
Copy link
Contributor

You should then be able to build foreman itself on top of that. Get an SRPM with the latest develop code with cd foreman && tito release --scratch --arg jenkins_job=test_develop koji-foreman-nightly --dry-run, then run it on your existing chain repo.

@dLobatog
Copy link
Member Author

It's not building now because rubygem(sass) from ror41 is also too old.

Error: Package: tfm-rubygem-patternfly-sass-2.8.0-1.git.0.7154183.el7.centos.noarch (local_build_repo)
           Requires: rh-ror41-rubygem(sass) >= 3.4.15
           Installing: rh-ror41-rubygem-sass-3.3.8-1.el7.centos.noarch (scl-ror)
               rh-ror41-rubygem(sass) = 3.3.8

I'll bundle it too.

@dLobatog dLobatog force-pushed the rpm/patternfly-sass-2.8.0 branch 2 times, most recently from 4561f4f to 9eed59a Compare January 15, 2016 12:25
@dLobatog
Copy link
Member Author

@domcleal I built foreman with mockchain + the other packages. Find the zip here: patternfly.zip

I worked out of this branch https://github.com/dLobatog/foreman-packaging/commits/rpm/patternfly-all then split it all in all the various PRs you can see here.

@domcleal
Copy link
Contributor

Thanks, all looks good except for one comment on sprockets I think it was. I'm working through the PRs in this order to match the build order:

  • rubygem-autoprefixer-rails
  • rubygem-bootstrap-sass
  • rubygem-ejs
  • rubygem-font-awesome-sass
  • rubygem-patternfly-sass
  • rubygem-sass
  • rubygem-sass-rails
  • rubygem-sprockets
  • rubygem-sprockets-rails

Once the previous one's merged the next is almost certainly going to need a rebase. Don't worry about rebasing all of them as it'll just generate PR test load.

@domcleal
Copy link
Contributor

Could you rebase this please @dLobatog?

@dLobatog
Copy link
Member Author

@domcleal Rebased, it only conflicted on foreman.spec w/ autoprefixer-rails

domcleal added a commit that referenced this pull request Jan 18, 2016
Fixes #12970 - Package patternfly-sass
@domcleal domcleal merged commit c4351ff into theforeman:rpm/develop Jan 18, 2016
@domcleal
Copy link
Contributor

Thanks @dLobatog, merged and building.

@domcleal
Copy link
Contributor

The core Foreman package has been rebuilt and passed tests. Thanks for the updates @dLobatog!

This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants