From b1dbfbb2aba7cef7cfc2f646e0d8e50274c64fcf Mon Sep 17 00:00:00 2001 From: Benjamin Lefaudeux Date: Wed, 6 Nov 2024 22:25:28 +0100 Subject: [PATCH] giving this a go --- .github/workflows/ci-cd.yml | 80 +++++++++++++++++++++++++++++++++++++ pyproject.toml | 2 +- 2 files changed, 81 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/ci-cd.yml diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml new file mode 100644 index 0000000..b402c68 --- /dev/null +++ b/.github/workflows/ci-cd.yml @@ -0,0 +1,80 @@ +name: Push to PyPI + +on: + release: + types: [published] + + pull_request: + branches: ["main"] + +jobs: + pypi-publish: + name: Upload release to PyPI + runs-on: ubuntu-latest + environment: + name: pypi + url: https://pypi.org/p/datago + permissions: + id-token: write + steps: + - uses: actions/checkout@v4 + + - name: Install linux deps + run: | + sudo apt-get update + sudo apt-get -y install libvips-dev libjpeg-turbo8-dev + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: "1.23" + + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: "3.11.10" + + - name: Install pybindgen + run: | + python3 -m pip install pybindgen + go install golang.org/x/tools/cmd/goimports@latest + go install github.com/go-python/gopy@latest + + - name: Build python module + run: | + cd pkg + gopy pkg -author="Photoroom" -email="team@photoroom.com" -name="datago" . + export DESTINATION="../build" + mkdir -p $DESTINATION/datago + mv datago/* $DESTINATION/datago/. + mv setup.py $DESTINATION/. + mv Makefile $DESTINATION/. + mv README.md $DESTINATION/. + rm LICENSE MANIFEST.in + ls + cd ../build + + - name: Install python module + run: | + ls + cd build + python3 -m pip install --user -v -e . + + - name: Run the python unit tests + env: + DATAROOM_API_KEY: ${{ secrets.DATAROOM_API_KEY }} + DATAROOM_TEST_SOURCE: ${{ secrets.DATAROOM_TEST_SOURCE }} + DATAROOM_API_URL: ${{ secrets.DATAROOM_API_URL }} + run: | + ls + python3 -m pip install -r requirements.txt + pytest -xv python/tests/* + + - name: Build the package + run: | + cd build + python3 setup.py sdist + mv dist/* ../dist/. + + - name: Publish package distributions to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 diff --git a/pyproject.toml b/pyproject.toml index 56ccdfb..0dfacd8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "datago" -version = "0.0.1" +version = "0.6" authors = [ { name="Photoroom", email="team@photoroom.com" }, ]