scitex-container 0.1.2__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.
Files changed (76) hide show
  1. scitex_container-0.1.2/.github/workflows/ci.yml +70 -0
  2. scitex_container-0.1.2/.github/workflows/publish-pypi.yml +52 -0
  3. scitex_container-0.1.2/.gitignore +807 -0
  4. scitex_container-0.1.2/.readthedocs.yaml +31 -0
  5. scitex_container-0.1.2/LICENSE +661 -0
  6. scitex_container-0.1.2/PKG-INFO +222 -0
  7. scitex_container-0.1.2/README.md +198 -0
  8. scitex_container-0.1.2/docs/scitex-icon-navy-inverted.png +0 -0
  9. scitex_container-0.1.2/docs/scitex-logo-blue-cropped.png +0 -0
  10. scitex_container-0.1.2/docs/scitex-logo-transparent.png +0 -0
  11. scitex_container-0.1.2/docs/sphinx/api/scitex_container.rst +34 -0
  12. scitex_container-0.1.2/docs/sphinx/cli_reference.rst +194 -0
  13. scitex_container-0.1.2/docs/sphinx/conf.py +81 -0
  14. scitex_container-0.1.2/docs/sphinx/index.rst +31 -0
  15. scitex_container-0.1.2/docs/sphinx/installation.rst +46 -0
  16. scitex_container-0.1.2/docs/sphinx/mcp_reference.rst +54 -0
  17. scitex_container-0.1.2/docs/sphinx/quickstart.rst +84 -0
  18. scitex_container-0.1.2/docs/sphinx/requirements.txt +5 -0
  19. scitex_container-0.1.2/pyproject.toml +41 -0
  20. scitex_container-0.1.2/scripts/install-host-packages.sh +228 -0
  21. scitex_container-0.1.2/scripts/install_apptainer.sh +145 -0
  22. scitex_container-0.1.2/scripts/install_claude_code.sh +193 -0
  23. scitex_container-0.1.2/scripts/install_codex.sh +187 -0
  24. scitex_container-0.1.2/scripts/install_docker.sh +220 -0
  25. scitex_container-0.1.2/scripts/install_emacs.sh +240 -0
  26. scitex_container-0.1.2/scripts/install_formatter_linter.sh +168 -0
  27. scitex_container-0.1.2/scripts/install_gdu.sh +133 -0
  28. scitex_container-0.1.2/scripts/install_gemini.sh +187 -0
  29. scitex_container-0.1.2/scripts/install_gh.sh +146 -0
  30. scitex_container-0.1.2/scripts/install_google_chrome.sh +140 -0
  31. scitex_container-0.1.2/scripts/install_imagemagick.sh +157 -0
  32. scitex_container-0.1.2/scripts/install_mermaid.sh +166 -0
  33. scitex_container-0.1.2/scripts/install_nodejs.sh +139 -0
  34. scitex_container-0.1.2/scripts/install_nvidia_driver.sh +152 -0
  35. scitex_container-0.1.2/scripts/install_python.sh +233 -0
  36. scitex_container-0.1.2/scripts/install_ripgrep.sh +148 -0
  37. scitex_container-0.1.2/scripts/install_rust.sh +139 -0
  38. scitex_container-0.1.2/scripts/install_screen.sh +165 -0
  39. scitex_container-0.1.2/scripts/install_shell_formatter_linter.sh +213 -0
  40. scitex_container-0.1.2/scripts/install_texlive.sh +149 -0
  41. scitex_container-0.1.2/scripts/install_tldr.sh +124 -0
  42. scitex_container-0.1.2/scripts/install_tree.sh +167 -0
  43. scitex_container-0.1.2/scripts/install_uv.sh +129 -0
  44. scitex_container-0.1.2/scripts/install_yq.sh +122 -0
  45. scitex_container-0.1.2/src/scitex_container/__init__.py +10 -0
  46. scitex_container-0.1.2/src/scitex_container/__main__.py +6 -0
  47. scitex_container-0.1.2/src/scitex_container/_cli/__init__.py +141 -0
  48. scitex_container-0.1.2/src/scitex_container/_cli/_apptainer.py +352 -0
  49. scitex_container-0.1.2/src/scitex_container/_cli/_docker.py +48 -0
  50. scitex_container-0.1.2/src/scitex_container/_cli/_env_snapshot.py +149 -0
  51. scitex_container-0.1.2/src/scitex_container/_cli/_host.py +109 -0
  52. scitex_container-0.1.2/src/scitex_container/_cli/_mcp.py +256 -0
  53. scitex_container-0.1.2/src/scitex_container/_cli/_sandbox.py +231 -0
  54. scitex_container-0.1.2/src/scitex_container/_cli/_status.py +151 -0
  55. scitex_container-0.1.2/src/scitex_container/_mcp/__init__.py +38 -0
  56. scitex_container-0.1.2/src/scitex_container/_mcp/handlers.py +337 -0
  57. scitex_container-0.1.2/src/scitex_container/_snapshot.py +249 -0
  58. scitex_container-0.1.2/src/scitex_container/apptainer/__init__.py +74 -0
  59. scitex_container-0.1.2/src/scitex_container/apptainer/_build.py +116 -0
  60. scitex_container-0.1.2/src/scitex_container/apptainer/_command_builder.py +301 -0
  61. scitex_container-0.1.2/src/scitex_container/apptainer/_freeze.py +90 -0
  62. scitex_container-0.1.2/src/scitex_container/apptainer/_sandbox.py +253 -0
  63. scitex_container-0.1.2/src/scitex_container/apptainer/_sandbox_versioning.py +298 -0
  64. scitex_container-0.1.2/src/scitex_container/apptainer/_status.py +86 -0
  65. scitex_container-0.1.2/src/scitex_container/apptainer/_utils.py +78 -0
  66. scitex_container-0.1.2/src/scitex_container/apptainer/_verify.py +249 -0
  67. scitex_container-0.1.2/src/scitex_container/apptainer/_versioning.py +328 -0
  68. scitex_container-0.1.2/src/scitex_container/docker/__init__.py +16 -0
  69. scitex_container-0.1.2/src/scitex_container/docker/_compose.py +247 -0
  70. scitex_container-0.1.2/src/scitex_container/docker/_mounts.py +67 -0
  71. scitex_container-0.1.2/src/scitex_container/host/__init__.py +18 -0
  72. scitex_container-0.1.2/src/scitex_container/host/_mounts.py +195 -0
  73. scitex_container-0.1.2/src/scitex_container/host/_packages.py +185 -0
  74. scitex_container-0.1.2/src/scitex_container/mcp_server.py +315 -0
  75. scitex_container-0.1.2/tests/__init__.py +0 -0
  76. scitex_container-0.1.2/tests/test_import.py +37 -0
@@ -0,0 +1,70 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ pull_request:
7
+ branches: [main]
8
+
9
+ jobs:
10
+ lint:
11
+ name: Lint
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - uses: actions/checkout@v4
15
+
16
+ - uses: actions/setup-python@v5
17
+ with:
18
+ python-version: "3.11"
19
+ cache: "pip"
20
+
21
+ - name: Install ruff
22
+ run: pip install ruff
23
+
24
+ - name: Run ruff
25
+ run: ruff check src/
26
+
27
+ test:
28
+ name: Test (Python ${{ matrix.python-version }})
29
+ runs-on: ubuntu-latest
30
+ strategy:
31
+ fail-fast: false
32
+ matrix:
33
+ python-version: ["3.10", "3.11", "3.12"]
34
+
35
+ steps:
36
+ - uses: actions/checkout@v4
37
+
38
+ - uses: actions/setup-python@v5
39
+ with:
40
+ python-version: ${{ matrix.python-version }}
41
+ cache: "pip"
42
+
43
+ - name: Install package with dev dependencies
44
+ run: pip install -e ".[dev]"
45
+
46
+ - name: Run tests
47
+ run: pytest tests/ -v --tb=short
48
+
49
+ build:
50
+ name: Build check
51
+ runs-on: ubuntu-latest
52
+ steps:
53
+ - uses: actions/checkout@v4
54
+
55
+ - uses: actions/setup-python@v5
56
+ with:
57
+ python-version: "3.11"
58
+ cache: "pip"
59
+
60
+ - name: Install package
61
+ run: pip install ".[all]"
62
+
63
+ - name: Check import
64
+ run: |
65
+ python -c "import scitex_container; print('Version:', scitex_container.__version__)"
66
+ python -c "from scitex_container import apptainer, docker, host"
67
+ echo "All imports successful"
68
+
69
+ - name: Check CLI entry point
70
+ run: scitex-container --version
@@ -0,0 +1,52 @@
1
+ name: Publish to PyPI
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+
7
+ permissions:
8
+ contents: read
9
+
10
+ jobs:
11
+ build:
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - uses: actions/checkout@v4
15
+
16
+ - name: Set up Python
17
+ uses: actions/setup-python@v5
18
+ with:
19
+ python-version: "3.11"
20
+
21
+ - name: Install build tools
22
+ run: |
23
+ python -m pip install --upgrade pip
24
+ pip install build twine
25
+
26
+ - name: Build package
27
+ run: python -m build
28
+
29
+ - name: Check package
30
+ run: twine check dist/*
31
+
32
+ - name: Upload build artifacts
33
+ uses: actions/upload-artifact@v4
34
+ with:
35
+ name: dist
36
+ path: dist/
37
+
38
+ publish:
39
+ needs: build
40
+ runs-on: ubuntu-latest
41
+ environment: pypi
42
+ permissions:
43
+ id-token: write
44
+ steps:
45
+ - name: Download build artifacts
46
+ uses: actions/download-artifact@v4
47
+ with:
48
+ name: dist
49
+ path: dist/
50
+
51
+ - name: Publish to PyPI
52
+ uses: pypa/gh-action-pypi-publish@release/v1