diff --git a/.github/workflows/docker.yaml b/.github/workflows/docker.yaml new file mode 100644 index 0000000..ded34be --- /dev/null +++ b/.github/workflows/docker.yaml @@ -0,0 +1,38 @@ +name: Docker Build + +on: + push: + release: + types: [published] + +jobs: + build-and-push: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Determine Tag + id: get_tag + run: | + if [[ "${{ github.event_name }}" == "push" ]]; then + echo "::set-output name=tag::latest" + elif [[ "${{ github.event_name }}" == "release" ]]; then + echo "::set-output name=tag::${{ github.event.release.tag_name }}" + fi + + - name: Build and push on release + uses: docker/build-push-action@v5 + with: + context: . + push: ${{ github.event_name == 'release' }} + tags: ${{ secrets.DOCKER_USERNAME }}/${{ github.event.repository.name }}:${{ steps.get_tag.outputs.tag }} diff --git a/Dockerfile b/Dockerfile index 6d65364..da3eb56 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.9-slim +FROM python:3.10-slim RUN apt-get update RUN apt-get install -y curl python3-dev autoconf g++ RUN apt-get install -y libpq-dev diff --git a/Makefile b/Makefile index 7bc6d6e..b9e7929 100644 --- a/Makefile +++ b/Makefile @@ -59,3 +59,11 @@ install-pre-commit-hook: pre-commit: poetry run pre-commit run --all-files + +docker-build: + rm -rf docker-build || true + mkdir -p docker-build + git clone . docker-build + cd docker-build + docker buildx build -f Dockerfile -t cashubtc/nutshell:0.15.0 --platform linux/amd64 . + # docker push cashubtc/nutshell:0.15.0 diff --git a/setup.py b/setup.py index d9d8e3d..52574dc 100644 --- a/setup.py +++ b/setup.py @@ -14,12 +14,12 @@ entry_points = {"console_scripts": ["cashu = cashu.wallet.cli.cli:cli"]} setuptools.setup( name="cashu", version="0.15.0", - description="Ecash wallet and mint for Bitcoin Lightning", + description="Ecash wallet and mint", long_description=long_description, long_description_content_type="text/markdown", url="https://github.com/cashubtc/cashu", author="Calle", - author_email="calle@protonmail.com", + author_email="callebtc@protonmail.com", license="MIT", packages=setuptools.find_namespace_packages(), classifiers=[