pySigma 项目使用教程
1. 项目目录结构及介绍
pySigma 项目的目录结构如下:
pySigma/
├── docs/
├── sigma/
├── tests/
├── tools/
├── .git-blame-ignore-revs
├── .gitattributes
├── .gitignore
├── .pre-commit-config.yaml
├── .readthedocs.yaml
├── LICENSE
├── README.md
├── poetry.lock
├── print-coverage.py
├── pyproject.toml
目录介绍
- docs/: 存放项目的文档文件,通常包含使用说明、API 文档等。
- sigma/: 核心代码目录,包含 Sigma 规则解析和转换的实现。
- tests/: 存放项目的测试代码,用于确保代码的正确性和稳定性。
- tools/: 存放一些辅助工具或脚本,可能用于项目的构建、测试等。
- .git-blame-ignore-revs: Git 配置文件,用于忽略某些提交的 blame 信息。
- .gitattributes: Git 配置文件,用于指定文件的属性。
- .gitignore: Git 配置文件,用于指定忽略的文件和目录。
- .pre-commit-config.yaml: 预提交钩子配置文件,用于在提交代码前执行一些检查。
- .readthedocs.yaml: Read the Docs 配置文件,用于配置文档的构建和发布。
- LICENSE: 项目的开源许可证文件。
- README.md: 项目的介绍文件,通常包含项目的基本信息、安装和使用说明。
- poetry.lock: Poetry 依赖锁定文件,用于确保依赖版本的稳定性。
- print-coverage.py: 用于打印测试覆盖率的脚本。
- pyproject.toml: 项目的配置文件,包含项目的元数据、依赖等信息。
2. 项目的启动文件介绍
pySigma 项目没有明确的“启动文件”,因为它是一个库,而不是一个独立的应用程序。然而,核心功能主要在 sigma/
目录中实现。
核心文件
- sigma/sigma.py: 这是 Sigma 规则解析和转换的核心文件,包含了主要的逻辑和功能。
3. 项目的配置文件介绍
pyproject.toml
pyproject.toml
是 pySigma 项目的主要配置文件,包含了项目的元数据、依赖、构建配置等信息。以下是一些关键配置项的介绍:
[tool.poetry]
name = "pySigma"
version = "0.10.10"
description = "Python library to parse and convert Sigma rules into queries"
authors = ["Thomas Patzke <thomas@patzke.org>"]
license = "LGPL-2.1"
[tool.poetry.dependencies]
python = "^3.8"
[tool.poetry.dev-dependencies]
pytest = "^6.2.5"
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
配置项介绍
- [tool.poetry]: 定义了项目的名称、版本、描述、作者和许可证信息。
- [tool.poetry.dependencies]: 定义了项目的依赖项,例如 Python 版本和第三方库。
- [tool.poetry.dev-dependencies]: 定义了开发依赖项,例如测试框架
pytest
。 - [build-system]: 定义了构建系统的要求和后端。
通过这些配置文件,开发者可以轻松管理项目的依赖、构建和发布流程。