40 lines
1.3 KiB
YAML
40 lines
1.3 KiB
YAML
# MediaWiki DB init — creates mediawiki_user and mediawiki_db in MariaDB.
|
|
# MediaWiki's official image ships with mysqli/pdo_mysql but NOT pgsql,
|
|
# so we use MariaDB (already deployed) rather than the shared postgres.
|
|
# Run once before the install job.
|
|
|
|
apiVersion: batch/v1
|
|
kind: Job
|
|
metadata:
|
|
name: mediawiki-db-init
|
|
spec:
|
|
template:
|
|
spec:
|
|
restartPolicy: OnFailure
|
|
containers:
|
|
- name: mediawiki-db-init
|
|
image: mariadb:11
|
|
env:
|
|
- name: MYSQL_PWD
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: mariadb-secret
|
|
key: root-password
|
|
- name: MW_DB_PASSWORD
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: mediawiki-secret
|
|
key: db-password
|
|
command:
|
|
- /bin/sh
|
|
- -c
|
|
- |
|
|
mariadb -h mariadb -u root <<EOF
|
|
CREATE DATABASE IF NOT EXISTS mediawiki_db
|
|
CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
CREATE USER IF NOT EXISTS 'mediawiki_user'@'%'
|
|
IDENTIFIED BY '${MW_DB_PASSWORD}';
|
|
GRANT ALL PRIVILEGES ON mediawiki_db.*
|
|
TO 'mediawiki_user'@'%';
|
|
FLUSH PRIVILEGES;
|
|
EOF
|