From 4fd8a1ef42e5278d89cef9d525058a2e41455ace Mon Sep 17 00:00:00 2001 From: Veniamin Gvozdikov Date: Tue, 21 Sep 2021 19:39:09 +0300 Subject: [PATCH] Increase allowed length for user token in db (#328) After update to latest version gitea and use oauth, gitea returns long token in my case it was >800 characters. DB schema of the table has varchar(500), I updated it to varchar(1000) to solve the problem. * Fix length for gitea token/secret --- store/datastore/ddl/mysql/ddl_gen.go | 12 ++++++++++++ ...date_table_set_users_token_and_secret_length.sql | 3 +++ store/datastore/ddl/postgres/ddl_gen.go | 13 +++++++++++++ ...date_table_set_users_token_and_secret_length.sql | 4 ++++ store/datastore/ddl/sqlite/ddl_gen.go | 12 ++++++++++++ ...date_table_set_users_token_and_secret_length.sql | 3 +++ 6 files changed, 47 insertions(+) create mode 100644 store/datastore/ddl/mysql/files/028_update_table_set_users_token_and_secret_length.sql create mode 100644 store/datastore/ddl/postgres/files/028_update_table_set_users_token_and_secret_length.sql create mode 100644 store/datastore/ddl/sqlite/files/028_update_table_set_users_token_and_secret_length.sql diff --git a/store/datastore/ddl/mysql/ddl_gen.go b/store/datastore/ddl/mysql/ddl_gen.go index 09e9bc31d..77788962c 100644 --- a/store/datastore/ddl/mysql/ddl_gen.go +++ b/store/datastore/ddl/mysql/ddl_gen.go @@ -208,6 +208,10 @@ var migrations = []struct { name: "drop-allow-push-tags-deploys-columns", stmt: dropAllowPushTagsDeploysColumns, }, + { + name: "update-table-set-users-token-and-secret-length", + stmt: updateTableSetUsersTokenAndSecretLength, + }, } // Migrate performs the database migration. If the migration fails @@ -769,3 +773,11 @@ ALTER TABLE repos DROP COLUMN repo_fallback var dropAllowPushTagsDeploysColumns = ` ALTER TABLE repos DROP COLUMN repo_allow_push, DROP COLUMN repo_allow_deploys, DROP COLUMN repo_allow_tags ` + +// +// 028_update_table_set_users_token_and_secret_length.sql +// + +var updateTableSetUsersTokenAndSecretLength = ` +ALTER TABLE users MODIFY user_token varchar(1000), MODIFY user_secret varchar(1000); +` diff --git a/store/datastore/ddl/mysql/files/028_update_table_set_users_token_and_secret_length.sql b/store/datastore/ddl/mysql/files/028_update_table_set_users_token_and_secret_length.sql new file mode 100644 index 000000000..68f72ed71 --- /dev/null +++ b/store/datastore/ddl/mysql/files/028_update_table_set_users_token_and_secret_length.sql @@ -0,0 +1,3 @@ +-- name: update-table-set-users-token-and-secret-length + +ALTER TABLE users MODIFY user_token varchar(1000), MODIFY user_secret varchar(1000); diff --git a/store/datastore/ddl/postgres/ddl_gen.go b/store/datastore/ddl/postgres/ddl_gen.go index 29d65d636..1d9c0bf2c 100644 --- a/store/datastore/ddl/postgres/ddl_gen.go +++ b/store/datastore/ddl/postgres/ddl_gen.go @@ -208,6 +208,10 @@ var migrations = []struct { name: "drop-allow-push-tags-deploys-columns", stmt: dropAllowPushTagsDeploysColumns, }, + { + name: "update-table-set-users-token-and-secret-length", + stmt: updateTableSetUsersTokenAndSecretLength, + }, } // Migrate performs the database migration. If the migration fails @@ -771,3 +775,12 @@ ALTER TABLE repos DROP COLUMN repo_fallback var dropAllowPushTagsDeploysColumns = ` ALTER TABLE repos DROP COLUMN repo_allow_push, DROP COLUMN repo_allow_deploys, DROP COLUMN repo_allow_tags ` + +// +// 028_update_table_set_users_token_and_secret_length.sql +// + +var updateTableSetUsersTokenAndSecretLength = ` +ALTER TABLE users ALTER COLUMN user_token TYPE varchar(1000); +ALTER TABLE users ALTER COLUMN user_secret TYPE varchar(1000); +` diff --git a/store/datastore/ddl/postgres/files/028_update_table_set_users_token_and_secret_length.sql b/store/datastore/ddl/postgres/files/028_update_table_set_users_token_and_secret_length.sql new file mode 100644 index 000000000..3bdec1580 --- /dev/null +++ b/store/datastore/ddl/postgres/files/028_update_table_set_users_token_and_secret_length.sql @@ -0,0 +1,4 @@ +-- name: update-table-set-users-token-and-secret-length + +ALTER TABLE users ALTER COLUMN user_token TYPE varchar(1000); +ALTER TABLE users ALTER COLUMN user_secret TYPE varchar(1000); diff --git a/store/datastore/ddl/sqlite/ddl_gen.go b/store/datastore/ddl/sqlite/ddl_gen.go index bf11780d5..fbf7e08cb 100644 --- a/store/datastore/ddl/sqlite/ddl_gen.go +++ b/store/datastore/ddl/sqlite/ddl_gen.go @@ -212,6 +212,10 @@ var migrations = []struct { name: "drop-allow-push-tags-deploys-columns", stmt: dropAllowPushTagsDeploysColumns, }, + { + name: "update-table-set-users-token-and-secret-length", + stmt: updateTableSetUsersTokenAndSecretLength, + }, } // Migrate performs the database migration. If the migration fails @@ -870,3 +874,11 @@ DROP TABLE repos; ALTER TABLE repos_new RENAME TO repos; COMMIT; ` + +// +// 028_update_table_set_users_token_and_secret_length.sql +// + +var updateTableSetUsersTokenAndSecretLength = ` + +` diff --git a/store/datastore/ddl/sqlite/files/028_update_table_set_users_token_and_secret_length.sql b/store/datastore/ddl/sqlite/files/028_update_table_set_users_token_and_secret_length.sql new file mode 100644 index 000000000..a45fb212a --- /dev/null +++ b/store/datastore/ddl/sqlite/files/028_update_table_set_users_token_and_secret_length.sql @@ -0,0 +1,3 @@ +-- name: update-table-set-users-token-and-secret-length + +-- noop since sqlite do use TEXT