Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
4739 commits
Select commit Hold shift + click to select a range
bfb6799
fix hash
invalid-email-address Oct 13, 2024
dbca7ed
allow merging targets
invalid-email-address Oct 13, 2024
406a58c
don't make netlocs for ip networks
invalid-email-address Oct 13, 2024
fbb54fd
update scope tests
invalid-email-address Oct 14, 2024
7d6e25a
fixed excavate test
invalid-email-address Oct 14, 2024
0f7c266
resolve conflicts
invalid-email-address Oct 16, 2024
d7478cd
remove critical debug
invalid-email-address Oct 16, 2024
c16fd46
comment out clobbering API keys
invalid-email-address Oct 17, 2024
27c819e
fixing but with dnn installwizard detector
liquidsec Oct 17, 2024
3f1e574
better handling of custom secrets files
liquidsec Oct 17, 2024
b186634
Merge pull request #1857 from blacklanternsecurity/excavate-intercept
TheTechromancer Oct 17, 2024
652d08f
Merge pull request #1863 from blacklanternsecurity/dnn-installwizard-bug
liquidsec Oct 17, 2024
3ff9e8e
Merge pull request #1864 from blacklanternsecurity/badsecrets-customs…
liquidsec Oct 17, 2024
918f3b7
Update trufflehog
web-flow Oct 18, 2024
0a20c13
Merge pull request #1867 from blacklanternsecurity/update-trufflehog
TheTechromancer Oct 18, 2024
7d6a57e
handle bad chars in matched data
liquidsec Oct 18, 2024
7595ff7
black
liquidsec Oct 18, 2024
4bd16b7
fixing bugs with generic_ssrf
liquidsec Oct 18, 2024
e7e5c6a
Merge pull request #1868 from blacklanternsecurity/yara-handle-bad-chars
liquidsec Oct 18, 2024
481bd35
fix preset bug
invalid-email-address Oct 18, 2024
cc83d6c
blacked
invalid-email-address Oct 18, 2024
c6f445b
fix tests
invalid-email-address Oct 18, 2024
37ae382
Merge pull request #1840 from blacklanternsecurity/shodan-pagination
TheTechromancer Oct 18, 2024
80a65a1
rebase dev
invalid-email-address Oct 18, 2024
29206f0
evilcorp
invalid-email-address Oct 18, 2024
7bbc9e6
Merge pull request #1870 from blacklanternsecurity/generic-ssrf-fix
liquidsec Oct 18, 2024
a3f0bbe
Merge pull request #1872 from blacklanternsecurity/fix-preset-bug
TheTechromancer Oct 18, 2024
7716db3
Merge pull request #1871 from blacklanternsecurity/excavate-intercept
TheTechromancer Oct 18, 2024
126c1c6
enable manual trigger
invalid-email-address Oct 18, 2024
989bd78
Merge pull request #1724 from blacklanternsecurity/dev
TheTechromancer Oct 18, 2024
f2b70ce
Update nuclei
blsaccess Oct 20, 2024
2c0ebb6
Bump pytest-asyncio from 0.23.8 to 0.24.0
dependabot[bot] Oct 21, 2024
f76e688
Bump mkdocs-material from 9.5.41 to 9.5.42
dependabot[bot] Oct 21, 2024
ec67fa4
Bump xmltojson from 2.0.2 to 2.0.3
dependabot[bot] Oct 21, 2024
6a5303d
Bump mkdocstrings-python from 1.12.1 to 1.12.2
dependabot[bot] Oct 21, 2024
1b03b70
Merge pull request #1878 from blacklanternsecurity/dependabot/pip/dev…
TheTechromancer Oct 21, 2024
a4b9824
Merge pull request #1882 from blacklanternsecurity/dependabot/pip/dev…
TheTechromancer Oct 21, 2024
ba10b9e
Merge pull request #1881 from blacklanternsecurity/dependabot/pip/dev…
TheTechromancer Oct 21, 2024
6250877
Merge pull request #1880 from blacklanternsecurity/dependabot/pip/dev…
TheTechromancer Oct 21, 2024
9dc05bb
Bump psutil from 5.9.8 to 6.1.0
dependabot[bot] Oct 21, 2024
20aaf68
resolve conflicts
invalid-email-address Oct 18, 2024
f55c004
resolve conflicts
invalid-email-address Oct 18, 2024
6be3f23
simplified run_tests.sh
TheTechromancer Jun 18, 2024
c08648e
resolve conflicts
invalid-email-address Oct 18, 2024
c2e69e8
runs-on --> container: image
invalid-email-address Oct 18, 2024
6875793
fix python setup
invalid-email-address Oct 18, 2024
047b9ff
no sudo
invalid-email-address Oct 21, 2024
3c6728c
python things
invalid-email-address Oct 21, 2024
0572ce6
quotes
invalid-email-address Oct 21, 2024
5a6e68e
testing stuff
invalid-email-address Oct 21, 2024
ffe8ae1
pipx
invalid-email-address Oct 21, 2024
46f65a4
onwards
invalid-email-address Oct 21, 2024
50969eb
distro stuff
invalid-email-address Oct 21, 2024
b30cbaf
more
invalid-email-address Oct 21, 2024
262d5d7
just ubuntu things
invalid-email-address Oct 21, 2024
cc296b7
tests
invalid-email-address Oct 21, 2024
97ce06b
iterating
invalid-email-address Oct 21, 2024
3036629
bash oopsie
invalid-email-address Oct 21, 2024
687d247
distrosgit diff
invalid-email-address Oct 21, 2024
c763c1e
alpine
invalid-email-address Oct 21, 2024
16f204c
ubuntu things
invalid-email-address Oct 21, 2024
10627df
more ubuntu things
invalid-email-address Oct 21, 2024
e594c3f
Merge pull request #1879 from blacklanternsecurity/dependabot/pip/dev…
TheTechromancer Oct 21, 2024
f2cdcb8
Merge pull request #1877 from blacklanternsecurity/update-nuclei
TheTechromancer Oct 21, 2024
f3b90e5
better debian
invalid-email-address Oct 21, 2024
0a6e78b
ubuntu why?
invalid-email-address Oct 21, 2024
838c781
ubuntu why?
invalid-email-address Oct 21, 2024
782a68d
ubuntu why?
invalid-email-address Oct 21, 2024
8f3ba61
ubuntu why?
invalid-email-address Oct 21, 2024
cdfbe7e
skip dastardly
invalid-email-address Oct 21, 2024
ce31264
pyenv
invalid-email-address Oct 21, 2024
1eedaf5
pyenv
invalid-email-address Oct 21, 2024
bb451fd
curl
invalid-email-address Oct 21, 2024
60a418e
git
invalid-email-address Oct 21, 2024
32abe3b
bash
invalid-email-address Oct 21, 2024
b9d40bf
dev
invalid-email-address Oct 21, 2024
51fd792
path
invalid-email-address Oct 21, 2024
f788dad
pyenv things
invalid-email-address Oct 21, 2024
73b00f4
alpine
invalid-email-address Oct 21, 2024
cda7d50
Merge pull request #1476 from blacklanternsecurity/multi-distro-tests
TheTechromancer Oct 22, 2024
51e745a
bufferover.run module
invalid-email-address Oct 23, 2024
6821a1e
add test
invalid-email-address Oct 23, 2024
ee078b3
update docs workflow
invalid-email-address Oct 23, 2024
84cc1a2
Merge pull request #1888 from blacklanternsecurity/bufferoverrun
TheTechromancer Oct 24, 2024
e08e385
bump versions
invalid-email-address Oct 24, 2024
17160e7
continue on error
invalid-email-address Oct 24, 2024
30320b6
don't continue on error
invalid-email-address Oct 24, 2024
07a0713
silence stderr in tests
invalid-email-address Oct 26, 2024
dd7884e
upload debug logs
invalid-email-address Oct 26, 2024
7da0c63
troubleshooting ubuntu 20.04 test
invalid-email-address Oct 27, 2024
9e90572
test things
invalid-email-address Oct 27, 2024
0441155
ruby things
invalid-email-address Oct 27, 2024
5eded28
more test things
invalid-email-address Oct 27, 2024
95187e8
ansible things
invalid-email-address Oct 27, 2024
614dcd5
ubuntu why
invalid-email-address Oct 27, 2024
cfbd211
alpine
invalid-email-address Oct 27, 2024
991b531
bye ubuntu
invalid-email-address Oct 27, 2024
f44983f
all tests
invalid-email-address Oct 27, 2024
1f71c58
fix chrome in fedora
invalid-email-address Oct 27, 2024
f4bbd88
goodbye gentoo, goodbye alpine
invalid-email-address Oct 27, 2024
8a8d33e
flaked
invalid-email-address Oct 27, 2024
5360050
Merge pull request #1892 from blacklanternsecurity/better-logging
TheTechromancer Oct 28, 2024
32c4f7e
fixing pytest summary
liquidsec Oct 28, 2024
24676a6
showcapture no
invalid-email-address Oct 28, 2024
d348d96
silence live logging
invalid-email-address Oct 28, 2024
905cc04
blacked
invalid-email-address Oct 28, 2024
3f3c43b
test tests
invalid-email-address Oct 28, 2024
ffb8c09
remove thing
invalid-email-address Oct 28, 2024
38d3f49
flaked
invalid-email-address Oct 28, 2024
16e82e8
done
invalid-email-address Oct 28, 2024
dc54677
Merge pull request #1894 from blacklanternsecurity/logging-restore-su…
TheTechromancer Oct 28, 2024
0207fd0
stop logger on exit
invalid-email-address Oct 28, 2024
ad88024
better log cleanup
invalid-email-address Oct 28, 2024
d83dba4
Merge pull request #1891 from blacklanternsecurity/stable-update
TheTechromancer Oct 28, 2024
60ab921
rename tests
invalid-email-address Oct 28, 2024
e8c27f4
don't skip dastardly tests
invalid-email-address Oct 28, 2024
1837f0a
unskip dastardly tests
invalid-email-address Oct 28, 2024
52242dd
Merge branch 'dev' into excavate-intercept
TheTechromancer Oct 29, 2024
de740f6
Merge pull request #1896 from blacklanternsecurity/test-cleanup
TheTechromancer Oct 29, 2024
ae55da4
Merge pull request #1873 from blacklanternsecurity/excavate-intercept
TheTechromancer Oct 29, 2024
88a9cf9
Update trufflehog
blsaccess Oct 30, 2024
9e53c38
Merge pull request #1883 from blacklanternsecurity/update-trufflehog
TheTechromancer Oct 30, 2024
b0639ef
Update trufflehog
blsaccess Oct 31, 2024
18a70ca
asyncify sqlite
invalid-email-address Oct 31, 2024
a12a00b
Merge pull request #1900 from blacklanternsecurity/update-trufflehog
TheTechromancer Oct 31, 2024
a367758
Merge pull request #1901 from blacklanternsecurity/asyncify-gowitness
TheTechromancer Oct 31, 2024
3f027b9
Merge pull request #1885 from blacklanternsecurity/dev
TheTechromancer Oct 31, 2024
4e17fdd
remove invalid value
invalid-email-address Oct 31, 2024
5edb50f
start fresh every time
invalid-email-address Oct 31, 2024
315c821
troubleshooting
invalid-email-address Oct 31, 2024
8e6ac30
troubleshooting
invalid-email-address Oct 31, 2024
c4aef34
more troubleshooting
invalid-email-address Oct 31, 2024
d1ea772
more troubleshooting
invalid-email-address Oct 31, 2024
937d983
more
invalid-email-address Oct 31, 2024
3df5bda
more
invalid-email-address Oct 31, 2024
82244fd
[create-pull-request] automated change
TheTechromancer Oct 31, 2024
a2310d4
Merge pull request #1906 from blacklanternsecurity/update-docs
TheTechromancer Oct 31, 2024
91bb53f
reintroduce docs autopublish
invalid-email-address Nov 1, 2024
2bfd327
fix yaml
invalid-email-address Nov 1, 2024
0d43e80
Merge pull request #1905 from blacklanternsecurity/fix-docs-autopublish
TheTechromancer Nov 1, 2024
640aea9
bump version
invalid-email-address Nov 1, 2024
d6dbdcf
Merge pull request #1910 from blacklanternsecurity/fix-docs-autopublish
TheTechromancer Nov 1, 2024
49f094b
Merge pull request #1909 from blacklanternsecurity/dev
TheTechromancer Nov 1, 2024
3b66003
Bump mkdocs-material from 9.5.42 to 9.5.43
dependabot[bot] Nov 4, 2024
d8b2ec3
Bump pytest-cov from 5.0.0 to 6.0.0
dependabot[bot] Nov 4, 2024
3eb4135
Merge pull request #1915 from blacklanternsecurity/dependabot/pip/dev…
TheTechromancer Nov 4, 2024
b2c3bb2
Merge pull request #1914 from blacklanternsecurity/dependabot/pip/dev…
TheTechromancer Nov 4, 2024
d28fe33
Bump werkzeug from 3.0.4 to 3.1.1
dependabot[bot] Nov 4, 2024
3382fea
Revert "Merge pull request #1836 from domwhewell-sage/folder_crawling"
domwhewell-sage Nov 4, 2024
fcc9f79
Disable unstructured as folders will no longer be crawled
domwhewell-sage Nov 4, 2024
3c2d05b
Merge pull request #1917 from domwhewell-sage/revert_speculate_changes
TheTechromancer Nov 4, 2024
b729f28
Merge pull request #1913 from blacklanternsecurity/dependabot/pip/dev…
TheTechromancer Nov 4, 2024
db3bdfd
fix ansible executable
invalid-email-address Nov 4, 2024
ba598ad
fix fedora
invalid-email-address Nov 4, 2024
02069d1
Merge pull request #1921 from blacklanternsecurity/fix-fedora
TheTechromancer Nov 4, 2024
84fdb87
Update trufflehog
blsaccess Nov 5, 2024
a083f7a
[create-pull-request] automated change
TheTechromancer Nov 5, 2024
3f3f35b
Merge pull request #1907 from blacklanternsecurity/update-trufflehog
TheTechromancer Nov 5, 2024
157fed6
fix double target printing
invalid-email-address Nov 5, 2024
812a0d7
Merge pull request #1911 from blacklanternsecurity/update-docs
TheTechromancer Nov 5, 2024
e0ea2cb
Update trufflehog
blsaccess Nov 6, 2024
05875e3
Merge pull request #1925 from blacklanternsecurity/update-trufflehog
TheTechromancer Nov 6, 2024
442daa6
fix
invalid-email-address Nov 6, 2024
72a250a
Merge pull request #1924 from blacklanternsecurity/fix-target-printing
TheTechromancer Nov 6, 2024
e8ec678
unstructured -> extractous
invalid-email-address Nov 6, 2024
1b433d0
oops
invalid-email-address Nov 6, 2024
7bc6a43
Update trufflehog
blsaccess Nov 7, 2024
edd2d16
[create-pull-request] automated change
TheTechromancer Nov 7, 2024
8b9f03a
blacked
invalid-email-address Nov 7, 2024
8db576f
add native filetype + compression detection
invalid-email-address Nov 7, 2024
5f5349e
magic
invalid-email-address Nov 7, 2024
1cb32e2
fix tests
invalid-email-address Nov 7, 2024
8100118
add libgl
invalid-email-address Nov 7, 2024
27258a1
Merge pull request #1930 from blacklanternsecurity/fix-ubuntu-chrome
TheTechromancer Nov 7, 2024
17a55eb
Merge pull request #1929 from blacklanternsecurity/magic
TheTechromancer Nov 7, 2024
3aaccda
Merge pull request #1927 from blacklanternsecurity/extractous
TheTechromancer Nov 7, 2024
475ee5d
Merge pull request #1928 from blacklanternsecurity/update-trufflehog
TheTechromancer Nov 7, 2024
0f1db8c
Merge pull request #1926 from blacklanternsecurity/update-docs
TheTechromancer Nov 7, 2024
f0eca9a
Added new module jadx
domwhewell-sage Nov 7, 2024
4f3b518
Add safe flag
domwhewell-sage Nov 7, 2024
2e0c1f2
add sqlite output module
invalid-email-address Nov 7, 2024
e344054
update docs
invalid-email-address Nov 7, 2024
770bb52
more docs
invalid-email-address Nov 7, 2024
4a07535
more docs
invalid-email-address Nov 7, 2024
a0f6e97
Merge pull request #1933 from blacklanternsecurity/sql-output-module
TheTechromancer Nov 8, 2024
7ef7461
version bump badsecrets/baddns
liquidsec Nov 8, 2024
65ac448
Merge pull request #1939 from blacklanternsecurity/dependency-bump-ba…
liquidsec Nov 8, 2024
3e67a9f
Added test to check the detected file type
domwhewell-sage Nov 9, 2024
9c512ad
fix ubuntu chrome
invalid-email-address Nov 9, 2024
455051d
Made changes to apkpure to create the file extension based on the Con…
domwhewell-sage Nov 9, 2024
64ddb45
Change fedora package
domwhewell-sage Nov 9, 2024
6aa2a5c
Change to regex to get the extension
domwhewell-sage Nov 9, 2024
5a98cf3
set the JAVA_HOME environment variable on fedora
domwhewell-sage Nov 9, 2024
ed03047
[create-pull-request] automated change
TheTechromancer Nov 10, 2024
0173b87
Please set the environment variable on fedora
domwhewell-sage Nov 10, 2024
4d69f3c
lint
domwhewell-sage Nov 10, 2024
82c549e
Merge pull request #1934 from blacklanternsecurity/update-docs
TheTechromancer Nov 10, 2024
41e8c29
Set the java home in the jadx script
domwhewell-sage Nov 10, 2024
7a42e11
Update trufflehog
blsaccess Nov 11, 2024
13652c3
Bump mkdocstrings from 0.26.2 to 0.27.0
dependabot[bot] Nov 11, 2024
8465e21
Bump regex from 2024.9.11 to 2024.11.6
dependabot[bot] Nov 11, 2024
454235e
Bump werkzeug from 3.1.1 to 3.1.3
dependabot[bot] Nov 11, 2024
91eab76
Bump tldextract from 5.1.2 to 5.1.3
dependabot[bot] Nov 11, 2024
58624cf
Bump mkdocs-material from 9.5.43 to 9.5.44
dependabot[bot] Nov 11, 2024
3e2a738
Merge pull request #1940 from blacklanternsecurity/update-trufflehog
TheTechromancer Nov 11, 2024
e952280
Merge pull request #1952 from blacklanternsecurity/dependabot/pip/dev…
TheTechromancer Nov 11, 2024
a591691
Merge pull request #1951 from blacklanternsecurity/dependabot/pip/dev…
TheTechromancer Nov 11, 2024
fc0d877
Merge pull request #1950 from blacklanternsecurity/dependabot/pip/dev…
TheTechromancer Nov 11, 2024
be092b8
Ensure its inserted after the shebang
domwhewell-sage Nov 11, 2024
31c18b9
Merge branch 'dev' into jadx_module
domwhewell-sage Nov 11, 2024
c0be101
Dont have to set JAVA_HOME can just install which to allow jadx start…
domwhewell-sage Nov 11, 2024
328de60
fix ubuntu again?
invalid-email-address Nov 11, 2024
cf7686b
test gowitness only
invalid-email-address Nov 11, 2024
1643946
Merge pull request #1949 from blacklanternsecurity/dependabot/pip/dev…
TheTechromancer Nov 11, 2024
ee76f68
Merge pull request #1948 from blacklanternsecurity/dependabot/pip/dev…
TheTechromancer Nov 11, 2024
836d115
only gowitness
invalid-email-address Nov 11, 2024
437ac86
wat
invalid-email-address Nov 11, 2024
5de9452
Merge pull request #1941 from blacklanternsecurity/fix-ubuntu-chrome
TheTechromancer Nov 11, 2024
41ac684
Merge branch 'dev' into jadx_module
domwhewell-sage Nov 12, 2024
154c354
Merge pull request #1932 from domwhewell-sage/jadx_module
TheTechromancer Nov 13, 2024
4c2440a
make java a shared dep
invalid-email-address Nov 13, 2024
0078a3a
jadx debugging
invalid-email-address Nov 13, 2024
9d8d7a1
fix java dep
invalid-email-address Nov 13, 2024
09f7ec3
Merge pull request #1956 from blacklanternsecurity/fix-jadx
TheTechromancer Nov 13, 2024
598d9f3
[create-pull-request] automated change
TheTechromancer Nov 14, 2024
0349750
Merge pull request #1946 from blacklanternsecurity/update-docs
TheTechromancer Nov 14, 2024
ef887da
Merge remote-tracking branch 'colin-stubbs/stable' into dnsbimi
colin-stubbs Nov 15, 2024
be3b685
update for PR
colin-stubbs Nov 15, 2024
796d633
Adjust based no review by Techromanacer
colin-stubbs Nov 16, 2024
be2a005
Merge pull request #1965 from colin-stubbs/dnsbimi
TheTechromancer Nov 16, 2024
5ab90fa
Update trufflehog
blsaccess Nov 17, 2024
24fb696
Merge pull request #1968 from blacklanternsecurity/update-trufflehog
TheTechromancer Nov 17, 2024
39796f0
[create-pull-request] automated change
TheTechromancer Nov 17, 2024
a55e9dd
Merge pull request #1964 from blacklanternsecurity/update-docs
TheTechromancer Nov 17, 2024
a54199b
Use Safe Defaults for `lxml` Parsers (#1)
pixeebot[bot] Nov 17, 2024
b1d8b94
Merge pull request #1973 from Pixeebot-2-0/stable
TheTechromancer Nov 17, 2024
b14bad5
update to match new extractous API changes
invalid-email-address Nov 18, 2024
7030aa2
Fix preservation of scan id at scan init
cmyui Nov 18, 2024
985624a
Merge pull request #1978 from cmyui/patch-1
TheTechromancer Nov 18, 2024
3945fd1
Merge pull request #1976 from blacklanternsecurity/fix-extractous
TheTechromancer Nov 18, 2024
c67c51f
Merge pull request #1919 from blacklanternsecurity/dev
TheTechromancer Nov 18, 2024
f0e9d41
bump version
invalid-email-address Nov 18, 2024
0ca76f3
Merge pull request #1983 from blacklanternsecurity/bump-version
TheTechromancer Nov 18, 2024
95d1bc5
Merge pull request #1984 from blacklanternsecurity/dev
TheTechromancer Nov 18, 2024
c2d021f
initial release of dnsdmarc module
colin-stubbs Nov 25, 2024
7ca201b
improve tests, improve vulnerability event descriptions/context etc
colin-stubbs Nov 29, 2024
77249f4
Add comments, handle missing RUA/RUF in valid policies
colin-stubbs Nov 29, 2024
f275f34
add documentation, improve tests
colin-stubbs Nov 29, 2024
92ccbad
improve testing, valid pct via int() cast
colin-stubbs Nov 29, 2024
145914a
improve pct check, check all rua/ruf URI's start with mailto:
colin-stubbs Nov 29, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 5 additions & 0 deletions .flake8
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
[flake8]
select = F,E722
ignore = F403,F405,F541
per-file-ignores =
*/__init__.py:F401,F403
30 changes: 30 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---
name: Bug Report
about: Create a report to help us improve
title: ""
labels: bug
assignees: ""
---

**Describe the bug**
What happened?

**Expected behavior**
What was supposed to happen?

**BBOT Command**
Example: `bbot -m httpx -t evilcorp.com`

**OS, BBOT Installation Method + Version**
Example: `OS: Arch Linux, Installation method: pip, BBOT version: 1.0.3.545`
Note: You can get the bbot version with `bbot --version`
Note: Windows is **not** supported. We have successfully used BBOT on Docker Desktop in the past, however Windows is highly problematic so if you choose this path you are on your own.

**BBOT Config**
Attach your BBOT config (`bbot --current-config`).

**Logs**
If possible, produce the bug while `--debug` is enabled, and attach the relevant parts of `~/.bbot/logs/bbot.debug.log`

**Screenshots**
If applicable, add screenshots to help explain your problem.
10 changes: 10 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
name: Feature Request
about: Request a new feature
title: ""
labels: enhancement
assignees: ""
---

**Description**
Which feature would you like to see added to BBOT? What are its use cases?
8 changes: 8 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
version: 2
updates:
- package-ecosystem: "pip"
directory: "/"
schedule:
interval: "weekly"
target-branch: "dev"
open-pull-requests-limit: 10
64 changes: 64 additions & 0 deletions .github/workflows/distro_tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: Tests (Linux Distros)
on:
pull_request:

concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
test-distros:
runs-on: ubuntu-latest
container:
image: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: ["ubuntu:22.04", "ubuntu:24.04", "debian", "archlinux", "fedora", "kalilinux/kali-rolling", "parrotsec/security"]
steps:
- uses: actions/checkout@v4
- name: Install Python and Poetry
run: |
if [ -f /etc/os-release ]; then
. /etc/os-release
if [ "$ID" = "ubuntu" ] || [ "$ID" = "debian" ] || [ "$ID" = "kali" ] || [ "$ID" = "parrotsec" ]; then
export DEBIAN_FRONTEND=noninteractive
apt-get update
apt-get -y install curl git bash build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev
elif [ "$ID" = "alpine" ]; then
apk add --no-cache bash gcc g++ musl-dev libffi-dev curl git make openssl-dev bzip2-dev zlib-dev xz-dev sqlite-dev
elif [ "$ID" = "arch" ]; then
pacman -Syu --noconfirm curl git bash base-devel
elif [ "$ID" = "fedora" ]; then
dnf install -y curl git bash gcc make openssl-devel bzip2-devel libffi-devel zlib-devel xz-devel tk-devel gdbm-devel readline-devel sqlite-devel python3-libdnf5
elif [ "$ID" = "gentoo" ]; then
echo "media-libs/libglvnd X" >> /etc/portage/package.use/libglvnd
emerge-webrsync
emerge --update --newuse dev-vcs/git media-libs/mesa curl bash
fi
fi

# Re-run the script with bash
exec bash -c "
curl https://pyenv.run | bash
export PATH=\"$HOME/.pyenv/bin:\$PATH\"
export PATH=\"$HOME/.local/bin:\$PATH\"
eval \"\$(pyenv init --path)\"
eval \"\$(pyenv init -)\"
eval \"\$(pyenv virtualenv-init -)\"
pyenv install 3.11
pyenv global 3.11
pyenv rehash
python3.11 -m pip install --user pipx
python3.11 -m pipx ensurepath
pipx install poetry
"
- name: Run tests
run: |
export PATH="$HOME/.local/bin:$PATH"
export PATH="$HOME/.pyenv/bin:$PATH"
export PATH="$HOME/.pyenv/shims:$PATH"
export BBOT_DISTRO_TESTS=true
poetry env use python3.11
poetry install
poetry run pytest --reruns 2 -o timeout_func_only=true --timeout 1200 --disable-warnings --log-cli-level=INFO .
34 changes: 34 additions & 0 deletions .github/workflows/docs_updater.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Daily Docs Update

on:
schedule:
- cron: '30 2 * * *' # Runs daily at 2:30 AM UTC, a less congested time
workflow_dispatch: # Allows manual triggering of the workflow

jobs:
update_docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
token: ${{ secrets.BBOT_DOCS_UPDATER_PAT }}
ref: dev # Checkout the dev branch
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.x"
- name: Install dependencies
run: |
pip install poetry
poetry install
- name: Generate docs
run: |
poetry run bbot/scripts/docs.py
- name: Create or Update Pull Request
uses: peter-evans/create-pull-request@v7
with:
token: ${{ secrets.BBOT_DOCS_UPDATER_PAT }}
branch: update-docs
base: dev
title: "Daily Docs Update"
body: "This is an automated pull request to update the documentation."
22 changes: 0 additions & 22 deletions .github/workflows/lint.yml

This file was deleted.

173 changes: 154 additions & 19 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -1,47 +1,182 @@
name: tests
on: [push, pull_request]
name: Tests (Python Versions)
on:
push:
branches:
- stable
- dev
pull_request:

concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: psf/black@stable
with:
options: "--check"
- name: Install Python 3
uses: actions/setup-python@v5
with:
python-version: "3.x"
- name: Install dependencies
run: |
pip install flake8
- name: flake8
run: |
flake8
test:
needs: lint
runs-on: ubuntu-latest
strategy:
# if one python version fails, let the others finish
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12"]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v3
uses: actions/setup-python@v5
with:
python-version: 3.9
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
pip install poetry
poetry install
- name: Run tests with pytest
- name: Run tests
run: |
poetry run pytest --disable-warnings --cov-report xml:cov.xml --cov=bbot .
- uses: codecov/codecov-action@v2
poetry run pytest --exitfirst --reruns 2 -o timeout_func_only=true --timeout 1200 --disable-warnings --log-cli-level=INFO --cov-config=bbot/test/coverage.cfg --cov-report xml:cov.xml --cov=bbot .
- name: Upload Debug Logs
uses: actions/upload-artifact@v3
with:
name: pytest-debug-logs
path: pytest_debug.log
- name: Upload Code Coverage
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./cov.xml
fail_ci_if_error: true
verbose: true
pypi:
runs-on: ubuntu-latest
publish_code:
needs: test
if: github.event_name == 'push' && github.ref == 'refs/heads/stable'
runs-on: ubuntu-latest
if: github.event_name == 'push' && (github.ref == 'refs/heads/dev' || github.ref == 'refs/heads/stable')
continue-on-error: true
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@v3
uses: actions/setup-python@v5
with:
python-version: 3.9
python-version: "3.x"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install build
- name: Build package
pip install poetry build
poetry self add "poetry-dynamic-versioning[plugin]"
- name: Build Pypi package
if: github.ref == 'refs/heads/stable' || github.ref == 'refs/heads/dev'
run: python -m build
- name: Publish package
uses: pypa/gh-action-pypi-publish@release/v1
- name: Publish Pypi package
if: github.ref == 'refs/heads/stable' || github.ref == 'refs/heads/dev'
uses: pypa/gh-action-pypi-publish@release/v1.5
with:
password: ${{ secrets.PYPI_API_TOKEN }}
- name: Get BBOT version
id: version
run: echo "BBOT_VERSION=$(poetry version | cut -d' ' -f2)" >> $GITHUB_OUTPUT
- name: Publish to Docker Hub (dev)
if: github.event_name == 'push' && github.ref == 'refs/heads/dev'
uses: elgohr/Publish-Docker-Github-Action@v5
with:
name: blacklanternsecurity/bbot
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
tags: "latest,dev,${{ steps.version.outputs.BBOT_VERSION }}"
- name: Publish to Docker Hub (stable)
if: github.event_name == 'push' && github.ref == 'refs/heads/stable'
uses: elgohr/Publish-Docker-Github-Action@v5
with:
name: blacklanternsecurity/bbot
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
tags: "stable,${{ steps.version.outputs.BBOT_VERSION }}"
- name: Docker Hub Description
if: github.event_name == 'push' && github.ref == 'refs/heads/dev'
uses: peter-evans/dockerhub-description@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
repository: blacklanternsecurity/bbot
outputs:
BBOT_VERSION: ${{ steps.version.outputs.BBOT_VERSION }}
publish_docs:
runs-on: ubuntu-latest
if: github.event_name == 'push' && (github.ref == 'refs/heads/stable' || github.ref == 'refs/heads/dev')
steps:
- uses: actions/checkout@v4
with:
token: ${{ secrets.BBOT_DOCS_UPDATER_PAT }}
- uses: actions/setup-python@v4
with:
python-version: "3.x"
- run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
- uses: actions/cache@v3
with:
key: mkdocs-material-${{ env.cache_id }}
path: .cache
restore-keys: |
mkdocs-material-
- name: Install dependencies
run: |
pip install poetry
poetry install --only=docs
- name: Configure Git
run: |
git config user.name github-actions
git config user.email [email protected]
git fetch origin gh-pages:refs/remotes/origin/gh-pages
if git show-ref --verify --quiet refs/heads/gh-pages; then
git branch -f gh-pages origin/gh-pages
else
git branch --track gh-pages origin/gh-pages
fi
- name: Generate docs (stable branch)
if: github.ref == 'refs/heads/stable'
run: |
poetry run mike deploy Stable
- name: Generate docs (dev branch)
if: github.ref == 'refs/heads/dev'
run: |
poetry run mike deploy Dev
- name: Publish docs
run: |
git switch gh-pages
git push
# tag_commit:
# needs: publish_code
# runs-on: ubuntu-latest
# if: github.event_name == 'push' && github.ref == 'refs/heads/stable'
# steps:
# - uses: actions/checkout@v4
# with:
# ref: ${{ github.head_ref }}
# fetch-depth: 0 # Fetch all history for all tags and branches
# - name: Configure git
# run: |
# git config --local user.email "[email protected]"
# git config --local user.name "GitHub Actions"
# - name: Tag commit
# run: |
# VERSION="${{ needs.publish_code.outputs.BBOT_VERSION }}"
# if [[ "${{ github.ref }}" == "refs/heads/dev" ]]; then
# TAG_MESSAGE="Dev Release $VERSION"
# elif [[ "${{ github.ref }}" == "refs/heads/stable" ]]; then
# TAG_MESSAGE="Stable Release $VERSION"
# fi
# git tag -a $VERSION -m "$TAG_MESSAGE"
# git push origin --tags
Loading
Loading