diff options
Diffstat (limited to 'db/migrate/20221219122320_copy_clickhouse_connection_string_to_encrypted_var.rb')
-rw-r--r-- | db/migrate/20221219122320_copy_clickhouse_connection_string_to_encrypted_var.rb | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/db/migrate/20221219122320_copy_clickhouse_connection_string_to_encrypted_var.rb b/db/migrate/20221219122320_copy_clickhouse_connection_string_to_encrypted_var.rb new file mode 100644 index 00000000000..feaa2dab170 --- /dev/null +++ b/db/migrate/20221219122320_copy_clickhouse_connection_string_to_encrypted_var.rb @@ -0,0 +1,25 @@ +# frozen_string_literal: true +class CopyClickhouseConnectionStringToEncryptedVar < Gitlab::Database::Migration[2.1] + restrict_gitlab_migration gitlab_schema: :gitlab_main + + class ApplicationSetting < MigrationRecord + self.table_name = 'application_settings' + + attr_encrypted :product_analytics_clickhouse_connection_string, { + mode: :per_attribute_iv, + key: Settings.attr_encrypted_db_key_base_32, + algorithm: 'aes-256-gcm', + encode: true + }.merge(encode: false, encode_iv: false) + end + + def up + setting = ApplicationSetting.first + + setting.update!(product_analytics_clickhouse_connection_string: setting.clickhouse_connection_string) if setting + end + + def down + # no-op + end +end |