-
Notifications
You must be signed in to change notification settings - Fork 4
/
README.Rmd
68 lines (50 loc) · 2.45 KB
/
README.Rmd
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
---
output: rmarkdown::github_document
---
[![CRAN](http://www.r-pkg.org/badges/version/cloudcidrs)](http://cran.r-project.org/package=cloudcidrs)
[![Build Status](https://travis-ci.org/cloudyr/cloudcidrs.png?branch=master)](https://travis-ci.org/cloudyr/cloudcidrs)
[![AppVeyor Build Status](https://ci.appveyor.com/api/projects/status/github/cloudyr/cloudcidrs?branch=master&svg=true)](https://ci.appveyor.com/project/cloudyr/cloudcidrs)
[![Coverage Status](https://img.shields.io/codecov/c/github/cloudyr/cloudcidrs/master.svg)](https://codecov.io/github/cloudyr/cloudcidrs?branch=master)
# cloudcidrs
Tools to Obtain and Work with Cloud Provider CIDR Blocks
## Description
Cloud providers will be added on an as-needed or request basis (i.e. if you need another
cloud provider, file an issue or — prefereably — PR).
Some cloud providers provide either an API or a file that contains all of the
public networks that make up their cloud infrastructure. Many force you to obtain this
data from publicly available internet routing registration data. Tools are provided that
provide a standard API to obtain the network information for supported cloud providers.
Each provider function returns processed, raw data structures that can be normalized
with additional functions to enable predictable and consistent data formats for
further processing.
A future plan is to [`memoise`](https://cran.r-project.org/package=memoise) the results
and also provide disk-level caching since these CIDRs don't change frequently enough to
warrant network traffic for each call.
## What's Inside the Tin
The following functions are implemented:
- `all_ranges`: Build a complete data frame of all known cloud provider ranges
- `amazon_ranges`: Amazon AWS cloud ranges
- `azure_ranges`: Azure ranges
- `digitalocean_ranges`: Digital Ocean ranges
- `google_ranges`: Google Cloud ranges
- `linode_ranges`: Linode ranges
- `normalize_ipv4`: Normalize Cloud CIDR return values
- `ovh_ranges`: OVH ranges
- `rackspace_ranges`: Rackspace ranges
- `softlayer_ranges`: Softlayer ranges
## Installation
```{r eval=FALSE}
devtools::install_git("https://github.com/cloudyr/cloudcidrs.git")
```
```{r message=FALSE, warning=FALSE, error=FALSE}
options(width=120)
```
## Usage
```{r message=FALSE, warning=FALSE, error=FALSE, cache=TRUE}
library(cloudcidrs)
# current verison
packageVersion("cloudcidrs")
all_ranges()
```
---
[![cloudyr project logo](http://i.imgur.com/JHS98Y7.png)](https://github.com/cloudyr)