Hello community, here is the log from the commit of package hawk for openSUSE:Factory checked in at 2013-12-08 19:27:12 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/hawk (Old) and /work/SRC/openSUSE:Factory/.hawk.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "hawk" Changes: -------- --- /work/SRC/openSUSE:Factory/hawk/hawk.changes 2013-12-02 07:22:35.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.hawk.new/hawk.changes 2013-12-08 19:27:13.000000000 +0100 @@ -1,0 +2,13 @@ +Fri Dec 6 12:13:34 UTC 2013 - [email protected] + +- GUI: ui.popupmenu: Ensure menu appears over simulator dialog +- Misc: hb_report: Catch ArgumentError when parsing hb_report output + (bnc#854060) +- Misc: Use crm_simulate instead of ptest (bnc#854050) +- Misc: Node model: Find nodes by uname (bnc#854039) +- Build: Various minor cleanup for travis-ci integration +- Build: Use brakeman instead of scanny for security testing +- Build: Bump spec file version to 0.6.2 +- Upstream version cs:d28c6e8 + +------------------------------------------------------------------- Old: ---- hawk-0.6.1+git.1384513700.b11f8c7.tar.bz2 New: ---- hawk-0.6.2+git.1386336132.d28c6e8.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ hawk.spec ++++++ --- /var/tmp/diff_new_pack.0AaM2E/_old 2013-12-08 19:27:13.000000000 +0100 +++ /var/tmp/diff_new_pack.0AaM2E/_new 2013-12-08 19:27:13.000000000 +0100 @@ -41,7 +41,7 @@ Summary: HA Web Konsole License: GPL-2.0 Group: %{pkg_group} -Version: 0.6.1+git.1384513700.b11f8c7 +Version: 0.6.2+git.1386336132.d28c6e8 Release: 0 Url: http://www.clusterlabs.org/wiki/Hawk Source: %{name}-%{version}.tar.bz2 ++++++ _service ++++++ --- /var/tmp/diff_new_pack.0AaM2E/_old 2013-12-08 19:27:13.000000000 +0100 +++ /var/tmp/diff_new_pack.0AaM2E/_new 2013-12-08 19:27:13.000000000 +0100 @@ -3,7 +3,7 @@ <param name="url">git://github.com/ClusterLabs/hawk.git</param> <param name="scm">git</param> <param name="exclude">.git</param> - <param name="versionformat">0.6.1+git.%ct.%h</param> + <param name="versionformat">0.6.2+git.%ct.%h</param> <param name="revision">master</param> </service> ++++++ hawk-0.6.1+git.1384513700.b11f8c7.tar.bz2 -> hawk-0.6.2+git.1386336132.d28c6e8.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/.travis.yml new/hawk-0.6.2+git.1386336132.d28c6e8/.travis.yml --- old/hawk-0.6.1+git.1384513700.b11f8c7/.travis.yml 2013-08-20 10:32:04.000000000 +0200 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/.travis.yml 2013-12-06 12:20:30.000000000 +0100 @@ -4,13 +4,9 @@ - rails-2_3 - sle-11-sp2 rvm: - - "1.8.7" - "1.9.2" - "1.9.3" - - jruby-18mode - - jruby-19mode - - rbx-18mode - - rbx-19mode + - "2.0.0" gemfile: hawk/Gemfile -script: sh -c 'cd hawk && if [ "$TRAVIS_RUBY_VERSION" = "rbx-19mode" ]; then bundle exec rake scanny ; fi && bundle exec rake' +script: sh -c 'cd hawk && bundle exec rake brakeman:run && bundle exec rake' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/ChangeLog new/hawk-0.6.2+git.1386336132.d28c6e8/ChangeLog --- old/hawk-0.6.1+git.1384513700.b11f8c7/ChangeLog 2013-09-30 10:36:39.000000000 +0200 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/ChangeLog 2013-12-06 13:12:48.000000000 +0100 @@ -1,3 +1,20 @@ +* Dec Nov 06 2013 Tim Serong <[email protected]> +- GUI: ui.popupmenu: Ensure menu appears over simulator dialog +- Misc: hb_report: Catch ArgumentError when parsing hb_report output + (bnc#854060) +- Misc: Use crm_simulate instead of ptest (bnc#854050) +- Misc: Node model: Find nodes by uname (bnc#854039) +- Build: Various minor cleanup for travis-ci integration +- Build: Use brakeman instead of scanny for security testing +- Build: Bump spec file version to 0.6.2 +- Upstream version cs:bd10c59 + +* Fri Nov 15 2013 Tim Serong <[email protected]> +- Build: Set TEXTDOMAIN=hawk (needed by gettext 3.x) +- Misc: crm_config: check properties exist before flagging readonly + (bnc#853345) +- Upstream version cs:b11f8c7 + * Mon Sep 30 2013 Tim Serong <[email protected]> - Build: Require rubypick for FC19+ - Upstream version cs:e2f7668 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/Makefile new/hawk-0.6.2+git.1386336132.d28c6e8/Makefile --- old/hawk-0.6.1+git.1384513700.b11f8c7/Makefile 2013-11-15 12:09:09.000000000 +0100 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/Makefile 2013-12-06 13:01:27.000000000 +0100 @@ -102,8 +102,9 @@ tools/hawk_invoke: tools/hawk_invoke.c tools/common.h gcc -fpie -pie $(CFLAGS) -o $@ $< +# TODO(should): Verify this is really clean (it won't get rid of .mo files, +# for example clean: - rm -rf hawk/locale rm -rf hawk/vendor rm -rf hawk/tmp rm -rf hawk/log diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/README.asciidoc new/hawk-0.6.2+git.1386336132.d28c6e8/README.asciidoc --- old/hawk-0.6.1+git.1384513700.b11f8c7/README.asciidoc 2013-08-20 10:32:04.000000000 +0200 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/README.asciidoc 2013-12-06 14:23:57.000000000 +0100 @@ -69,57 +69,47 @@ == Installation == -IMPORTANT NOTE: As of 2013-04-20, the master branch in this repo -builds against rails 3.2. This works fine on SUSE Linux, but the below -instructions have not yet been tested/verified on other distros. If -you run into trouble, you might try the rails-2_3 branch in the meantime. - === Dependencies === Hawk is a Ruby on Rails app which runs from a standalone instance -of lighttpd. All required Ruby gems are bundled into the Hawk package -at build time. Its runtime dependencies are thus: +of lighttpd. It requires: -* pacemaker +* crmsh +* graphviz +* graphviz-gd * lighttpd +* pacemaker * ruby - -When building Hawk from source, you will also need: - * rubygems +* rubygem-bundler +* rubygem-fast_gettext +* rubygem-gettext_i18n_rails * rubygem-rake * rubygem-rails >= 3.2 -* rubygem-gettext -* rubygem-gettext_i18n_rails -* rubygem-fast_gettext -* ruby-fcgi (openSUSE/SLES only) -* fdupes (openSUSE/SLES only) -* pam-devel -* glib2-devel -* libxml2-devel -* libpacemaker-devel (openSUSE/SLES) -* pacemaker-libs-devel (Fedora) +* rubygem-ruby-fcgi (openSUSE) +* rubypick (Fedora) +When building Hawk from source, you will also need rubygem-gettext and the pacemaker, glib2, libxml2 and pam devel libraries. === Installing The Easy Way === Hawk is included with SLE HA 11 SP1, openSUSE 11.4, and later -SUSE releases. Just install the RPM, then run: +SUSE releases. Recent versions are also available http://software.opensuse.org/download?project=network:ha-clustering:Stable&package=hawk[for download from OBS]. + +Just install the RPM, then run: -------------------------------------- # chkconfig hawk on -------------------------------------- -------------------------------------- -# rchawk start +# /etc/init.d/hawk start -------------------------------------- - === Installing The Other Easy Way === If you have a SUSE- or Fedora-based system, you can build an RPM easily from the source tree. Just clone this git repo, -and run "make rpm". Note that as of 2012-04-27, Hawk expects -rails 2.3.x, not rails 3. +and run "make rpm". Once built, install the RPM on your cluster nodes and: @@ -130,8 +120,7 @@ # /etc/init.d/hawk start -------------------------------------- - -=== The Hard Way === +=== Installing The Hard Way === If the above RPM build doesn't work for you, you can build and install straight from the source tree, but _read the Makefile first_ to ensure @@ -155,6 +144,10 @@ # sudo make WWW_BASE=/var/www INIT_STYLE=redhat install -------------------------------------- +=== Installing The Other Hard Way === + +Grab the SRPM from OBS, for example try the one in http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/Fedora_19/src/ if you're using Fedora 19, and build that. + == A Note on SSL Certificates == diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/doc/notes.txt new/hawk-0.6.2+git.1386336132.d28c6e8/doc/notes.txt --- old/hawk-0.6.1+git.1384513700.b11f8c7/doc/notes.txt 2013-08-20 10:32:04.000000000 +0200 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/doc/notes.txt 2013-12-06 12:20:30.000000000 +0100 @@ -25,6 +25,14 @@ functional area for larger changes or component/file name for smaller changes. +== Tagging Releases == + +Use annotated tags, e.g.: + +--------------------------------------------------- +# git tag -a hawk-X.Y.Z -m 'Tag Hawk version X.Y.Z' +--------------------------------------------------- + == Hacking == === @attributes in CibObject subclasses === diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/doc/scanny.txt new/hawk-0.6.2+git.1386336132.d28c6e8/doc/scanny.txt --- old/hawk-0.6.1+git.1384513700.b11f8c7/doc/scanny.txt 2013-08-20 10:32:04.000000000 +0200 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/doc/scanny.txt 1970-01-01 01:00:00.000000000 +0100 @@ -1,20 +0,0 @@ -Using Scanny -============ - -To test for security vulnerabilites with Scanny -(https://github.com/openSUSE/scanny) you need rubinius. -(http://rubini.us/). Once you've got rubinius installed, -install the scanny gem: - ----------------------------------------------------------- -# sudo /usr/local/rubinius/2.0/bin/gem -X19 install scanny ----------------------------------------------------------- - -Then run scanny: - -------------------------------------------------- -# cd hawk -# /usr/local/rubinius/2.0/bin/ruby -X19 \ - /usr/local/rubinius/2.0/gems/1.9/bin/scanny -------------------------------------------------- - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/Gemfile new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/Gemfile --- old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/Gemfile 2013-08-20 10:32:04.000000000 +0200 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/Gemfile 2013-12-06 13:01:27.000000000 +0100 @@ -45,11 +45,13 @@ end group :test do - # Need gem source for travis-ci - source 'https://rubygems.org' - gem 'rake' - # This test is duplicated in lib/tasks/scanny.rake, and needs to match - # the conditions in lib/scanny/ruby_version_check.rb in the scanny gem - gem 'scanny' if defined?(RUBY_ENGINE) && RUBY_ENGINE == "rbx" && RUBY_VERSION >= '1.9' + # This check ensures Bundler doesn't look at these gems when it's invoked + # by magic during rake gettext:pack... + if ENV['RAILS_ENV'] == "test" + # Need gem source for travis-ci + source 'https://rubygems.org' + gem 'rake' + gem 'brakeman' + end end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/app/assets/stylesheets/ui.popupmenu.css new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/app/assets/stylesheets/ui.popupmenu.css --- old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/app/assets/stylesheets/ui.popupmenu.css 2013-08-20 10:32:04.000000000 +0200 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/app/assets/stylesheets/ui.popupmenu.css 2013-12-06 13:01:27.000000000 +0100 @@ -8,7 +8,8 @@ background: #ddd; border: 1px solid #888; padding: 0; - z-index: 1; + /* Needs to be above simulator dialog, which is z-index 1004 */ + z-index: 10000; } .ui-popupmenu a diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/app/controllers/explorer_controller.rb new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/app/controllers/explorer_controller.rb --- old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/app/controllers/explorer_controller.rb 2013-08-20 10:32:04.000000000 +0200 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/app/controllers/explorer_controller.rb 2013-12-06 12:20:30.000000000 +0100 @@ -156,7 +156,7 @@ require "tempfile" tmpfile = Tempfile.new("hawk_dot") tmpfile.close - Util.safe_x("/usr/sbin/ptest", "-x", tpath, + Util.safe_x("/usr/sbin/crm_simulate", "-x", tpath, params[:format] == "xml" ? "-G" : "-D", tmpfile.path) # TODO(must): handle failure of above diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/app/models/cib_object.rb new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/app/models/cib_object.rb --- old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/app/models/cib_object.rb 2013-08-20 10:32:04.000000000 +0200 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/app/models/cib_object.rb 2013-12-06 12:20:30.000000000 +0100 @@ -88,10 +88,10 @@ # a parsed CIB in the Cib object. We should either *use* this, or # ensure CIB in Cib isn't parsed unless actually needed for the # status page. - def find(id) + def find(id, attr='id') begin xml = REXML::Document.new(Invoker.instance.cibadmin('-Ql', '--xpath', - "//configuration//*[self::node or self::primitive or self::template or self::clone or self::group or self::master or self::rsc_order or self::rsc_colocation or self::rsc_location or self::rsc_ticket][@id='#{id}']")) + "//configuration//*[self::node or self::primitive or self::template or self::clone or self::group or self::master or self::rsc_order or self::rsc_colocation or self::rsc_location or self::rsc_ticket][@#{attr}='#{id}']")) raise CibObject::CibObjectError, _('Unable to parse cibadmin output') unless xml.root elem = xml.elements[1] obj = class_from_element_name(elem.name).instantiate(elem) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/app/models/node.rb new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/app/models/node.rb --- old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/app/models/node.rb 2013-08-20 10:32:04.000000000 +0200 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/app/models/node.rb 2013-12-06 12:20:30.000000000 +0100 @@ -46,6 +46,18 @@ class << self + # Since pacemaker started using corosync node IDs as the node ID + # attribute, CibObject#find will fail when looking for nodes by + # their human-readable name, so have to override here + def find(id) + begin + super(id) + rescue CibObject::RecordNotFound + # Can't find by id attribute, try by uname attribute + super(id, "uname") + end + end + def instantiate(xml) node = allocate # TODO(should): Apparently this instance_variable_set business isn't necessary, @@ -58,7 +70,7 @@ Hash[xml.elements['utilization'].elements.collect {|e| [e.attributes['name'], { :total => e.attributes['value'].to_i } ] }] : {}) if (node.utilization.any?) - Util.safe_x('/usr/sbin/ptest', '-LU').split("\n").each do |line| + Util.safe_x('/usr/sbin/crm_simulate', '-LU').split("\n").each do |line| m = line.match(/^Remaining:\s+([^\s]+)\s+capacity:\s+(.*)$/) next unless m next unless m[1] == node.uname diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/lib/hb_report.rb new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/lib/hb_report.rb --- old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/lib/hb_report.rb 2013-08-20 10:32:04.000000000 +0200 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/lib/hb_report.rb 2013-12-06 12:20:30.000000000 +0100 @@ -76,10 +76,15 @@ # contents of errfile as array def err_lines err = [] - File.new(@errfile).read.split(/\n/).each do |e| - next if e.empty? - err << e - end if File.exists?(@errfile) + begin + File.new(@errfile).read.split(/\n/).each do |e| + next if e.empty? + err << e + end if File.exists?(@errfile) + rescue ArgumentError => e + # This will catch 'invalid byte sequence in UTF-8' (bnc#854060) + err << "ArgumentError: #{e.message}" + end err end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/lib/tasks/brakeman.rake new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/lib/tasks/brakeman.rake --- old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/lib/tasks/brakeman.rake 1970-01-01 01:00:00.000000000 +0100 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/lib/tasks/brakeman.rake 2013-12-06 12:20:30.000000000 +0100 @@ -0,0 +1,10 @@ +namespace :brakeman do + + desc "Run Brakeman" + task :run, :output_files do |t, args| + require 'brakeman' + + files = args[:output_files].split(' ') if args[:output_files] + Brakeman.run :app_path => ".", :output_files => files, :print_report => true + end +end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/lib/tasks/scanny.rake new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/lib/tasks/scanny.rake --- old/hawk-0.6.1+git.1384513700.b11f8c7/hawk/lib/tasks/scanny.rake 2013-08-20 10:32:04.000000000 +0200 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/hawk/lib/tasks/scanny.rake 1970-01-01 01:00:00.000000000 +0100 @@ -1,12 +0,0 @@ -# This test is duplicated in Gemfile, and needs to match -# the conditions in lib/scanny/ruby_version_check.rb in the scanny gem -if defined?(RUBY_ENGINE) && RUBY_ENGINE == "rbx" && RUBY_VERSION >= '1.9' - require "scanny/rake_task" - - Scanny::RakeTask.new do |t| - t.format = :stdout # you will see output on travis website - t.fail_on_error = false # security errors should not break build - end -else - print "\nWARNING: Not using Rubinius in 1.9 mode - scanny task skipped\n\n" -end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hawk-0.6.1+git.1384513700.b11f8c7/hawk.spec new/hawk-0.6.2+git.1386336132.d28c6e8/hawk.spec --- old/hawk-0.6.1+git.1384513700.b11f8c7/hawk.spec 2013-09-30 10:36:39.000000000 +0200 +++ new/hawk-0.6.2+git.1386336132.d28c6e8/hawk.spec 2013-12-06 13:12:48.000000000 +0100 @@ -41,7 +41,7 @@ Summary: HA Web Konsole License: GPL-2.0 Group: %{pkg_group} -Version: 0.6.1 +Version: 0.6.2 Release: 0 Url: http://www.clusterlabs.org/wiki/Hawk Source: %{name}-%{version}.tar.bz2 -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
