python3-cyberfusion-external-providers-ip-ranges 2.4__tar.gz → 2.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {python3_cyberfusion_external_providers_ip_ranges-2.4 → python3_cyberfusion_external_providers_ip_ranges-2.5}/PKG-INFO +3 -2
- {python3_cyberfusion_external_providers_ip_ranges-2.4 → python3_cyberfusion_external_providers_ip_ranges-2.5}/README.md +1 -0
- {python3_cyberfusion_external_providers_ip_ranges-2.4 → python3_cyberfusion_external_providers_ip_ranges-2.5}/pyproject.toml +2 -2
- {python3_cyberfusion_external_providers_ip_ranges-2.4 → python3_cyberfusion_external_providers_ip_ranges-2.5}/src/cyberfusion/ExternalProvidersIPRanges/__init__.py +32 -0
- {python3_cyberfusion_external_providers_ip_ranges-2.4 → python3_cyberfusion_external_providers_ip_ranges-2.5}/src/python3_cyberfusion_external_providers_ip_ranges.egg-info/PKG-INFO +3 -2
- {python3_cyberfusion_external_providers_ip_ranges-2.4 → python3_cyberfusion_external_providers_ip_ranges-2.5}/src/python3_cyberfusion_external_providers_ip_ranges.egg-info/requires.txt +1 -1
- {python3_cyberfusion_external_providers_ip_ranges-2.4 → python3_cyberfusion_external_providers_ip_ranges-2.5}/setup.cfg +0 -0
- {python3_cyberfusion_external_providers_ip_ranges-2.4 → python3_cyberfusion_external_providers_ip_ranges-2.5}/src/python3_cyberfusion_external_providers_ip_ranges.egg-info/SOURCES.txt +0 -0
- {python3_cyberfusion_external_providers_ip_ranges-2.4 → python3_cyberfusion_external_providers_ip_ranges-2.5}/src/python3_cyberfusion_external_providers_ip_ranges.egg-info/dependency_links.txt +0 -0
- {python3_cyberfusion_external_providers_ip_ranges-2.4 → python3_cyberfusion_external_providers_ip_ranges-2.5}/src/python3_cyberfusion_external_providers_ip_ranges.egg-info/entry_points.txt +0 -0
- {python3_cyberfusion_external_providers_ip_ranges-2.4 → python3_cyberfusion_external_providers_ip_ranges-2.5}/src/python3_cyberfusion_external_providers_ip_ranges.egg-info/top_level.txt +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python3-cyberfusion-external-providers-ip-ranges
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.5
|
|
4
4
|
Summary: Scripts to add IP ranges of external providers to ferm.
|
|
5
5
|
Author-email: Cyberfusion <support@cyberfusion.io>
|
|
6
6
|
Project-URL: Source, https://github.com/CyberfusionIO/python3-cyberfusion-external-providers-ip-ranges
|
|
7
7
|
Description-Content-Type: text/markdown
|
|
8
|
-
Requires-Dist: requests==2.
|
|
8
|
+
Requires-Dist: requests==2.33.1
|
|
9
9
|
Requires-Dist: python3-cyberfusion-common~=2.12
|
|
10
10
|
Requires-Dist: python3-cyberfusion-ferm-support~=1.3
|
|
11
11
|
|
|
@@ -16,6 +16,7 @@ Scripts to add IP ranges of external providers to [ferm](http://ferm.foo-project
|
|
|
16
16
|
## Supported providers
|
|
17
17
|
|
|
18
18
|
* Google Cloud
|
|
19
|
+
* GitHub
|
|
19
20
|
* Atlassian
|
|
20
21
|
* [Buddy](https://buddy.works/)
|
|
21
22
|
|
|
@@ -4,14 +4,14 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "python3-cyberfusion-external-providers-ip-ranges"
|
|
7
|
-
version = "2.
|
|
7
|
+
version = "2.5"
|
|
8
8
|
description = "Scripts to add IP ranges of external providers to ferm."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
authors = [
|
|
11
11
|
{ name = "Cyberfusion", email = "support@cyberfusion.io" },
|
|
12
12
|
]
|
|
13
13
|
dependencies = [
|
|
14
|
-
"requests==2.
|
|
14
|
+
"requests==2.33.1",
|
|
15
15
|
"python3-cyberfusion-common~=2.12",
|
|
16
16
|
"python3-cyberfusion-ferm-support~=1.3",
|
|
17
17
|
]
|
|
@@ -53,6 +53,7 @@ class AtlassianIPRangeHandler(ExternalProviderIPRangeHandlerInterface):
|
|
|
53
53
|
|
|
54
54
|
request = requests.get("https://ip-ranges.atlassian.com/")
|
|
55
55
|
request.raise_for_status()
|
|
56
|
+
|
|
56
57
|
data = request.json()
|
|
57
58
|
|
|
58
59
|
for item in data["items"]:
|
|
@@ -76,6 +77,7 @@ class AWSIPRangeHandler(ExternalProviderIPRangeHandlerInterface):
|
|
|
76
77
|
|
|
77
78
|
request = requests.get("https://ip-ranges.amazonaws.com/ip-ranges.json")
|
|
78
79
|
request.raise_for_status()
|
|
80
|
+
|
|
79
81
|
data = request.json()
|
|
80
82
|
|
|
81
83
|
for item in data["prefixes"]:
|
|
@@ -142,6 +144,35 @@ class BuddyIPRangeHandler(ExternalProviderIPRangeHandlerInterface):
|
|
|
142
144
|
return result
|
|
143
145
|
|
|
144
146
|
|
|
147
|
+
class GithubIPRangeHandler(ExternalProviderIPRangeHandlerInterface):
|
|
148
|
+
"""Class for external provider IP range handler."""
|
|
149
|
+
|
|
150
|
+
@property
|
|
151
|
+
def name(self) -> str:
|
|
152
|
+
"""Get external provider name."""
|
|
153
|
+
return "github"
|
|
154
|
+
|
|
155
|
+
@property
|
|
156
|
+
def ip_ranges(self) -> List[str]:
|
|
157
|
+
"""Get IP ranges."""
|
|
158
|
+
result = []
|
|
159
|
+
|
|
160
|
+
ip_ranges = []
|
|
161
|
+
|
|
162
|
+
request = requests.get("https://api.github.com/meta")
|
|
163
|
+
request.raise_for_status()
|
|
164
|
+
|
|
165
|
+
data = request.json()
|
|
166
|
+
|
|
167
|
+
ip_ranges.extend(data["actions"])
|
|
168
|
+
ip_ranges.extend(data["actions_macos"])
|
|
169
|
+
|
|
170
|
+
for item in ip_ranges:
|
|
171
|
+
result.append(item)
|
|
172
|
+
|
|
173
|
+
return result
|
|
174
|
+
|
|
175
|
+
|
|
145
176
|
def main() -> None:
|
|
146
177
|
"""Spawn relevant class for CLI function."""
|
|
147
178
|
configuration = Configuration(
|
|
@@ -153,6 +184,7 @@ def main() -> None:
|
|
|
153
184
|
|
|
154
185
|
handlers = [
|
|
155
186
|
BuddyIPRangeHandler(),
|
|
187
|
+
GithubIPRangeHandler(),
|
|
156
188
|
GoogleCloudIPRangeHandler(),
|
|
157
189
|
AtlassianIPRangeHandler(),
|
|
158
190
|
AWSIPRangeHandler(),
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python3-cyberfusion-external-providers-ip-ranges
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.5
|
|
4
4
|
Summary: Scripts to add IP ranges of external providers to ferm.
|
|
5
5
|
Author-email: Cyberfusion <support@cyberfusion.io>
|
|
6
6
|
Project-URL: Source, https://github.com/CyberfusionIO/python3-cyberfusion-external-providers-ip-ranges
|
|
7
7
|
Description-Content-Type: text/markdown
|
|
8
|
-
Requires-Dist: requests==2.
|
|
8
|
+
Requires-Dist: requests==2.33.1
|
|
9
9
|
Requires-Dist: python3-cyberfusion-common~=2.12
|
|
10
10
|
Requires-Dist: python3-cyberfusion-ferm-support~=1.3
|
|
11
11
|
|
|
@@ -16,6 +16,7 @@ Scripts to add IP ranges of external providers to [ferm](http://ferm.foo-project
|
|
|
16
16
|
## Supported providers
|
|
17
17
|
|
|
18
18
|
* Google Cloud
|
|
19
|
+
* GitHub
|
|
19
20
|
* Atlassian
|
|
20
21
|
* [Buddy](https://buddy.works/)
|
|
21
22
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|