Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
D
drupal-operations
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
drupal
paas
drupal-operations
Commits
4be6671c
Commit
4be6671c
authored
3 years ago
by
Konstantinos Samaras-Tsakiris
Browse files
Options
Downloads
Patches
Plain Diff
Fix primary key auto increment
parent
8cc1ea8f
No related branches found
No related tags found
1 merge request
!18
Fix primary key auto increment
Pipeline
#3740465
failed
3 years ago
Stage: build
Changes
2
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
scripts/admin/auto-increment/reset-auto-increment_all-sites.sh
+47
-0
47 additions, 0 deletions
...ts/admin/auto-increment/reset-auto-increment_all-sites.sh
scripts/admin/auto-increment/tables-primarykey
+140
-0
140 additions, 0 deletions
scripts/admin/auto-increment/tables-primarykey
with
187 additions
and
0 deletions
scripts/admin/auto-increment/reset-auto-increment_all-sites.sh
0 → 100755
+
47
−
0
View file @
4be6671c
#!/bin/bash
# 1. Get all the DB credentials
# Decode them
# And store them in a single line each in a file. Each line is a JSON for a single site.
#oc get -o json secret -l dbcredentials -A | \
# jq -r '.items[] | .data[] |= @base64d | {"name": (.metadata.namespace + .metadata.name), "data": .data}' | \
# jq -r -c '{"name":.name} + {"data": (.data | to_entries | map(("export "+.key+"="+.value)))}' > secrets.json
# 2. Create a DB env file for each site
[[
!
-d
"sites"
]]
&&
mkdir
"sites"
create_env_file
(){
JSON
=
"
$1
"
filename
=
$(
jq
-r
'.name'
<<<
"
$JSON
"
)
jq
-r
'.data[]'
<<<
"
$JSON
"
>
"sites/
$filename
"
}
while
IFS
=
read
-r
siteJSON
;
do
create_env_file
"
$siteJSON
"
done
< secrets.json
# 3. Perform the operation for each DB
# reset-auto-increment.sh
TABLES_FILE
=
"
`
dirname
$0
`
/tables-primarykey"
sql_connect
(){
echo
"mysql --user=
$dbUser
--password=
$dbPassword
--database=
$dbName
--host=
$dbHost
--port=
$dbPort
-A -s"
}
export
-f
sql_connect
reset_table
(){
TABLE
=
"
$0
"
COLUMN
=
"
$1
"
connstr
=
"
`
sql_connect
`
"
NEW_INCR
=
$((
$(
echo
"SELECT max(
$COLUMN
) from
$TABLE
;"
|
$connstr
)
+
1
))
echo
"ALTER TABLE
$TABLE
AUTO_INCREMENT =
$NEW_INCR
;"
|
$connstr
}
export
-f
reset_table
for
site
in
`
ls
sites
`
;
do
.
"sites/
$site
"
cat
"
$TABLES_FILE
"
| xargs
-L1
bash
-c
'reset_table $1'
done
This diff is collapsed.
Click to expand it.
scripts/admin/auto-increment/tables-primarykey
0 → 100644
+
140
−
0
View file @
4be6671c
block_content id
block_content_revision revision_id
comment cid
feeds_feed fid
feeds_subscription fid
file_managed fid
flood fid
locales_source lid
menu_link_content id
menu_link_content_revision revision_id
menu_tree mlid
migrate_message_block_content_body_field msgid
migrate_message_block_content_entity_display msgid
migrate_message_block_content_entity_form_display msgid
migrate_message_block_content_type msgid
migrate_message_d6_custom_block msgid
migrate_message_d7_authmap msgid
migrate_message_d7_block msgid
migrate_message_d7_color msgid
migrate_message_d7_comment msgid
migrate_message_d7_comment_entity_display msgid
migrate_message_d7_comment_entity_form_display msgid
migrate_message_d7_comment_entity_form_display_subject msgid
migrate_message_d7_comment_field msgid
migrate_message_d7_comment_field_instance msgid
migrate_message_d7_comment_type msgid
migrate_message_d7_custom_block msgid
migrate_message_d7_dblog_settings msgid
migrate_message_d7_field msgid
migrate_message_d7_field_formatter_settings msgid
migrate_message_d7_field_instance msgid
migrate_message_d7_field_instance_widget_insert_settings msgid
migrate_message_d7_field_instance_widget_settings msgid
migrate_message_d7_file msgid
migrate_message_d7_file_private msgid
migrate_message_d7_filter_format msgid
migrate_message_d7_filter_settings msgid
migrate_message_d7_global_theme_settings msgid
migrate_message_d7_image_settings msgid
migrate_message_d7_image_styles msgid
migrate_message_d7_language_content_settings msgid
migrate_message_d7_language_negotiation_settings msgid
migrate_message_d7_language_types msgid
migrate_message_d7_matomo_settings msgid
migrate_message_d7_matomo_user_settings msgid
migrate_message_d7_menu msgid
migrate_message_d7_menu_links msgid
migrate_message_d7_node__article msgid
migrate_message_d7_node__certificates msgid
migrate_message_d7_node__contact_name msgid
migrate_message_d7_node__getting_started_info msgid
migrate_message_d7_node__image_upload msgid
migrate_message_d7_node__job_posting msgid
migrate_message_d7_node__management msgid
migrate_message_d7_node__mou msgid
migrate_message_d7_node__news msgid
migrate_message_d7_node__page msgid
migrate_message_d7_node__panel msgid
migrate_message_d7_node__security msgid
migrate_message_d7_node__tools msgid
migrate_message_d7_node__webform msgid
migrate_message_d7_node_revision__article msgid
migrate_message_d7_node_revision__certificates msgid
migrate_message_d7_node_revision__contact_name msgid
migrate_message_d7_node_revision__getting_started_info msgid
migrate_message_d7_node_revision__image_upload msgid
migrate_message_d7_node_revision__job_posting msgid
migrate_message_d7_node_revision__management msgid
migrate_message_d7_node_revision__mou msgid
migrate_message_d7_node_revision__news msgid
migrate_message_d7_node_revision__page msgid
migrate_message_d7_node_revision__panel msgid
migrate_message_d7_node_revision__security msgid
migrate_message_d7_node_revision__tools msgid
migrate_message_d7_node_revision__webform msgid
migrate_message_d7_node_settings msgid
migrate_message_d7_node_title_label msgid
migrate_message_d7_node_type msgid
migrate_message_d7_path_redirect msgid
migrate_message_d7_pathauto_patterns msgid
migrate_message_d7_pathauto_settings msgid
migrate_message_d7_rdf_mapping msgid
migrate_message_d7_search_page msgid
migrate_message_d7_search_settings msgid
migrate_message_d7_shortcut msgid
migrate_message_d7_shortcut_set msgid
migrate_message_d7_shortcut_set_users msgid
migrate_message_d7_simplesamlphp_auth msgid
migrate_message_d7_syslog_settings msgid
migrate_message_d7_system_authorize msgid
migrate_message_d7_system_cron msgid
migrate_message_d7_system_date msgid
migrate_message_d7_system_file msgid
migrate_message_d7_system_mail msgid
migrate_message_d7_system_performance msgid
migrate_message_d7_taxonomy_term__country msgid
migrate_message_d7_taxonomy_term__tags msgid
migrate_message_d7_taxonomy_vocabulary msgid
migrate_message_d7_theme_settings msgid
migrate_message_d7_url_alias msgid
migrate_message_d7_user msgid
migrate_message_d7_user_flood msgid
migrate_message_d7_user_mail msgid
migrate_message_d7_user_role msgid
migrate_message_d7_view_modes msgid
migrate_message_default_language msgid
migrate_message_file_settings msgid
migrate_message_language msgid
migrate_message_language_prefixes_and_domains msgid
migrate_message_locale_settings msgid
migrate_message_menu_settings msgid
migrate_message_system_image msgid
migrate_message_system_image_gd msgid
migrate_message_system_logging msgid
migrate_message_system_maintenance msgid
migrate_message_system_rss msgid
migrate_message_system_site msgid
migrate_message_taxonomy_settings msgid
migrate_message_text_settings msgid
migrate_message_update_settings msgid
migrate_message_user_picture_entity_display msgid
migrate_message_user_picture_entity_form_display msgid
migrate_message_user_picture_field msgid
migrate_message_user_picture_field_instance msgid
node nid
node_revision vid
old_5e1f1a_url_alias pid
openid_connect_authmap aid
path_alias id
path_alias_revision revision_id
queue item_id
redirect rid
sequences value
shortcut id
taxonomy_term_data tid
taxonomy_term_revision revision_id
watchdog wid
webform_submission sid
locales_location lid
users uid
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment