%global gem_name actioncable %global recompile_js 1 Name: rubygem-%{gem_name} Version: 5.2.3 Release: 1 Summary: WebSocket framework for Rails License: MIT URL: http://rubyonrails.org Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem Source1: https://github.com/rails/rails/archive/v%{version}.tar.gz # Recompile with script extracted from # https://github.com/rails/rails/blob/71d406697266fc2525706361b86aeb85183fe4c7/actioncable/Rakefile Source2: recompile_js.rb BuildRequires: ruby(release) rubygems-devel > 1.3.1 ruby >= 2.2.2 BuildRequires: rubygem(actionpack) = %{version} rubygem(mocha) rubygem(nio4r) rubygem(puma) BuildRequires: %{_bindir}/redis-server rubygem(redis) rubygem(websocket-driver) %if 0%{?recompile_js} > 0 BuildRequires: rubygem(coffee-script) rubygem(sprockets) nodejs %endif BuildArch: noarch %description Structure many real-time application concerns into channels over a single WebSocket connection. %package doc Summary: Documentation for %{name} Requires: %{name} = %{version}-%{release} BuildArch: noarch %description doc Documentation for %{name}. %prep gem unpack %{SOURCE0} %setup -q -D -T -n %{gem_name}-%{version} -a 1 ln -s rails-%{version}/%{gem_name}/app app gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec %build %if 0%{?recompile_js} > 0 cp -a %{SOURCE2} . rm -rf lib/assets/compiled RUBYOPT=-Ilib ruby recompile_js.rb %endif gem build %{gem_name}.gemspec %gem_install %install mkdir -p %{buildroot}%{gem_dir} cp -a .%{gem_dir}/* \ %{buildroot}%{gem_dir}/ %check pushd .%{gem_instdir} tar xzvf %{SOURCE1} ln -s rails-%{version}/%{gem_name}/test test mv test/client_test.rb{,.disable} mv test/subscription_adapter/postgresql_test.rb{,.disable} REDIS_DIR=$(mktemp -d) redis-server --dir $REDIS_DIR --pidfile $REDIS_DIR/redis.pid --daemonize yes ruby -Ilib:test -e 'Dir.glob "./test/**/*_test.rb", &method(:require)' kill -INT $(cat $REDIS_DIR/redis.pid) popd %files %dir %{gem_instdir} %license %{gem_instdir}/MIT-LICENSE %{gem_libdir} %exclude %{gem_cache} %{gem_spec} %files doc %doc %{gem_docdir} %doc %{gem_instdir}/CHANGELOG.md %doc %{gem_instdir}/README.md %changelog * Thu Aug 20 2020 shenleizhao - 5.2.3-1 - package init