Exclude other_rabbitmq when running start-others. And fix some issues

This commit is contained in:
Marcial Rosales 2025-05-08 18:29:54 +02:00
parent 98ba31a381
commit 81cf5f2e46
15 changed files with 34 additions and 124 deletions

View File

@ -194,6 +194,6 @@ start_docker_rabbitmq() {
-v ${TEST_DIR}:/config \
${RABBITMQ_DOCKER_IMAGE}
wait_for_message rabbitmq "Server startup complete"
wait_for_message rabbitmq "Server startup complete"
end "RabbitMQ ready"
}

View File

@ -594,8 +594,8 @@ determine_required_components_including_rabbitmq() {
}
determine_required_components_excluding_rabbitmq() {
for (( i=1; i<=$#; i++)) {
if [[ $i != "rabbitmq" ]]; then
eval val='$'$i
eval val='$'$i
if [[ "$val" != "rabbitmq" ]] && [[ "$val" != "other_rabbitmq" ]]; then
REQUIRED_COMPONENTS+=( "$val" )
fi
}

View File

@ -1,6 +1,6 @@
var http = require('http'),
httpProxy = require('http-proxy');
const {log, error} = require('./utils.js')
const XMLHttpRequest = require('xmlhttprequest').XMLHttpRequest
const rabbitmq_url = process.env.RABBITMQ_URL || 'http://0.0.0.0:15672/';
@ -35,6 +35,13 @@ log("fakeproxy listening on port " + port + ". RABBITMQ_URL=" + rabbitmq_url)
server.listen(port);
function log(message) {
console.log(new Date() + " " + message)
}
function error(message) {
console.error(new Date() + " " + message)
}
function default_if_blank(value, defaultValue) {
if (typeof value === "undefined" || value === null || value == "") {
return defaultValue;

View File

@ -3,7 +3,8 @@
SCRIPT="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
TEST_CASES_PATH=/exchanges
TEST_CONFIG_PATH=/mgt-only
TEST_CONFIG_PATH=/basic-auth
PROFILES="disable-metrics"
source $SCRIPT/../../bin/suite_template $@
run

View File

@ -0,0 +1 @@
export DISABLE_METRICS=true

View File

@ -8,6 +8,8 @@ const OverviewPage = require('../pageobjects/OverviewPage')
const ExchangesPage = require('../pageobjects/ExchangesPage')
const ExchangePage = require('../pageobjects/ExchangePage')
const DISABLE_METRICS = process.env.DISABLE_METRICS || false
describe('Exchange management', function () {
let login
let exchanges
@ -76,7 +78,6 @@ describe('Exchange management', function () {
await exchanges.clickOnSelectTableColumns()
let table = await exchanges.getSelectableTableColumns()
assert.equal(2, table.length)
let overviewGroup = {
"name" : "Overview:",
"columns": [
@ -88,14 +89,18 @@ describe('Exchange management', function () {
}
assert.equal(JSON.stringify(table[0]), JSON.stringify(overviewGroup))
let messageRatesGroup = {
"name" : "Message rates:",
"columns": [
{"name:":"rate in","id":"checkbox-exchanges-rate-in"},
{"name:":"rate out","id":"checkbox-exchanges-rate-out"}
]
if (!DISABLE_METRICS) {
assert.equal(table.length, 2)
let messageRatesGroup = {
"name" : "Message rates:",
"columns": [
{"name:":"rate in","id":"checkbox-exchanges-rate-in"},
{"name:":"rate out","id":"checkbox-exchanges-rate-out"}
]
}
assert.equal(JSON.stringify(table[1]), JSON.stringify(messageRatesGroup))
}
assert.equal(JSON.stringify(table[1]), JSON.stringify(messageRatesGroup))
})

View File

@ -1,15 +0,0 @@
[accept,amqp10_client,amqp_client,base64url,cowboy,cowlib,eetcd,gun,jose,
prometheus,rabbitmq_auth_backend_cache,
rabbitmq_auth_backend_http,rabbitmq_auth_backend_ldap,
rabbitmq_auth_backend_oauth2,rabbitmq_auth_mechanism_ssl,rabbitmq_aws,
rabbitmq_consistent_hash_exchange,rabbitmq_event_exchange,
rabbitmq_federation,rabbitmq_federation_management,
rabbitmq_jms_topic_exchange,rabbitmq_management,rabbitmq_management_agent,
rabbitmq_mqtt,rabbitmq_peer_discovery_aws,rabbitmq_peer_discovery_common,
rabbitmq_peer_discovery_consul,rabbitmq_peer_discovery_etcd,
rabbitmq_peer_discovery_k8s,rabbitmq_prometheus,rabbitmq_random_exchange,
rabbitmq_recent_history_exchange,rabbitmq_sharding,rabbitmq_shovel,
rabbitmq_shovel_management,rabbitmq_stomp,rabbitmq_stream,
rabbitmq_stream_common,rabbitmq_stream_management,rabbitmq_top,
rabbitmq_tracing,rabbitmq_trust_store,rabbitmq_web_dispatch,
rabbitmq_web_mqtt,rabbitmq_web_stomp].

View File

@ -1,81 +0,0 @@
{
"users": [
{
"name": "guest",
"password_hash": "Joz9zzUBOrX10lB3GisWN5oTXK+wj0gxS/nyrfTYmBOuhps5",
"hashing_algorithm": "rabbit_password_hashing_sha256",
"tags": [
"administrator"
],
"limits": {}
},
{
"name": "administrator-only",
"password_hash": "Joz9zzUBOrX10lB3GisWN5oTXK+wj0gxS/nyrfTYmBOuhps5",
"hashing_algorithm": "rabbit_password_hashing_sha256",
"tags": [
"administrator"
],
"limits": {}
},
{
"name": "management-only",
"password_hash": "Joz9zzUBOrX10lB3GisWN5oTXK+wj0gxS/nyrfTYmBOuhps5",
"hashing_algorithm": "rabbit_password_hashing_sha256",
"tags": [
"management"
],
"limits": {}
},
{
"name": "management",
"password_hash": "Joz9zzUBOrX10lB3GisWN5oTXK+wj0gxS/nyrfTYmBOuhps5",
"hashing_algorithm": "rabbit_password_hashing_sha256",
"tags": [
"management"
],
"limits": {}
},
{
"name": "monitoring-only",
"password_hash": "Joz9zzUBOrX10lB3GisWN5oTXK+wj0gxS/nyrfTYmBOuhps5",
"hashing_algorithm": "rabbit_password_hashing_sha256",
"tags": [
"monitoring"
],
"limits": {}
}
],
"vhosts": [
{
"name": "/"
},
{
"name": "other"
}
],
"permissions": [
{
"user": "guest",
"vhost": "/",
"configure": ".*",
"write": ".*",
"read": ".*"
},
{
"user": "guest",
"vhost": "other",
"configure": ".*",
"write": ".*",
"read": ".*"
},
{
"user": "management",
"vhost": "/",
"configure": ".*",
"write": ".*",
"read": ".*"
}
]
}

View File

@ -1 +0,0 @@
log.console.level = debug

View File

@ -1,7 +0,0 @@
auth_backends.1 = rabbit_auth_backend_internal
management.login_session_timeout = 150
management_agent.disable_metrics_collector = true
load_definitions = ${RABBITMQ_TEST_DIR}/imports/users.json
loopback_users = none

View File

@ -2,4 +2,4 @@
auth_backends.2 = rabbit_auth_backend_internal
management.oauth_disable_basic_auth = false
load_definitions = ${RABBITMQ_TEST_DIR}/imports/users.json
load_definitions = ${IMPORT_DIR}/users.json

View File

@ -1,2 +1,2 @@
load_definitions = ${RABBITMQ_TEST_DIR}/imports/users.json
load_definitions = ${IMPORT_DIR}/users.json

View File

@ -349,7 +349,7 @@ module.exports = class BasePage {
async chooseFile (locator, file) {
const element = await this.waitForDisplayed(locator)
const remote = require('selenium-webdriver/remote');
driver.setFileDetector(new remote.FileDetector);
this.driver.setFileDetector(new remote.FileDetector);
return element.sendKeys(file)
}
async acceptAlert () {

View File

@ -13,7 +13,7 @@ const TABLE_SECTION = By.css('div#main div#vhosts.section table.list')
module.exports = class VhostsAdminTab extends AdminTab {
async isLoaded () {
await this.waitForDisplayed(MAIN_SECTION)
return this.waitForDisplayed(MAIN_SECTION)
}
async searchForVhosts(vhost, regex = false) {
await this.sendKeys(FILTER_VHOST, vhost)

View File

@ -38,7 +38,7 @@ describe('Virtual Hosts in Admin tab', function () {
assert.equal(true, await vhostsTab.hasVhosts("/"))
})
it('find default vhost and view it', async function () {
await overview.clickOnOverviewTab()
//await overview.clickOnOverviewTab()
await overview.clickOnAdminTab()
await adminTab.clickOnVhosts()
await vhostsTab.clickOnVhost(await vhostsTab.searchForVhosts("/"), "/")
@ -49,7 +49,7 @@ describe('Virtual Hosts in Admin tab', function () {
})
it('vhost selectable columns', async function () {
await overview.clickOnOverviewTab()
//await overview.clickOnOverviewTab()
await overview.clickOnAdminTab()
await adminTab.clickOnVhosts()
await vhostsTab.searchForVhosts("/")
@ -105,7 +105,7 @@ describe('Virtual Hosts in Admin tab', function () {
before(async function() {
log("Creating vhost")
createVhost(getManagementUrl(), vhost, "selenium", "selenium-tag")
await overview.clickOnOverviewTab()
// await overview.clickOnOverviewTab()
await overview.clickOnAdminTab()
await adminTab.clickOnVhosts()
})