Skip to content

Commit 08d328a

Browse files
authored
Merge pull request #10 from yaal-coop/binaries
doc: binary building
2 parents c2d59a1 + d058647 commit 08d328a

4 files changed

Lines changed: 160 additions & 8 deletions

File tree

.github/workflows/release.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@ jobs:
4444
python-version: 3.12
4545
- run: pip install poetry
4646
- run: poetry install
47-
- run: poetry run pip install pyinstaller
4847
- run: poetry run pyinstaller --name scim2-${{ matrix.os }} --onefile scim2_cli/__init__.py
4948
- run: ./dist/scim2-${{ matrix.os }}
5049
- uses: actions/upload-artifact@v4

README.md

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,41 @@ It allows users and groups creations, modifications and deletions to be synchron
1111

1212
## Installation
1313

14+
### Binary files
15+
16+
Binary files are available on the [releases page](https://github.com/yaal-coop/scim2-cli/releases).
17+
18+
### Python package
19+
20+
scim2-cli is published on the [PyPI repository](https://pypi.org/project/scim2-cli).
21+
You can install it with your favourite python package manager.
22+
1423
```shell
1524
pip install scim2-cli
1625
```
1726

18-
Binary files are also available on the [releases page](https://github.com/yaal-coop/scim2-cli/releases).
27+
### From sources
28+
29+
To run scim2-cli from the sources, [Poetry is needed](https://python-poetry.org/docs/#installation) for development:
30+
31+
```shell
32+
git clone https://github.com/yaal-coop/scim2-cli.git
33+
cd scim2-cli
34+
poetry install
35+
```
36+
37+
Then, it can be launched directly as a Python script:
38+
39+
```shell
40+
poetry run scim2 --help
41+
```
42+
43+
Or you can build a single file binary from the sources:
44+
45+
```shell
46+
poetry run pyinstaller --name scim2 --onefile scim2_cli/__init__.py
47+
./dist/scim2 --help
48+
```
1949

2050
## Usage
2151

poetry.lock

Lines changed: 118 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pyproject.toml

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,21 +29,22 @@ changelog = "https://scim2-cli.readthedocs.io/en/latest/changelog.html"
2929
funding = "https://github.com/sponsors/yaal-coop"
3030

3131
[tool.poetry.dependencies]
32-
python = "^3.10"
32+
python = ">=3.10,<3.14"
3333
click = "^8.1.7"
3434
scim2-client = "^0.2.0"
3535
scim2-tester = "^0.1.3"
3636
sphinx-click-rst-to-ansi-formatter = "^0.1.0"
3737
pydanclick = "^0.3.0"
3838

39-
[tool.poetry.group.doc]
40-
optional = true
41-
4239
[tool.poetry.group.dev.dependencies]
40+
pyinstaller = "^6.10.0"
4341
pytest = "^8.2.1"
4442
pytest-coverage = "^0.0"
4543
pytest-httpserver = "^1.0.10"
4644

45+
[tool.poetry.group.doc]
46+
optional = true
47+
4748
[tool.poetry.group.doc.dependencies]
4849
shibuya = "^2024.5.15"
4950
sphinx = "^7.3.7"
@@ -101,6 +102,7 @@ envlist =
101102
py312
102103
doc
103104
coverage
105+
binaries
104106
105107
[testenv]
106108
allowlist_externals = poetry
@@ -124,4 +126,9 @@ commands =
124126
poetry install
125127
poetry run pytest --cov --cov-fail-under=100 --cov-report term:skip-covered {posargs}
126128
poetry run coverage html
129+
130+
[testenv:binaries]
131+
commands =
132+
poetry install
133+
poetry run pyinstaller --name scim2 --onefile scim2_cli/__init__.py
127134
"""

0 commit comments

Comments
 (0)