1
0
Эх сурвалжийг харах

Merge branch 'main' of github.com:zauberzeug/nicegui into main

Falko Schindler 4 жил өмнө
parent
commit
2784549f7f

+ 52 - 4
.github/workflows/python-publish.yml

@@ -1,6 +1,3 @@
-# This workflow will upload a Python Package using Twine when a release is created
-# For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries
-
 name: Upload Python Package
 
 on:
@@ -8,7 +5,7 @@ on:
     types: [created]
 
 jobs:
-  deploy:
+  pypi:
     runs-on: ubuntu-latest
 
     steps:
@@ -30,3 +27,54 @@ jobs:
         env:
           POETRY_PYPI_TOKEN_PYPI: ${{ secrets.PYPI_API_TOKEN }}
         run: poetry publish --build
+      - name: verify
+        shell: bash
+        run: for i in {1..100}; do python -m pip install 'nicegui==${{ steps.get_version.outputs.VERSION }}' && break || sleep 2; done
+
+  docker:
+    runs-on: ubuntu-latest
+
+    steps:
+      - uses: actions/checkout@v2
+      - name: Prepare
+        id: prep
+        run: |
+          DOCKER_IMAGE=${{ secrets.DOCKER_USERNAME }}/${GITHUB_REPOSITORY#*/}
+          VERSION=latest
+          SHORTREF=${GITHUB_SHA::8}
+
+          # If this is git tag, use the tag name as a docker tag
+          if [[ $GITHUB_REF == refs/tags/* ]]; then
+            VERSION=${GITHUB_REF#refs/tags/v}
+          fi
+          TAGS="${DOCKER_IMAGE}:${VERSION},${DOCKER_IMAGE}:${SHORTREF}"
+
+          # If the VERSION looks like a version number, assume that
+          # this is the most recent version of the image and also
+          # tag it 'latest'.
+          if [[ $VERSION =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
+            TAGS="$TAGS,${DOCKER_IMAGE}:latest"
+          fi
+
+          # Set output parameters.
+          echo ::set-output name=tags::${TAGS}
+          echo ::set-output name=docker_image::${DOCKER_IMAGE}
+      - name: Set up QEMU
+        uses: docker/setup-qemu-action@master
+        with:
+          platforms: all
+      - name: Login to DockerHub
+        if: github.event_name != 'pull_request'
+        uses: docker/login-action@v1
+        with:
+          username: ${{ secrets.DOCKER_USERNAME }}
+          password: ${{ secrets.DOCKER_PASSWORD }}
+      - name: Build
+        uses: docker/build-push-action@v2
+        with:
+          builder: ${{ steps.buildx.outputs.name }}
+          context: .
+          file: ./release.dockerfile
+          platforms: linux/amd64,linux/arm64,linux/arm32v5,linux/arm32v6,linux/arm32v7,linux/ppc64le
+          push: true
+          tags: ${{ steps.prep.outputs.tags }}

+ 2 - 1
nicegui.code-workspace

@@ -11,7 +11,8 @@
       "ms-python.python",
       "himanoa.python-autopep8",
       "esbenp.prettier-vscode",
-      "littlefoxteam.vscode-python-test-adapter"
+      "littlefoxteam.vscode-python-test-adapter",
+      "cschleiden.vscode-github-actions"
     ]
   },
   "launch": {

+ 3 - 1
release.dockerfile

@@ -1,9 +1,11 @@
 FROM python:3.9-slim
 
-RUN python -m pip install 'nicegui>=0.2.4'
+RUN python -m pip install nicegui
 
 WORKDIR /app
 
 COPY main.py README.md . 
 
+EXPOSE 80
+
 CMD python3 main.py