Skip to content

Commit 9b82e7e

Browse files
committed
Merge branch 'dependabot/pip/pyarrow-20.0.0' of github.com:apache/iceberg-python into dependabot/pip/pyarrow-20.0.0
2 parents c412fdf + 2f68d8a commit 9b82e7e

File tree

16 files changed

+509
-266
lines changed

16 files changed

+509
-266
lines changed

.github/workflows/python-ci.yml

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,4 +65,22 @@ jobs:
6565
- name: Linters
6666
run: make lint
6767
- name: Tests
68-
run: make test-coverage
68+
run: make test-coverage-unit
69+
70+
integration-test:
71+
runs-on: ubuntu-22.04
72+
strategy:
73+
matrix:
74+
python: ['3.9', '3.10', '3.11', '3.12']
75+
76+
steps:
77+
- uses: actions/checkout@v4
78+
- name: Install system dependencies
79+
run: sudo apt-get update && sudo apt-get install -y libkrb5-dev # for kerberos
80+
- name: Install
81+
run: make install
82+
- name: Run integration tests
83+
run: make test-coverage-integration
84+
- name: Show debug logs
85+
if: ${{ failure() }}
86+
run: docker compose -f dev/docker-compose.yml logs

.github/workflows/python-integration.yml

Lines changed: 0 additions & 61 deletions
This file was deleted.

Makefile

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,13 +52,17 @@ test-s3: # Run tests marked with s3, can add arguments with PYTEST_ARGS="-vv"
5252
sh ./dev/run-minio.sh
5353
poetry run pytest tests/ -m s3 ${PYTEST_ARGS}
5454

55-
test-integration: ## Run all integration tests, can add arguments with PYTEST_ARGS="-vv"
55+
test-integration: | test-integration-setup test-integration-exec ## Run all integration tests, can add arguments with PYTEST_ARGS="-vv"
56+
57+
test-integration-setup: # Prepare the environment for integration
5658
docker compose -f dev/docker-compose-integration.yml kill
5759
docker compose -f dev/docker-compose-integration.yml rm -f
5860
docker compose -f dev/docker-compose-integration.yml up -d
5961
sleep 10
6062
docker compose -f dev/docker-compose-integration.yml cp ./dev/provision.py spark-iceberg:/opt/spark/provision.py
6163
docker compose -f dev/docker-compose-integration.yml exec -T spark-iceberg ipython ./provision.py
64+
65+
test-integration-exec: # Execute integration tests, can add arguments with PYTEST_ARGS="-vv"
6266
poetry run pytest tests/ -v -m integration ${PYTEST_ARGS}
6367

6468
test-integration-rebuild:

mkdocs/docs/contributing.md

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -37,18 +37,10 @@ The PyIceberg Project is hosted on GitHub at <https://github.com/apache/iceberg-
3737
For the development, Poetry is used for packing and dependency management. You can install this using:
3838

3939
```bash
40-
pip install poetry
40+
make install-poetry
4141
```
4242

43-
Make sure you're using an up-to-date environment from venv
44-
45-
```bash
46-
pip install --upgrade virtualenv pip
47-
python -m venv ./venv
48-
source ./venv/bin/activate
49-
```
50-
51-
To get started, you can run `make install`, which installs Poetry and all the dependencies of the Iceberg library. This also installs the development dependencies. If you don't want to install the development dependencies, you need to install using `poetry install --no-dev`.
43+
To get started, you can run `make install`, which installs all the dependencies of the Iceberg library. This also installs the development dependencies. If you don't want to install the development dependencies, you need to install using `poetry install --without dev` instead of `make install`.
5244

5345
If you want to install the library on the host, you can simply run `pip3 install -e .`. If you wish to use a virtual environment, you can run `poetry shell`. Poetry will open up a virtual environment with all the dependencies set.
5446

0 commit comments

Comments
 (0)