freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

Blackdagger:一款针对DevSecOps的工作流自动化工具
2024-12-10 17:04:22
所属地 广西

关于Blackdagger

Blackdagger是一款基于DAG的工作流自动化工具,旨在为协调 DevOps、DevSecOps、MLOps、MLSecOps 和持续自动红队 (CART) 环境中的复杂工作流程提供了全面的解决方案。

从本质上讲,Blackdagger 通过其用户友好的方法和强大的功能简化了复杂工作流程的管理和执行。Blackdagger 利用声明性 YAML 格式,使用户能够使用有向无环图 (DAG) 定义自动化管道,从而有助于清晰简洁地表达任务依赖关系和执行逻辑。

功能特性

1、单一二进制文件安装;

2、用于定义 DAG 的声明性 YAML 格式;

3、用于可视化管理、重新运行和监控管道的 Web UI;

4、使用现有程序,无需进行任何修改;

5、自包含,无需 DBMS;

6、适用于持续红队(CART);

7、适用于 DevOps 和 DevSecOps;

8、适用于 MLOps 和 MLSecOps;

工具安装

Bash脚本安装

下载脚本:

curl -L https://raw.githubusercontent.com/ErdemOzgen/blackdagger/main/scripts/blackdagger-installer.sh -o blackdagger-installer.sh

确保脚本具备可执行权限:

chmod +x blackdagger-installer.sh

使用sudo运行脚本:

sudo bash blackdagger-installer.sh

Docker使用

git clone https://github.com/ErdemOzgen/blackdagger.git

cd blackdagger

docker compose build

docker compose up

工具使用

获取用于各种目的的示例 YAML

安装后,您可以使用我们为各种目的创建的 YAML。我们创建这些 YAML 是为了帮助您了解可以在 Blackdagger 中使用的机制,并为您提供创建自己的 YAML 或修改我们的 YAML 以满足您的目的的灵感:

可以通过运行以下命令按类别下载这些 YAML:

# Categories: mlops, default, devsecops, devops, mlsecops, cart

blackdagger pull <category>

启动 Web UI

使用下列命令启动服务器和调度程序,然后访问http://127.0.0.1:8080即可使用Web UI:

blackdagger start-all

blackdagger server

创建新的 DAG

点击 Web UI 左侧面板的菜单,导航到 DAG 列表页面,然后点击页面顶部的New DAG按钮创建 DAG。在对话框中输入example。

编辑 DAG

转到SPEC选项卡并点击Edit按钮。复制并粘贴以下示例并点击Save按钮:

schedule: "* * * * *" # Run the DAG every minute

steps:

  - name: s1

    command: echo Hello blackdagger

  - name: s2

    command: echo done!

    depends:

      - s1

执行 DAG

您可以通过按下Start按钮来执行示例,然后就可以在 Web UI 的日志页面中看到“Hello blackdagger”了。

命令行使用

# 运行DAG

blackdagger start [--params=<params>] <file>

# 显示当前DAG状态

blackdagger status <file>

# 重新运行指定的DAG

blackdagger retry --req=<request-id> <file>

# 终止DAG执行

blackdagger stop <file>

# 重启当前运行的DAG

blackdagger restart <file>

# Dry-runs DAG

blackdagger dry [--params=<params>] <file>

# 启动Web UI服务器和计划任务进程

blackdagger start-all [--host=<host>] [--port=<port>] [--dags=<path to directory>]

# 启动Blackdagger Web UI 服务器

blackdagger server [--host=<host>] [--port=<port>] [--dags=<path to directory>]

# 启动计划任务进程

blackdagger scheduler [--dags=<path to directory>]

# 显示当前工具版本

blackdagger version

# 从远程代码库获取YAML

blackdagger pull <repo domain name>

工具运行截图


工具运行演示

Blackdagger的安装和设置:【点我观看

Blackdagger的使用:【点我观看

Blackdagger的 DAG 创建和运行:【点我观看

许可证协议

本项目的开发与发布遵循GPL-3.0开源许可协议。

项目地址

Blackdagger:【GitHub传送门

参考资料

https://blackdagger.readthedocs.io/

# 自动化 # 安全自动化 # DevSecOps # DevOps
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录