diff --git a/db/manifest b/db/manifest index e6568531a..7337e35b6 100755 --- a/db/manifest +++ b/db/manifest @@ -235,3 +235,4 @@ user_online.sql icecast_source_changes.sql diagnostics_user_id_index.sql jam_track_updates.sql +private_key_in_jam_track_rights.sql diff --git a/db/up/private_key_in_jam_track_rights.sql b/db/up/private_key_in_jam_track_rights.sql new file mode 100644 index 000000000..6bd4ff223 --- /dev/null +++ b/db/up/private_key_in_jam_track_rights.sql @@ -0,0 +1 @@ +ALTER TABLE jam_track_rights ADD COLUMN private_key VARCHAR; \ No newline at end of file diff --git a/ruby/lib/jam_ruby/jam_tracks_manager.rb b/ruby/lib/jam_ruby/jam_tracks_manager.rb index 7caaf69d5..e9518b549 100644 --- a/ruby/lib/jam_ruby/jam_tracks_manager.rb +++ b/ruby/lib/jam_ruby/jam_tracks_manager.rb @@ -55,6 +55,7 @@ module JamRuby jam_track_right.url.store!(File.open(output_jkz, "rb")) jam_track_right.signed=true jam_track_right.downloaded_since_sign=false + jam_track_right.private_key=File.read("#{tmp_dir}/skey.pem") jam_track_right.save! end end # mktmpdir diff --git a/web/spec/controllers/api_jam_tracks_controller_spec.rb b/web/spec/controllers/api_jam_tracks_controller_spec.rb index ad65e314d..2459e5bcf 100644 --- a/web/spec/controllers/api_jam_tracks_controller_spec.rb +++ b/web/spec/controllers/api_jam_tracks_controller_spec.rb @@ -87,6 +87,7 @@ describe ApiJamTracksController do get :download, :id => @jam_track.id response.status.should == 202 right.download_count.should eq(0) + right.private_key.should be_nil JamTracksBuilder.should have_queued(right.id).in(:jam_tracks_builder) @@ -96,6 +97,7 @@ describe ApiJamTracksController do JamTracksBuilder.should_not have_queued(right.id).in(:jam_tracks_builder) right.reload + right.private_key.should_not be_nil right.download_count.should eq(0) get :download, :id => @jam_track.id