tool-compass 2.0.3__tar.gz → 2.0.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {tool_compass-2.0.3 → tool_compass-2.0.4}/.dockerignore +56 -56
- {tool_compass-2.0.3 → tool_compass-2.0.4}/.env.example +62 -62
- {tool_compass-2.0.3 → tool_compass-2.0.4}/.github/ISSUE_TEMPLATE/bug_report.yml +46 -46
- {tool_compass-2.0.3 → tool_compass-2.0.4}/.github/ISSUE_TEMPLATE/feature_request.yml +29 -29
- {tool_compass-2.0.3 → tool_compass-2.0.4}/.github/dependabot.yml +20 -20
- {tool_compass-2.0.3 → tool_compass-2.0.4}/.github/workflows/docker.yml +46 -46
- {tool_compass-2.0.3 → tool_compass-2.0.4}/.github/workflows/publish.yml +36 -36
- {tool_compass-2.0.3 → tool_compass-2.0.4}/.github/workflows/test.yml +147 -143
- {tool_compass-2.0.3 → tool_compass-2.0.4}/.gitignore +98 -98
- {tool_compass-2.0.3 → tool_compass-2.0.4}/AUDIT_REPORT.md +245 -245
- {tool_compass-2.0.3 → tool_compass-2.0.4}/CHANGELOG.md +171 -171
- {tool_compass-2.0.3 → tool_compass-2.0.4}/CODE_OF_CONDUCT.md +26 -26
- {tool_compass-2.0.3 → tool_compass-2.0.4}/CONTRIBUTING.md +311 -311
- {tool_compass-2.0.3 → tool_compass-2.0.4}/Dockerfile +83 -83
- {tool_compass-2.0.3 → tool_compass-2.0.4}/LICENSE +21 -21
- {tool_compass-2.0.3 → tool_compass-2.0.4}/PKG-INFO +2 -2
- {tool_compass-2.0.3 → tool_compass-2.0.4}/README.md +1 -1
- {tool_compass-2.0.3 → tool_compass-2.0.4}/SECURITY.md +100 -100
- {tool_compass-2.0.3 → tool_compass-2.0.4}/_version.py +40 -40
- {tool_compass-2.0.3 → tool_compass-2.0.4}/analytics.py +714 -714
- {tool_compass-2.0.3 → tool_compass-2.0.4}/backend_client_mcp.py +434 -434
- {tool_compass-2.0.3 → tool_compass-2.0.4}/backend_client_simple.py +600 -600
- {tool_compass-2.0.3 → tool_compass-2.0.4}/chain_indexer.py +476 -476
- {tool_compass-2.0.3 → tool_compass-2.0.4}/compass_config.example.json +58 -58
- {tool_compass-2.0.3 → tool_compass-2.0.4}/config.py +358 -358
- {tool_compass-2.0.3 → tool_compass-2.0.4}/docker-compose.yml +99 -99
- {tool_compass-2.0.3 → tool_compass-2.0.4}/docs/assets/social-preview.svg +41 -41
- {tool_compass-2.0.3 → tool_compass-2.0.4}/embedder.py +230 -230
- {tool_compass-2.0.3 → tool_compass-2.0.4}/gateway.py +1234 -1234
- {tool_compass-2.0.3 → tool_compass-2.0.4}/indexer.py +564 -564
- {tool_compass-2.0.3 → tool_compass-2.0.4}/llms.txt +102 -102
- tool_compass-2.0.4/logo.png +0 -0
- {tool_compass-2.0.3 → tool_compass-2.0.4}/pyproject.toml +1 -1
- {tool_compass-2.0.3 → tool_compass-2.0.4}/pytest.ini +31 -31
- {tool_compass-2.0.3 → tool_compass-2.0.4}/requirements-dev.txt +24 -24
- {tool_compass-2.0.3 → tool_compass-2.0.4}/requirements.txt +15 -15
- {tool_compass-2.0.3 → tool_compass-2.0.4}/scripts/check-org-urls.sh +44 -44
- {tool_compass-2.0.3 → tool_compass-2.0.4}/setup.py +77 -77
- {tool_compass-2.0.3 → tool_compass-2.0.4}/sync_manager.py +425 -425
- {tool_compass-2.0.3 → tool_compass-2.0.4}/tool_manifest.py +817 -817
- {tool_compass-2.0.3 → tool_compass-2.0.4}/ui.py +1198 -1198
- {tool_compass-2.0.3 → tool_compass-2.0.4}/docs/assets/social-preview.png +0 -0
- {tool_compass-2.0.3 → tool_compass-2.0.4}/docs/assets/tool-compass-logo-dark-bg.jpg +0 -0
|
@@ -1,56 +1,56 @@
|
|
|
1
|
-
# Git
|
|
2
|
-
.git
|
|
3
|
-
.gitignore
|
|
4
|
-
|
|
5
|
-
# Docker
|
|
6
|
-
Dockerfile
|
|
7
|
-
docker-compose.yml
|
|
8
|
-
.dockerignore
|
|
9
|
-
|
|
10
|
-
# Python
|
|
11
|
-
__pycache__
|
|
12
|
-
*.py[cod]
|
|
13
|
-
*$py.class
|
|
14
|
-
*.so
|
|
15
|
-
.Python
|
|
16
|
-
venv/
|
|
17
|
-
.venv/
|
|
18
|
-
ENV/
|
|
19
|
-
env/
|
|
20
|
-
.eggs/
|
|
21
|
-
*.egg-info/
|
|
22
|
-
*.egg
|
|
23
|
-
|
|
24
|
-
# IDE
|
|
25
|
-
.vscode/
|
|
26
|
-
.idea/
|
|
27
|
-
*.swp
|
|
28
|
-
*.swo
|
|
29
|
-
|
|
30
|
-
# Testing
|
|
31
|
-
.pytest_cache/
|
|
32
|
-
.coverage
|
|
33
|
-
htmlcov/
|
|
34
|
-
.tox/
|
|
35
|
-
|
|
36
|
-
# Build artifacts
|
|
37
|
-
dist/
|
|
38
|
-
build/
|
|
39
|
-
*.manifest
|
|
40
|
-
*.spec
|
|
41
|
-
|
|
42
|
-
# OS files
|
|
43
|
-
.DS_Store
|
|
44
|
-
Thumbs.db
|
|
45
|
-
|
|
46
|
-
# Local development files
|
|
47
|
-
*.local.json
|
|
48
|
-
.env.local
|
|
49
|
-
|
|
50
|
-
# Gradio cache
|
|
51
|
-
flagged/
|
|
52
|
-
|
|
53
|
-
# Keep db directory structure but not contents
|
|
54
|
-
db/*.db
|
|
55
|
-
db/*.hnsw
|
|
56
|
-
!db/.gitkeep
|
|
1
|
+
# Git
|
|
2
|
+
.git
|
|
3
|
+
.gitignore
|
|
4
|
+
|
|
5
|
+
# Docker
|
|
6
|
+
Dockerfile
|
|
7
|
+
docker-compose.yml
|
|
8
|
+
.dockerignore
|
|
9
|
+
|
|
10
|
+
# Python
|
|
11
|
+
__pycache__
|
|
12
|
+
*.py[cod]
|
|
13
|
+
*$py.class
|
|
14
|
+
*.so
|
|
15
|
+
.Python
|
|
16
|
+
venv/
|
|
17
|
+
.venv/
|
|
18
|
+
ENV/
|
|
19
|
+
env/
|
|
20
|
+
.eggs/
|
|
21
|
+
*.egg-info/
|
|
22
|
+
*.egg
|
|
23
|
+
|
|
24
|
+
# IDE
|
|
25
|
+
.vscode/
|
|
26
|
+
.idea/
|
|
27
|
+
*.swp
|
|
28
|
+
*.swo
|
|
29
|
+
|
|
30
|
+
# Testing
|
|
31
|
+
.pytest_cache/
|
|
32
|
+
.coverage
|
|
33
|
+
htmlcov/
|
|
34
|
+
.tox/
|
|
35
|
+
|
|
36
|
+
# Build artifacts
|
|
37
|
+
dist/
|
|
38
|
+
build/
|
|
39
|
+
*.manifest
|
|
40
|
+
*.spec
|
|
41
|
+
|
|
42
|
+
# OS files
|
|
43
|
+
.DS_Store
|
|
44
|
+
Thumbs.db
|
|
45
|
+
|
|
46
|
+
# Local development files
|
|
47
|
+
*.local.json
|
|
48
|
+
.env.local
|
|
49
|
+
|
|
50
|
+
# Gradio cache
|
|
51
|
+
flagged/
|
|
52
|
+
|
|
53
|
+
# Keep db directory structure but not contents
|
|
54
|
+
db/*.db
|
|
55
|
+
db/*.hnsw
|
|
56
|
+
!db/.gitkeep
|
|
@@ -1,62 +1,62 @@
|
|
|
1
|
-
# Tool Compass Environment Configuration
|
|
2
|
-
# Copy this file to .env and customize as needed
|
|
3
|
-
|
|
4
|
-
# =============================================================================
|
|
5
|
-
# Core Configuration
|
|
6
|
-
# =============================================================================
|
|
7
|
-
|
|
8
|
-
# Project root directory (auto-detected if not set)
|
|
9
|
-
# TOOL_COMPASS_BASE_PATH=/path/to/mcp-tool-shop
|
|
10
|
-
|
|
11
|
-
# Python executable (auto-detected from venv if not set)
|
|
12
|
-
# TOOL_COMPASS_PYTHON=/path/to/python
|
|
13
|
-
|
|
14
|
-
# Configuration file path (default: ./compass_config.json)
|
|
15
|
-
# TOOL_COMPASS_CONFIG=/path/to/compass_config.json
|
|
16
|
-
|
|
17
|
-
# =============================================================================
|
|
18
|
-
# External Services
|
|
19
|
-
# =============================================================================
|
|
20
|
-
|
|
21
|
-
# Ollama server URL for embeddings
|
|
22
|
-
OLLAMA_URL=http://localhost:11434
|
|
23
|
-
|
|
24
|
-
# ComfyUI server URL (for AI image generation backend)
|
|
25
|
-
COMFYUI_URL=http://localhost:8188
|
|
26
|
-
|
|
27
|
-
# =============================================================================
|
|
28
|
-
# Logging
|
|
29
|
-
# =============================================================================
|
|
30
|
-
|
|
31
|
-
# Log level: DEBUG, INFO, WARNING, ERROR, CRITICAL
|
|
32
|
-
LOG_LEVEL=INFO
|
|
33
|
-
|
|
34
|
-
# =============================================================================
|
|
35
|
-
# Gradio UI Settings
|
|
36
|
-
# =============================================================================
|
|
37
|
-
|
|
38
|
-
# Server bind address (0.0.0.0 for Docker, 127.0.0.1 for local)
|
|
39
|
-
GRADIO_SERVER_NAME=127.0.0.1
|
|
40
|
-
|
|
41
|
-
# Server port
|
|
42
|
-
GRADIO_SERVER_PORT=7860
|
|
43
|
-
|
|
44
|
-
# Enable public sharing link (set to "true" for Gradio share URL)
|
|
45
|
-
# GRADIO_SHARE=false
|
|
46
|
-
|
|
47
|
-
# =============================================================================
|
|
48
|
-
# Docker-Specific
|
|
49
|
-
# =============================================================================
|
|
50
|
-
|
|
51
|
-
# When running in Docker, use host.docker.internal to reach host services
|
|
52
|
-
# OLLAMA_URL=http://host.docker.internal:11434
|
|
53
|
-
|
|
54
|
-
# =============================================================================
|
|
55
|
-
# Analytics (optional)
|
|
56
|
-
# =============================================================================
|
|
57
|
-
|
|
58
|
-
# Disable analytics tracking
|
|
59
|
-
# TOOL_COMPASS_ANALYTICS_DISABLED=true
|
|
60
|
-
|
|
61
|
-
# Hot cache size (number of frequently used tools to pre-load)
|
|
62
|
-
# TOOL_COMPASS_HOT_CACHE_SIZE=10
|
|
1
|
+
# Tool Compass Environment Configuration
|
|
2
|
+
# Copy this file to .env and customize as needed
|
|
3
|
+
|
|
4
|
+
# =============================================================================
|
|
5
|
+
# Core Configuration
|
|
6
|
+
# =============================================================================
|
|
7
|
+
|
|
8
|
+
# Project root directory (auto-detected if not set)
|
|
9
|
+
# TOOL_COMPASS_BASE_PATH=/path/to/mcp-tool-shop
|
|
10
|
+
|
|
11
|
+
# Python executable (auto-detected from venv if not set)
|
|
12
|
+
# TOOL_COMPASS_PYTHON=/path/to/python
|
|
13
|
+
|
|
14
|
+
# Configuration file path (default: ./compass_config.json)
|
|
15
|
+
# TOOL_COMPASS_CONFIG=/path/to/compass_config.json
|
|
16
|
+
|
|
17
|
+
# =============================================================================
|
|
18
|
+
# External Services
|
|
19
|
+
# =============================================================================
|
|
20
|
+
|
|
21
|
+
# Ollama server URL for embeddings
|
|
22
|
+
OLLAMA_URL=http://localhost:11434
|
|
23
|
+
|
|
24
|
+
# ComfyUI server URL (for AI image generation backend)
|
|
25
|
+
COMFYUI_URL=http://localhost:8188
|
|
26
|
+
|
|
27
|
+
# =============================================================================
|
|
28
|
+
# Logging
|
|
29
|
+
# =============================================================================
|
|
30
|
+
|
|
31
|
+
# Log level: DEBUG, INFO, WARNING, ERROR, CRITICAL
|
|
32
|
+
LOG_LEVEL=INFO
|
|
33
|
+
|
|
34
|
+
# =============================================================================
|
|
35
|
+
# Gradio UI Settings
|
|
36
|
+
# =============================================================================
|
|
37
|
+
|
|
38
|
+
# Server bind address (0.0.0.0 for Docker, 127.0.0.1 for local)
|
|
39
|
+
GRADIO_SERVER_NAME=127.0.0.1
|
|
40
|
+
|
|
41
|
+
# Server port
|
|
42
|
+
GRADIO_SERVER_PORT=7860
|
|
43
|
+
|
|
44
|
+
# Enable public sharing link (set to "true" for Gradio share URL)
|
|
45
|
+
# GRADIO_SHARE=false
|
|
46
|
+
|
|
47
|
+
# =============================================================================
|
|
48
|
+
# Docker-Specific
|
|
49
|
+
# =============================================================================
|
|
50
|
+
|
|
51
|
+
# When running in Docker, use host.docker.internal to reach host services
|
|
52
|
+
# OLLAMA_URL=http://host.docker.internal:11434
|
|
53
|
+
|
|
54
|
+
# =============================================================================
|
|
55
|
+
# Analytics (optional)
|
|
56
|
+
# =============================================================================
|
|
57
|
+
|
|
58
|
+
# Disable analytics tracking
|
|
59
|
+
# TOOL_COMPASS_ANALYTICS_DISABLED=true
|
|
60
|
+
|
|
61
|
+
# Hot cache size (number of frequently used tools to pre-load)
|
|
62
|
+
# TOOL_COMPASS_HOT_CACHE_SIZE=10
|
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
name: Bug Report
|
|
2
|
-
description: Report a bug or issue
|
|
3
|
-
title: "[Bug]: "
|
|
4
|
-
labels: ["bug"]
|
|
5
|
-
body:
|
|
6
|
-
- type: textarea
|
|
7
|
-
id: description
|
|
8
|
-
attributes:
|
|
9
|
-
label: Description
|
|
10
|
-
description: Clear description of the bug
|
|
11
|
-
validations:
|
|
12
|
-
required: true
|
|
13
|
-
- type: textarea
|
|
14
|
-
id: reproduce
|
|
15
|
-
attributes:
|
|
16
|
-
label: Steps to Reproduce
|
|
17
|
-
description: How to reproduce the issue
|
|
18
|
-
placeholder: |
|
|
19
|
-
1. Run command...
|
|
20
|
-
2. See error...
|
|
21
|
-
validations:
|
|
22
|
-
required: true
|
|
23
|
-
- type: textarea
|
|
24
|
-
id: expected
|
|
25
|
-
attributes:
|
|
26
|
-
label: Expected Behavior
|
|
27
|
-
description: What you expected to happen
|
|
28
|
-
validations:
|
|
29
|
-
required: true
|
|
30
|
-
- type: dropdown
|
|
31
|
-
id: os
|
|
32
|
-
attributes:
|
|
33
|
-
label: Operating System
|
|
34
|
-
options:
|
|
35
|
-
- Windows
|
|
36
|
-
- Linux
|
|
37
|
-
- macOS
|
|
38
|
-
validations:
|
|
39
|
-
required: true
|
|
40
|
-
- type: input
|
|
41
|
-
id: python
|
|
42
|
-
attributes:
|
|
43
|
-
label: Python Version
|
|
44
|
-
placeholder: "3.11"
|
|
45
|
-
validations:
|
|
46
|
-
required: true
|
|
1
|
+
name: Bug Report
|
|
2
|
+
description: Report a bug or issue
|
|
3
|
+
title: "[Bug]: "
|
|
4
|
+
labels: ["bug"]
|
|
5
|
+
body:
|
|
6
|
+
- type: textarea
|
|
7
|
+
id: description
|
|
8
|
+
attributes:
|
|
9
|
+
label: Description
|
|
10
|
+
description: Clear description of the bug
|
|
11
|
+
validations:
|
|
12
|
+
required: true
|
|
13
|
+
- type: textarea
|
|
14
|
+
id: reproduce
|
|
15
|
+
attributes:
|
|
16
|
+
label: Steps to Reproduce
|
|
17
|
+
description: How to reproduce the issue
|
|
18
|
+
placeholder: |
|
|
19
|
+
1. Run command...
|
|
20
|
+
2. See error...
|
|
21
|
+
validations:
|
|
22
|
+
required: true
|
|
23
|
+
- type: textarea
|
|
24
|
+
id: expected
|
|
25
|
+
attributes:
|
|
26
|
+
label: Expected Behavior
|
|
27
|
+
description: What you expected to happen
|
|
28
|
+
validations:
|
|
29
|
+
required: true
|
|
30
|
+
- type: dropdown
|
|
31
|
+
id: os
|
|
32
|
+
attributes:
|
|
33
|
+
label: Operating System
|
|
34
|
+
options:
|
|
35
|
+
- Windows
|
|
36
|
+
- Linux
|
|
37
|
+
- macOS
|
|
38
|
+
validations:
|
|
39
|
+
required: true
|
|
40
|
+
- type: input
|
|
41
|
+
id: python
|
|
42
|
+
attributes:
|
|
43
|
+
label: Python Version
|
|
44
|
+
placeholder: "3.11"
|
|
45
|
+
validations:
|
|
46
|
+
required: true
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
name: Feature Request
|
|
2
|
-
description: Suggest a new feature
|
|
3
|
-
title: "[Feature]: "
|
|
4
|
-
labels: ["enhancement"]
|
|
5
|
-
body:
|
|
6
|
-
- type: textarea
|
|
7
|
-
id: problem
|
|
8
|
-
attributes:
|
|
9
|
-
label: Problem
|
|
10
|
-
description: What problem does this solve?
|
|
11
|
-
validations:
|
|
12
|
-
required: true
|
|
13
|
-
- type: textarea
|
|
14
|
-
id: solution
|
|
15
|
-
attributes:
|
|
16
|
-
label: Proposed Solution
|
|
17
|
-
description: How would you like this to work?
|
|
18
|
-
validations:
|
|
19
|
-
required: true
|
|
20
|
-
- type: textarea
|
|
21
|
-
id: alternatives
|
|
22
|
-
attributes:
|
|
23
|
-
label: Alternatives Considered
|
|
24
|
-
description: Other solutions you've considered
|
|
25
|
-
- type: textarea
|
|
26
|
-
id: context
|
|
27
|
-
attributes:
|
|
28
|
-
label: Additional Context
|
|
29
|
-
description: Any other information
|
|
1
|
+
name: Feature Request
|
|
2
|
+
description: Suggest a new feature
|
|
3
|
+
title: "[Feature]: "
|
|
4
|
+
labels: ["enhancement"]
|
|
5
|
+
body:
|
|
6
|
+
- type: textarea
|
|
7
|
+
id: problem
|
|
8
|
+
attributes:
|
|
9
|
+
label: Problem
|
|
10
|
+
description: What problem does this solve?
|
|
11
|
+
validations:
|
|
12
|
+
required: true
|
|
13
|
+
- type: textarea
|
|
14
|
+
id: solution
|
|
15
|
+
attributes:
|
|
16
|
+
label: Proposed Solution
|
|
17
|
+
description: How would you like this to work?
|
|
18
|
+
validations:
|
|
19
|
+
required: true
|
|
20
|
+
- type: textarea
|
|
21
|
+
id: alternatives
|
|
22
|
+
attributes:
|
|
23
|
+
label: Alternatives Considered
|
|
24
|
+
description: Other solutions you've considered
|
|
25
|
+
- type: textarea
|
|
26
|
+
id: context
|
|
27
|
+
attributes:
|
|
28
|
+
label: Additional Context
|
|
29
|
+
description: Any other information
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
version: 2
|
|
2
|
-
updates:
|
|
3
|
-
- package-ecosystem: "pip"
|
|
4
|
-
directory: "/"
|
|
5
|
-
schedule:
|
|
6
|
-
interval: "weekly"
|
|
7
|
-
open-pull-requests-limit: 5
|
|
8
|
-
labels:
|
|
9
|
-
- "dependencies"
|
|
10
|
-
commit-message:
|
|
11
|
-
prefix: "deps"
|
|
12
|
-
|
|
13
|
-
- package-ecosystem: "github-actions"
|
|
14
|
-
directory: "/"
|
|
15
|
-
schedule:
|
|
16
|
-
interval: "weekly"
|
|
17
|
-
labels:
|
|
18
|
-
- "ci"
|
|
19
|
-
commit-message:
|
|
20
|
-
prefix: "ci"
|
|
1
|
+
version: 2
|
|
2
|
+
updates:
|
|
3
|
+
- package-ecosystem: "pip"
|
|
4
|
+
directory: "/"
|
|
5
|
+
schedule:
|
|
6
|
+
interval: "weekly"
|
|
7
|
+
open-pull-requests-limit: 5
|
|
8
|
+
labels:
|
|
9
|
+
- "dependencies"
|
|
10
|
+
commit-message:
|
|
11
|
+
prefix: "deps"
|
|
12
|
+
|
|
13
|
+
- package-ecosystem: "github-actions"
|
|
14
|
+
directory: "/"
|
|
15
|
+
schedule:
|
|
16
|
+
interval: "weekly"
|
|
17
|
+
labels:
|
|
18
|
+
- "ci"
|
|
19
|
+
commit-message:
|
|
20
|
+
prefix: "ci"
|
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
name: Publish to GHCR
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
release:
|
|
5
|
-
types: [published]
|
|
6
|
-
workflow_dispatch:
|
|
7
|
-
|
|
8
|
-
env:
|
|
9
|
-
REGISTRY: ghcr.io
|
|
10
|
-
IMAGE_NAME: ${{ github.repository }}
|
|
11
|
-
|
|
12
|
-
jobs:
|
|
13
|
-
build-and-push:
|
|
14
|
-
runs-on: ubuntu-latest
|
|
15
|
-
permissions:
|
|
16
|
-
contents: read
|
|
17
|
-
packages: write
|
|
18
|
-
|
|
19
|
-
steps:
|
|
20
|
-
- uses: actions/checkout@v6
|
|
21
|
-
|
|
22
|
-
- name: Log in to GHCR
|
|
23
|
-
uses: docker/login-action@v3
|
|
24
|
-
with:
|
|
25
|
-
registry: ${{ env.REGISTRY }}
|
|
26
|
-
username: ${{ github.actor }}
|
|
27
|
-
password: ${{ secrets.GITHUB_TOKEN }}
|
|
28
|
-
|
|
29
|
-
- name: Extract metadata
|
|
30
|
-
id: meta
|
|
31
|
-
uses: docker/metadata-action@v5
|
|
32
|
-
with:
|
|
33
|
-
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
|
34
|
-
tags: |
|
|
35
|
-
type=semver,pattern={{version}}
|
|
36
|
-
type=semver,pattern={{major}}.{{minor}}
|
|
37
|
-
type=sha
|
|
38
|
-
type=raw,value=latest,enable={{is_default_branch}}
|
|
39
|
-
|
|
40
|
-
- name: Build and push
|
|
41
|
-
uses: docker/build-push-action@v6
|
|
42
|
-
with:
|
|
43
|
-
context: .
|
|
44
|
-
push: true
|
|
45
|
-
tags: ${{ steps.meta.outputs.tags }}
|
|
46
|
-
labels: ${{ steps.meta.outputs.labels }}
|
|
1
|
+
name: Publish to GHCR
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
workflow_dispatch:
|
|
7
|
+
|
|
8
|
+
env:
|
|
9
|
+
REGISTRY: ghcr.io
|
|
10
|
+
IMAGE_NAME: ${{ github.repository }}
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
build-and-push:
|
|
14
|
+
runs-on: ubuntu-latest
|
|
15
|
+
permissions:
|
|
16
|
+
contents: read
|
|
17
|
+
packages: write
|
|
18
|
+
|
|
19
|
+
steps:
|
|
20
|
+
- uses: actions/checkout@v6
|
|
21
|
+
|
|
22
|
+
- name: Log in to GHCR
|
|
23
|
+
uses: docker/login-action@v3
|
|
24
|
+
with:
|
|
25
|
+
registry: ${{ env.REGISTRY }}
|
|
26
|
+
username: ${{ github.actor }}
|
|
27
|
+
password: ${{ secrets.GITHUB_TOKEN }}
|
|
28
|
+
|
|
29
|
+
- name: Extract metadata
|
|
30
|
+
id: meta
|
|
31
|
+
uses: docker/metadata-action@v5
|
|
32
|
+
with:
|
|
33
|
+
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
|
34
|
+
tags: |
|
|
35
|
+
type=semver,pattern={{version}}
|
|
36
|
+
type=semver,pattern={{major}}.{{minor}}
|
|
37
|
+
type=sha
|
|
38
|
+
type=raw,value=latest,enable={{is_default_branch}}
|
|
39
|
+
|
|
40
|
+
- name: Build and push
|
|
41
|
+
uses: docker/build-push-action@v6
|
|
42
|
+
with:
|
|
43
|
+
context: .
|
|
44
|
+
push: true
|
|
45
|
+
tags: ${{ steps.meta.outputs.tags }}
|
|
46
|
+
labels: ${{ steps.meta.outputs.labels }}
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
# Tool Compass PyPI Publishing
|
|
2
|
-
# Triggered when a release is created
|
|
3
|
-
|
|
4
|
-
name: Publish to PyPI
|
|
5
|
-
|
|
6
|
-
on:
|
|
7
|
-
release:
|
|
8
|
-
types: [published]
|
|
9
|
-
|
|
10
|
-
jobs:
|
|
11
|
-
publish:
|
|
12
|
-
name: Build and Publish
|
|
13
|
-
runs-on: ubuntu-latest
|
|
14
|
-
|
|
15
|
-
steps:
|
|
16
|
-
- name: Checkout repository
|
|
17
|
-
uses: actions/checkout@v6
|
|
18
|
-
|
|
19
|
-
- name: Set up Python
|
|
20
|
-
uses: actions/setup-python@v6
|
|
21
|
-
with:
|
|
22
|
-
python-version: '3.11'
|
|
23
|
-
|
|
24
|
-
- name: Install build tools
|
|
25
|
-
run: |
|
|
26
|
-
python -m pip install --upgrade pip
|
|
27
|
-
pip install build twine
|
|
28
|
-
|
|
29
|
-
- name: Build package
|
|
30
|
-
run: python -m build
|
|
31
|
-
|
|
32
|
-
- name: Publish to PyPI
|
|
33
|
-
env:
|
|
34
|
-
TWINE_USERNAME: __token__
|
|
35
|
-
TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
|
|
36
|
-
run: twine upload dist/*
|
|
1
|
+
# Tool Compass PyPI Publishing
|
|
2
|
+
# Triggered when a release is created
|
|
3
|
+
|
|
4
|
+
name: Publish to PyPI
|
|
5
|
+
|
|
6
|
+
on:
|
|
7
|
+
release:
|
|
8
|
+
types: [published]
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
publish:
|
|
12
|
+
name: Build and Publish
|
|
13
|
+
runs-on: ubuntu-latest
|
|
14
|
+
|
|
15
|
+
steps:
|
|
16
|
+
- name: Checkout repository
|
|
17
|
+
uses: actions/checkout@v6
|
|
18
|
+
|
|
19
|
+
- name: Set up Python
|
|
20
|
+
uses: actions/setup-python@v6
|
|
21
|
+
with:
|
|
22
|
+
python-version: '3.11'
|
|
23
|
+
|
|
24
|
+
- name: Install build tools
|
|
25
|
+
run: |
|
|
26
|
+
python -m pip install --upgrade pip
|
|
27
|
+
pip install build twine
|
|
28
|
+
|
|
29
|
+
- name: Build package
|
|
30
|
+
run: python -m build
|
|
31
|
+
|
|
32
|
+
- name: Publish to PyPI
|
|
33
|
+
env:
|
|
34
|
+
TWINE_USERNAME: __token__
|
|
35
|
+
TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
|
|
36
|
+
run: twine upload dist/*
|