Class: Detector::Vendor

Inherits:
Object
  • Object
show all
Defined in:
lib/detector/vendor.rb

Class Method Summary collapse

Class Method Details

.detect_provider(hostname) ⇒ Object



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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# File 'lib/detector/vendor.rb', line 4

def detect_provider(hostname)
  return nil unless hostname
  
  hostname = hostname.to_s.downcase
  
  case hostname
  when /amazon/, /aws/, /amazonaws/, /ec2/, /s3/, /dynamodb/, /rds\./, /elasticbeanstalk/
    "Amazon Web Services"
  when /google/, /googlecloud/, /appspot/, /gcp/, /compute\./, /cloud\.g/
    "Google Cloud Platform"
  when /azure/, /azurewebsites/, /cloudapp\./, /windows\.net/
    "Microsoft Azure"
  when /antimony/
    "Build.io"
  when /heroku/, /herokuapp/
    "Heroku"
  when /digitalocean/, /droplet/
    "DigitalOcean"
  when /linode/, /linodeobjects/
    "Linode"
  when /vultr/
    "Vultr"
  when /netlify/
    "Netlify"
  when /vercel/, /zeit\.co/, /now\.sh/
    "Vercel"
  when /github\.io/, /githubusercontent/, /github\.dev/
    "GitHub"
  when /gitlab\.io/, /gitlab-static/
    "GitLab"
  when /oracle/, /oraclecloud/
    "Oracle Cloud"
  when /ibm/, /bluemix/, /ibmcloud/
    "IBM Cloud"
  when /cloudflare/, /workers\.dev/
    "Cloudflare"
  when /fastly/
    "Fastly"
  when /akamai/
    "Akamai"
  when /render\.com/
    "Render"
  when /fly\.io/
    "Fly.io"
  when /railway\.app/
    "Railway"
  when /upcloud/
    "UpCloud"
  when /hetzner/
    "Hetzner"
  when /ovh/, /ovhcloud/
    "OVH"
  when /scaleway/
    "Scaleway"
  when /contabo/
    "Contabo"
  when /dreamhost/
    "DreamHost"
  when /hostgator/
    "HostGator"
  when /bluehost/
    "Bluehost"
  when /siteground/
    "SiteGround"
  when /namecheap/
    "Namecheap"
  when /godaddy/
    "GoDaddy"
  when /ionos/
    "IONOS"
  when /hostinger/
    "Hostinger"
  else
    nil
  end
end