Skip to content

Commit 501d238

Browse files
Merge pull request #229 from blacklanternsecurity/dev
Readme updates + daily sig update
2 parents ea6f164 + fe2d45b commit 501d238

6 files changed

Lines changed: 117 additions & 44 deletions

File tree

.github/workflows/daily-update.yml

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
name: Daily Signature Update
2+
3+
on:
4+
schedule:
5+
# Run daily at 6:00 UTC
6+
- cron: '0 6 * * *'
7+
workflow_dispatch: # Allow manual trigger
8+
9+
# Prevent concurrent runs from racing to commit/merge
10+
# cancel-in-progress: false means new runs wait instead of canceling in-progress ones
11+
concurrency:
12+
group: daily-update
13+
cancel-in-progress: false
14+
15+
jobs:
16+
update:
17+
runs-on: ubuntu-latest
18+
permissions:
19+
contents: write
20+
21+
steps:
22+
- name: Checkout stable branch
23+
uses: actions/checkout@v6
24+
with:
25+
ref: stable
26+
27+
- name: Create temporary update branch
28+
run: |
29+
git checkout -b update/daily-$(date -u +%Y-%m-%d)
30+
31+
- name: Set up Python
32+
uses: actions/setup-python@v6
33+
with:
34+
python-version: "3.12"
35+
36+
- name: Set up uv
37+
uses: astral-sh/setup-uv@v7
38+
39+
- name: Install dependencies
40+
run: uv sync
41+
42+
- name: Update signatures
43+
env:
44+
BBOT_IO_API_KEY: ${{ secrets.BBOT_IO_API_KEY }}
45+
run: uv run python -m cloudcheck_update.cli
46+
47+
- name: Update README table
48+
run: uv run python scripts/update_readme_table.py
49+
50+
- name: Check for changes
51+
id: changes
52+
run: |
53+
if git diff --quiet; then
54+
echo "has_changes=false" >> $GITHUB_OUTPUT
55+
else
56+
echo "has_changes=true" >> $GITHUB_OUTPUT
57+
fi
58+
59+
- name: Commit and merge changes
60+
if: steps.changes.outputs.has_changes == 'true'
61+
run: |
62+
BRANCH="update/daily-$(date -u +%Y-%m-%d)"
63+
git config user.name "github-actions[bot]"
64+
git config user.email "github-actions[bot]@users.noreply.github.com"
65+
git add cloud_providers_v2.json README.md
66+
git commit -m "chore: daily signature update $(date -u +%Y-%m-%d)"
67+
git push origin "$BRANCH"
68+
git checkout stable
69+
git merge "$BRANCH" --no-edit -m "chore: merge daily signature update"
70+
git push origin stable
71+
git push origin --delete "$BRANCH"

Cargo.lock

Lines changed: 35 additions & 37 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "cloudcheck"
3-
version = "9.2.0"
3+
version = "9.3.0"
44
edition = "2024"
55
description = "CloudCheck is a simple Rust tool to check whether an IP address or hostname belongs to a cloud provider."
66
license = "GPL-3.0"

README.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,16 @@
1010
[![Python Tests](https://github.com/blacklanternsecurity/cloudcheck/actions/workflows/python-tests.yml/badge.svg?branch=stable)](https://github.com/blacklanternsecurity/cloudcheck/actions/workflows/python-tests.yml)
1111
[![Pipeline Tests](https://github.com/blacklanternsecurity/cloudcheck/actions/workflows/pipeline-tests.yml/badge.svg?branch=stable)](https://github.com/blacklanternsecurity/cloudcheck/actions/workflows/pipeline-tests.yml)
1212
[![Docker Tests](https://github.com/blacklanternsecurity/cloudcheck/actions/workflows/docker-tests.yml/badge.svg?branch=stable)](https://github.com/blacklanternsecurity/cloudcheck/actions/workflows/docker-tests.yml)
13+
[![Daily Update](https://github.com/blacklanternsecurity/cloudcheck/actions/workflows/daily-update.yml/badge.svg?branch=stable)](https://github.com/blacklanternsecurity/cloudcheck/actions/workflows/daily-update.yml)
1314

14-
### UPDATE 01-2026: Now supports REST API!
15+
> [!TIP]
16+
> **UPDATE 01-2026:** Now supports REST API!
1517
16-
### UPDATE 12-2025: Now supports government agencies (DoD, FBI, UK MoD, RU FSO)!
18+
> [!NOTE]
19+
> **UPDATE 12-2025:** Now supports government agencies (DoD, FBI, UK MoD, RU FSO)!
1720
18-
### UPDATE 12-2025: Now rewritten in Rust!
21+
> [!IMPORTANT]
22+
> **UPDATE 12-2025:** Now rewritten in Rust!
1923
2024
CloudCheck is a simple Rust tool to check whether an IP address or hostname belongs to a cloud provider. It includes:
2125

@@ -25,7 +29,7 @@ CloudCheck is a simple Rust tool to check whether an IP address or hostname belo
2529

2630
## Cloud Provider Signatures
2731

28-
The latest cloud provider signatures are available in [`cloud_providers_v2.json`](https://github.com/blacklanternsecurity/cloudcheck/blob/master/cloud_providers_v2.json), which is updated daily via CI/CD. Domains associated with each cloud provider are fetched dynamically from the [v2fly community repository](https://github.com/v2fly/domain-list-community), and CIDRs are fetched from [ASNDB](https://asndb.api.bbot.io/).
32+
The latest cloud provider signatures are available in [`cloud_providers_v2.json`](https://github.com/blacklanternsecurity/cloudcheck/blob/master/cloud_providers_v2.json), which is updated daily via [CI/CD](.github/workflows/daily-update.yml). Domains associated with each cloud provider are fetched dynamically from the [v2fly community repository](https://github.com/v2fly/domain-list-community), and CIDRs are fetched from [ASNDB](https://asndb.api.bbot.io/).
2933

3034
Used by [BBOT](https://github.com/blacklanternsecurity/bbot) and [BBOT Server](https://github.com/blacklanternsecurity/bbot-server).
3135

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "maturin"
44

55
[project]
66
name = "cloudcheck"
7-
version = "9.2.0"
7+
version = "9.3.0"
88
description = "Detailed database of cloud providers. Instantly look up a domain or IP address"
99
readme = "README.md"
1010
requires-python = ">=3.9"

uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)