679d0f6ba9
The MongoDB 8.0 apt repository configuration for Ubuntu 24.04 downloads the GPG key into /usr/share/keyrings/mongodb-server-8.0.gpg but the deb source line does not reference it via signed-by. On standard Ubuntu 24.04 systems, apt treats unsigned repositories as a hard error, causing stack.sh to fail with exit code 100. Add signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg to the deb line in both devstack/plugin.sh and tools/test-setup.sh, matching the pattern already used for Debian 12/13 in test-setup.sh. Closes-Bug: #2155845 Change-Id: I89a6fa87c4156aff1896aedc67080d637df62fae Signed-off-by: Martin André <m.andre@redhat.com>
73 lines
3.0 KiB
Bash
Executable File
73 lines
3.0 KiB
Bash
Executable File
#!/bin/bash -xe
|
|
|
|
# This script will be run by OpenStack CI before unit tests are run,
|
|
# it sets up the test system as needed.
|
|
# Developers should setup their test systems in a similar way.
|
|
|
|
# This setup needs to be run as a user that can run sudo.
|
|
|
|
# The root password for the MySQL database; pass it in via
|
|
# MYSQL_ROOT_PW.
|
|
DB_ROOT_PW=${MYSQL_ROOT_PW:-insecure_slave}
|
|
|
|
# This user and its password are used by the tests, if you change it,
|
|
# your tests might fail.
|
|
DB_USER=openstack_citest
|
|
DB_PW=openstack_citest
|
|
|
|
sudo -H mysqladmin -u root password $DB_ROOT_PW
|
|
|
|
# It's best practice to remove anonymous users from the database. If
|
|
# a anonymous user exists, then it matches first for connections and
|
|
# other connections from that host will not work.
|
|
sudo -H mysql -u root -p$DB_ROOT_PW -h localhost -e "
|
|
DELETE FROM mysql.user WHERE User='';
|
|
FLUSH PRIVILEGES;
|
|
CREATE USER '$DB_USER'@'%' IDENTIFIED BY '$DB_PW';
|
|
GRANT ALL PRIVILEGES ON *.* TO '$DB_USER'@'%' WITH GRANT OPTION;"
|
|
|
|
# Now create our database.
|
|
mysql -u $DB_USER -p$DB_PW -h 127.0.0.1 -e "
|
|
SET default_storage_engine=MYISAM;
|
|
DROP DATABASE IF EXISTS openstack_citest;
|
|
CREATE DATABASE openstack_citest CHARACTER SET utf8;"
|
|
|
|
# TO fix the mongodb issue in ubuntu
|
|
ubuntu_version=$(source /etc/os-release ; echo $VERSION_ID)
|
|
if [[ $ubuntu_version == '24.04' ]]; then
|
|
if [[ ! -d /etc/apt/sources.list.d ]]; then
|
|
sudo mkdir /etc/apt/sources.list.d
|
|
fi
|
|
curl -fsSL https://pgp.mongodb.com/server-8.0.asc | \
|
|
sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg \
|
|
--dearmor
|
|
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu noble/mongodb-org/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list
|
|
sudo apt update
|
|
sudo apt install -y mongodb-org
|
|
sudo systemctl restart mongod
|
|
sudo systemctl status mongod
|
|
elif [[ $ubuntu_version == '12' ]]; then
|
|
curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | \
|
|
sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg \
|
|
--dearmor
|
|
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/debian bookworm/mongodb-org/8.0 main" | \
|
|
sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list
|
|
sudo apt update
|
|
sudo apt install -y mongodb-org
|
|
sudo systemctl restart mongod
|
|
sudo systemctl status mongod
|
|
elif [[ $ubuntu_version == '13' ]]; then
|
|
curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | \
|
|
sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg \
|
|
--dearmor
|
|
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/debian bookworm/mongodb-org/8.0 main" | \
|
|
sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list
|
|
sudo apt update
|
|
sudo apt install -y mongodb-org
|
|
sudo systemctl restart mongod
|
|
sudo systemctl status mongod
|
|
else
|
|
sudo apt-get install -y mongodb
|
|
sudo systemctl restart mongodb
|
|
fi
|