Python 部署
- 作者仓库星标 0
- 作者仓库 skills-registry
Pre-flight checks
!git status --short
!git log --oneline -5
Deploy to: $ARGUMENTS
If $ARGUMENTS is empty, stop immediately. Report: "No environment specified. Invoke as: /python-deploy <environment> (e.g., /python-deploy staging or /python-deploy production)."
Step 1: Abort if there are uncommitted changes
Check the git status output above. If it shows any lines (modified, untracked, staged, or deleted files), stop here.
Report: "Deploy aborted: there are uncommitted changes. Commit or stash them before deploying to $ARGUMENTS."
A clean working tree shows no output from git status --short. Do not proceed unless the output is empty.
Step 2: Run the test suite
Run:
python -m pytest
If any tests fail, report the failing test names and count, then stop. Do not proceed.
If pytest is not installed, try:
python -m unittest discover
If neither is available, report that no test runner was found and stop. Do not deploy without running tests.
Step 3: Build the distribution package
Run:
python -m build
This requires the build package. If it is not installed, run:
pip install build
Then retry python -m build.
If the build fails, report the error output and stop.
On success, confirm the output: the dist/ directory should contain a .whl and a .tar.gz file.
Step 4: Create a deployment tag
Construct the tag name:
deploy-$ARGUMENTS-<YYYYMMDD>-<HHMMSS>
Use current UTC date and time. Example: deploy-staging-20260513-143207.
Run:
git tag deploy-$ARGUMENTS-<YYYYMMDD>-<HHMMSS>
Step 5: Push the tag
Run:
git push origin deploy-$ARGUMENTS-<YYYYMMDD>-<HHMMSS>
If the push fails, report the error and stop.
Step 6: Report success
Print a final summary:
Deploy initiated.
Environment: $ARGUMENTS
Tag: deploy-$ARGUMENTS-<YYYYMMDD>-<HHMMSS>
Time: <YYYY-MM-DD HH:MM:SS UTC>
Build artifacts: dist/
<!-- tomevault:4.0:skill_md:2026-05-22 -->Source: davila7/claude-with-skills — distributed by TomeVault.
- 流狐分类
- 运维部署
- 作者声明 Agent
- 未找到明确声明;不据此推断已兼容或已测试
- 静态检查
- 88 / 100 · 启发式扫描,不代表运行安全
- 作者 / 版本 / 许可
- @tomevault-io · 未声明 license
- 流狐 Token 估算
- 低消耗
- 流狐接入估算
- 即装即用
- 是否需要外部 API Key
- 未发现要求
- 检测到的系统要求
- 未声明
- 底层运行要求
- Python
- 检测到的文件与系统行为
-
- 只读
- 允许写入 / 修改
- 检测到的网络行为
- 仅限本地
- 安装命令数
- 无(仅作为资料)
档案由构建时根据 SKILL.md 与安装命令自动衍生,可能与作者实际意图存在差异。
需要注意: 未限定 allowed-tools,默认拥有全部工具权限。
作者没有在当前 SKILL.md 中定义固定输出样例。 Check the git status output above. If it shows any lines (modified, untracked, staged, or deleted files), stop here. Report: "Deploy aborted: there are uncommitted changes. Commit or stash them before deploying to $ARGUMENTS."
Run: If any tests fail, report the failing test names and count, then stop. Do not proceed. If pytest is not installed, try:
Run: This requires the build package. If it is not installed, run: Then retry python -m build.
Construct the tag name: Use current UTC date and time. Example: deploy-staging-20260513-143207. Run:
Run: If the push fails, report the error and stop.
Print a final summary: Source: davila7/claude-with-skills — distributed by TomeVault. <!-- tomevault:4.0:skillmd:2026-05-22 -->
## Pre-flight checks
!`git status --short`
!`git log --oneline -5`
---
Deploy to: $ARGUMENTS
If `$ARGUMENTS` is empty, stop immediately. Report: "No environment specified. Invoke as: /python-deploy <environment> (e.g., /python-deploy staging or /python-deploy production)."
### Step 1: Abort if there are uncommitted changes
Check the git status output above. If it shows any lines (modified, untracked, staged, or deleted files), stop here.
Report: "Deploy aborted: there are uncommitted changes. Commit or stash them before deploying to $ARGUMENTS."
A clean working tree shows no output from `git status --short`. Do not proceed unless the output is empty.
### Step 2: Run the test suite
Run:
```
python -m pytest
```
If any tests fail, report the failing test names and count, then stop. Do not proceed.
If pytest is not installed, try:
```
python -m unittest discover
```
If neither is available, report that no test runner was found and stop. Do not deploy without running tests.
### Step 3: Build the distribution package
Run:
```
python -m build
```
This requires the `build` package. If it is not installed, run:
```
pip install build
```
Then retry `python -m build`.
If the build fails, report the error output and stop.
On success, confirm the output: the `dist/` directory should contain a `.whl` and a `.tar.gz` file.
### Step 4: Create a deployment tag
Construct the tag name:
```
deploy-$ARGUMENTS-<YYYYMMDD>-<HHMMSS>
```
Use current UTC date and time. Example: `deploy-staging-20260513-143207`.
Run:
```
git tag deploy-$ARGUMENTS-<YYYYMMDD>-<HHMMSS>
```
### Step 5: Push the tag
Run:
```
git push origin deploy-$ARGUMENTS-<YYYYMMDD>-<HHMMSS>
```
If the push fails, report the error and stop.
### Step 6: Report success
Print a final summary:
```
… 作者原文负责流程事实;流狐只索引当前章节、要点、文件与命令。
章节 -> Pre-flight checks → Step 1: Abort if there are uncommitted changes → Step 2: Run the test suite → Step 3: Build the distribution package → Step 4: Create a deployment tag → Step 5: Push the tag
要点 -> If $ARGUMENTS is empty, stop immediately. · Check the git status output above. · Report: "Deploy aborted: there are uncommitted changes. · A clean working tree shows no output from git status --short. · If any tests fail, report the failing test names and count, then stop. · If neither is available, report that no test runner was found and stop. · This requires the build package. · Then retry python -m build.
文件/命令 -> git status --short · git log --oneline -5 · $ARGUMENTS · build · python -m build · dist/ · .whl · .tar.gz
内容 SHA-256 -> da4a602d62e7
方法与流程
适用与边界
原文中的明确线索
git status --short、git log --oneline -5、$ARGUMENTS、build、python -m build、dist/、.whl、.tar.gz