forked from lair-framework/browser-scripts
-
Notifications
You must be signed in to change notification settings - Fork 0
/
generate_url_list.js
47 lines (45 loc) · 1.17 KB
/
generate_url_list.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
/* eslint-disable no-unused-vars */
/* globals Session Hosts Services Meteor */
function generateURLList () {
// Generate a list of URLs for all http(s) services in the current project
//
// Created by: Dan Kottmann
// Usage: generateURLList()
// Requires client-side updates: false
var projectId = Session.get('projectId')
var q = {
'projectId': projectId
}
var hosts = Hosts.find(q).fetch()
if (!hosts) {
console.log('No hosts found')
return
}
var c = 0
hosts.forEach(function (host) {
var names = host.hostnames
var hostId = host._id
var query = {
'projectId': projectId,
'hostId': hostId
}
query.service = {
'$regex': 'web|www|ssl|http|https',
'$options': 'i'
}
var services = Services.find(query).fetch()
services.forEach(function (service) {
var protocol = 'http://'
if (service.service.match(/(ssl|https)/gi)) {
protocol = 'https://'
}
c++
console.log(protocol + host.ipv4 + ':' + service.port)
names.forEach(function (n) {
c++
console.log(protocol + n + ':' + service.port)
})
})
})
console.log(c + ' URL(s) generated')
}