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.
- euler_files-1.1.0/.github/workflows/workflow.yml +30 -0
- euler_files-1.1.0/.gitignore +8 -0
- euler_files-1.1.0/.vscode/settings.json +5 -0
- euler_files-1.1.0/PKG-INFO +731 -0
- euler_files-1.1.0/README.md +710 -0
- euler_files-1.1.0/package-lock.json +6 -0
- euler_files-1.1.0/pyproject.toml +44 -0
- euler_files-1.1.0/schema.json +2497 -0
- euler_files-1.1.0/setup.cfg +4 -0
- euler_files-1.1.0/src/euler_files/__init__.py +3 -0
- euler_files-1.1.0/src/euler_files/__main__.py +6 -0
- euler_files-1.1.0/src/euler_files/apptainer/__init__.py +1 -0
- euler_files-1.1.0/src/euler_files/apptainer/build.py +284 -0
- euler_files-1.1.0/src/euler_files/apptainer/deffile.py +99 -0
- euler_files-1.1.0/src/euler_files/apptainer/fixup.py +175 -0
- euler_files-1.1.0/src/euler_files/apptainer/prune.py +339 -0
- euler_files-1.1.0/src/euler_files/apptainer/sync.py +132 -0
- euler_files-1.1.0/src/euler_files/apptainer/venv.py +106 -0
- euler_files-1.1.0/src/euler_files/apptainer/wizard.py +275 -0
- euler_files-1.1.0/src/euler_files/cli.py +535 -0
- euler_files-1.1.0/src/euler_files/config.py +213 -0
- euler_files-1.1.0/src/euler_files/congruency.py +87 -0
- euler_files-1.1.0/src/euler_files/constants.py +25 -0
- euler_files-1.1.0/src/euler_files/jsonio.py +29 -0
- euler_files-1.1.0/src/euler_files/lock.py +61 -0
- euler_files-1.1.0/src/euler_files/markers.py +89 -0
- euler_files-1.1.0/src/euler_files/migrate.py +404 -0
- euler_files-1.1.0/src/euler_files/push.py +117 -0
- euler_files-1.1.0/src/euler_files/rsync.py +104 -0
- euler_files-1.1.0/src/euler_files/schemas.py +493 -0
- euler_files-1.1.0/src/euler_files/shell.py +53 -0
- euler_files-1.1.0/src/euler_files/status.py +151 -0
- euler_files-1.1.0/src/euler_files/sync.py +219 -0
- euler_files-1.1.0/src/euler_files/uv_env.py +138 -0
- euler_files-1.1.0/src/euler_files/wizard.py +308 -0
- euler_files-1.1.0/src/euler_files.egg-info/PKG-INFO +731 -0
- euler_files-1.1.0/src/euler_files.egg-info/SOURCES.txt +54 -0
- euler_files-1.1.0/src/euler_files.egg-info/dependency_links.txt +1 -0
- euler_files-1.1.0/src/euler_files.egg-info/entry_points.txt +2 -0
- euler_files-1.1.0/src/euler_files.egg-info/requires.txt +8 -0
- euler_files-1.1.0/src/euler_files.egg-info/top_level.txt +1 -0
- euler_files-1.1.0/tests/conftest.py +45 -0
- euler_files-1.1.0/tests/test_apptainer_build.py +247 -0
- euler_files-1.1.0/tests/test_apptainer_config.py +130 -0
- euler_files-1.1.0/tests/test_apptainer_deffile.py +106 -0
- euler_files-1.1.0/tests/test_apptainer_fixup.py +176 -0
- euler_files-1.1.0/tests/test_apptainer_prune.py +236 -0
- euler_files-1.1.0/tests/test_apptainer_sync.py +210 -0
- euler_files-1.1.0/tests/test_apptainer_venv.py +147 -0
- euler_files-1.1.0/tests/test_cli_integration.py +203 -0
- euler_files-1.1.0/tests/test_config.py +162 -0
- euler_files-1.1.0/tests/test_congruency.py +147 -0
- euler_files-1.1.0/tests/test_lock.py +75 -0
- euler_files-1.1.0/tests/test_migrate.py +352 -0
- euler_files-1.1.0/tests/test_sync.py +167 -0
- 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
|