[Reporting] Use lowercased server host settings (#33020) (#33037)

This commit is contained in:
Tim Sullivan 2019-03-13 08:41:45 -07:00 committed by GitHub
parent d21b567987
commit 969a33bb48
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 34 additions and 4 deletions

View file

@ -197,3 +197,27 @@ test(`uses basePath from server if job doesn't have a basePath when creating sav
'/sbp'
);
});
describe('config formatting', () => {
test(`lowercases server.host`, async () => {
mockServer = createMockServer({ settings: { 'server.host': 'COOL-HOSTNAME' } });
const { conditionalHeaders } = await getConditionalHeaders({
job: {},
filteredHeaders: {},
server: mockServer,
});
expect(conditionalHeaders.conditions.hostname).toEqual('cool-hostname');
});
test(`lowercases xpack.reporting.kibanaServer.hostname`, async () => {
mockServer = createMockServer({
settings: { 'xpack.reporting.kibanaServer.hostname': 'GREAT-HOSTNAME' },
});
const { conditionalHeaders } = await getConditionalHeaders({
job: {},
filteredHeaders: {},
server: mockServer,
});
expect(conditionalHeaders.conditions.hostname).toEqual('great-hostname');
});
});

View file

@ -15,14 +15,20 @@ export const getConditionalHeaders = ({
server: KbnServer;
}) => {
const config: ConfigObject = server.config();
const [hostname, port, basePath, protocol] = [
config.get('xpack.reporting.kibanaServer.hostname') || config.get('server.host'),
config.get('xpack.reporting.kibanaServer.port') || config.get('server.port'),
config.get('server.basePath'),
config.get('xpack.reporting.kibanaServer.protocol') || server.info.protocol,
] as [string, number, string, string];
const conditionalHeaders: ConditionalHeaders = {
headers: filteredHeaders,
conditions: {
hostname: config.get('xpack.reporting.kibanaServer.hostname') || config.get('server.host'),
port: config.get('xpack.reporting.kibanaServer.port') || config.get('server.port'),
basePath: config.get('server.basePath'),
protocol: config.get('xpack.reporting.kibanaServer.protocol') || server.info.protocol,
hostname: hostname.toLowerCase(),
port,
basePath,
protocol,
},
};