euler-files 1.1.0__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 (56) hide show
  1. euler_files-1.1.0/.github/workflows/workflow.yml +30 -0
  2. euler_files-1.1.0/.gitignore +8 -0
  3. euler_files-1.1.0/.vscode/settings.json +5 -0
  4. euler_files-1.1.0/PKG-INFO +731 -0
  5. euler_files-1.1.0/README.md +710 -0
  6. euler_files-1.1.0/package-lock.json +6 -0
  7. euler_files-1.1.0/pyproject.toml +44 -0
  8. euler_files-1.1.0/schema.json +2497 -0
  9. euler_files-1.1.0/setup.cfg +4 -0
  10. euler_files-1.1.0/src/euler_files/__init__.py +3 -0
  11. euler_files-1.1.0/src/euler_files/__main__.py +6 -0
  12. euler_files-1.1.0/src/euler_files/apptainer/__init__.py +1 -0
  13. euler_files-1.1.0/src/euler_files/apptainer/build.py +284 -0
  14. euler_files-1.1.0/src/euler_files/apptainer/deffile.py +99 -0
  15. euler_files-1.1.0/src/euler_files/apptainer/fixup.py +175 -0
  16. euler_files-1.1.0/src/euler_files/apptainer/prune.py +339 -0
  17. euler_files-1.1.0/src/euler_files/apptainer/sync.py +132 -0
  18. euler_files-1.1.0/src/euler_files/apptainer/venv.py +106 -0
  19. euler_files-1.1.0/src/euler_files/apptainer/wizard.py +275 -0
  20. euler_files-1.1.0/src/euler_files/cli.py +535 -0
  21. euler_files-1.1.0/src/euler_files/config.py +213 -0
  22. euler_files-1.1.0/src/euler_files/congruency.py +87 -0
  23. euler_files-1.1.0/src/euler_files/constants.py +25 -0
  24. euler_files-1.1.0/src/euler_files/jsonio.py +29 -0
  25. euler_files-1.1.0/src/euler_files/lock.py +61 -0
  26. euler_files-1.1.0/src/euler_files/markers.py +89 -0
  27. euler_files-1.1.0/src/euler_files/migrate.py +404 -0
  28. euler_files-1.1.0/src/euler_files/push.py +117 -0
  29. euler_files-1.1.0/src/euler_files/rsync.py +104 -0
  30. euler_files-1.1.0/src/euler_files/schemas.py +493 -0
  31. euler_files-1.1.0/src/euler_files/shell.py +53 -0
  32. euler_files-1.1.0/src/euler_files/status.py +151 -0
  33. euler_files-1.1.0/src/euler_files/sync.py +219 -0
  34. euler_files-1.1.0/src/euler_files/uv_env.py +138 -0
  35. euler_files-1.1.0/src/euler_files/wizard.py +308 -0
  36. euler_files-1.1.0/src/euler_files.egg-info/PKG-INFO +731 -0
  37. euler_files-1.1.0/src/euler_files.egg-info/SOURCES.txt +54 -0
  38. euler_files-1.1.0/src/euler_files.egg-info/dependency_links.txt +1 -0
  39. euler_files-1.1.0/src/euler_files.egg-info/entry_points.txt +2 -0
  40. euler_files-1.1.0/src/euler_files.egg-info/requires.txt +8 -0
  41. euler_files-1.1.0/src/euler_files.egg-info/top_level.txt +1 -0
  42. euler_files-1.1.0/tests/conftest.py +45 -0
  43. euler_files-1.1.0/tests/test_apptainer_build.py +247 -0
  44. euler_files-1.1.0/tests/test_apptainer_config.py +130 -0
  45. euler_files-1.1.0/tests/test_apptainer_deffile.py +106 -0
  46. euler_files-1.1.0/tests/test_apptainer_fixup.py +176 -0
  47. euler_files-1.1.0/tests/test_apptainer_prune.py +236 -0
  48. euler_files-1.1.0/tests/test_apptainer_sync.py +210 -0
  49. euler_files-1.1.0/tests/test_apptainer_venv.py +147 -0
  50. euler_files-1.1.0/tests/test_cli_integration.py +203 -0
  51. euler_files-1.1.0/tests/test_config.py +162 -0
  52. euler_files-1.1.0/tests/test_congruency.py +147 -0
  53. euler_files-1.1.0/tests/test_lock.py +75 -0
  54. euler_files-1.1.0/tests/test_migrate.py +352 -0
  55. euler_files-1.1.0/tests/test_sync.py +167 -0
  56. euler_files-1.1.0/tests/test_uv_env.py +57 -0
@@ -0,0 +1,30 @@
1
+ name: Publish to PyPI
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - "v*" # This triggers the workflow only when you push a tag starting with 'v'
7
+
8
+ jobs:
9
+ build-and-publish:
10
+ name: Build and Publish
11
+ runs-on: ubuntu-latest
12
+ environment: pypi # This matches the environment we set up in Step 2
13
+
14
+ permissions:
15
+ id-token: write # CRITICAL: This is what allows OIDC (passwordless) auth to PyPI
16
+ contents: read # Required to check out the code
17
+
18
+ steps:
19
+ - name: Checkout code
20
+ uses: actions/checkout@v4
21
+
22
+ - name: Install uv
23
+ uses: astral-sh/setup-uv@v5 # The official Astral action
24
+
25
+ - name: Build package
26
+ run: uv build
27
+
28
+ - name: Publish to PyPI
29
+ # uv publish automatically detects it is in GitHub Actions and uses OIDC
30
+ run: uv publish
@@ -0,0 +1,8 @@
1
+ __pycache__/
2
+ *.egg-info/
3
+ *.egg
4
+ dist/
5
+ build/
6
+ .pytest_cache/
7
+ .ruff_cache/
8
+ *.pyc
@@ -0,0 +1,5 @@
1
+ {
2
+ "python-envs.defaultEnvManager": "ms-python.python:conda",
3
+ "python-envs.defaultPackageManager": "ms-python.python:conda",
4
+ "python-envs.pythonProjects": []
5
+ }