X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/cec0f7c11949b55b1c1589700641788ee3fd3ec4..53a9aa7651a9fed6d88f4ece0f8d4cd10a77a63f:/services/api/db/migrate/20160208210629_add_uuid_to_api_client_authorization.rb diff --git a/services/api/db/migrate/20160208210629_add_uuid_to_api_client_authorization.rb b/services/api/db/migrate/20160208210629_add_uuid_to_api_client_authorization.rb index 73b5fdfb9e..69da34c5af 100644 --- a/services/api/db/migrate/20160208210629_add_uuid_to_api_client_authorization.rb +++ b/services/api/db/migrate/20160208210629_add_uuid_to_api_client_authorization.rb @@ -6,12 +6,14 @@ class AddUuidToApiClientAuthorization < ActiveRecord::Migration def up add_column :api_client_authorizations, :uuid, :string add_index :api_client_authorizations, :uuid, :unique => true - - prefix = Server::Application.config.uuid_prefix + '-' + + + prefix = Server::Application.config.uuid_prefix + '-' + Digest::MD5.hexdigest('ApiClientAuthorization'.to_s).to_i(16).to_s(36)[-5..-1] + '-' update_sql <<-EOS -update api_client_authorizations set uuid = (select concat('#{prefix}', substring(api_token, length(api_token)-4), array_to_string(ARRAY (SELECT substring('0123456789abcdefghijklmnopqrstuvwxyz' FROM (ceil(random()*36))::int FOR 1) FROM generate_series(1, 10)), ''))); +update api_client_authorizations set uuid = (select concat('#{prefix}', +array_to_string(ARRAY (SELECT substring(api_token FROM (ceil(random()*36))::int FOR 1) FROM generate_series(1, 15)), '') +)); EOS change_column_null :api_client_authorizations, :uuid, false