From ce14ff1e2d5810119906241d38e77b7e0ed71a49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Hells=C3=A9n?= Date: Mon, 10 Feb 2025 22:14:08 +0100 Subject: [PATCH] Update GitHub Actions workflows --- .github/workflows/build.yml | 59 +++++++++++++++++++++++++------------ .github/workflows/ruff.yml | 14 --------- 2 files changed, 40 insertions(+), 33 deletions(-) delete mode 100644 .github/workflows/ruff.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8980d1c..7118997 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,32 +2,57 @@ name: Test code, build Docker image, and push to Docker Hub and GitHub Container Registry. on: push: - branches: [ master ] pull_request: - branches: [ master ] workflow_dispatch: + schedule: + - cron: "0 6 * * *" env: SERVE_DOMAIN: https://localhost/ WEBHOOK_URL: ${{ secrets.WEBHOOK_URL }} UPLOAD_FOLDER: ./Uploads GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + jobs: test: runs-on: ubuntu-latest - permissions: - contents: read - packages: write steps: - uses: actions/checkout@v4 - uses: FedericoCarboni/setup-ffmpeg@v3 id: setup-ffmpeg - uses: actions/setup-python@v5 with: - python-version: "3.12" - - run: pipx install poetry - - run: poetry install - - run: poetry run pytest + python-version: 3.13 + - uses: astral-sh/setup-uv@v5 + with: + version: "latest" + - run: uv sync --all-extras --all-groups + - run: uv run pytest + ruff: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: astral-sh/ruff-action@v3 + with: + version: "latest" + - run: ruff check --exit-non-zero-on-fix --verbose + - run: ruff format --check --verbose + build: + runs-on: ubuntu-latest + permissions: + contents: read + packages: write + if: github.event_name != 'pull_request' + concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + needs: [test, ruff] + steps: + - uses: actions/checkout@v4 + - uses: docker/setup-qemu-action@v3 + with: + platforms: all + - uses: docker/setup-buildx-action@v3 - name: Login to Docker Hub if: github.event_name != 'pull_request' uses: docker/login-action@v3 @@ -41,19 +66,15 @@ jobs: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - - name: Extract Docker metadata - id: meta - uses: docker/metadata-action@v5 - with: - images: | - thelovinator/discord-nice-embed-maker-for-my-yoy - ghcr.io/thelovinator1/discord-embed - flavor: latest=${{ github.ref == 'refs/heads/master' }} - name: Build and push Docker image id: build-and-push uses: docker/build-push-action@v6 with: context: . + platforms: linux/amd64, linux/arm64 push: ${{ github.event_name != 'pull_request' }} - tags: ${{ steps.meta.outputs.tags }} - labels: ${{ steps.meta.outputs.labels }} + tags: | + ghcr.io/thelovinator1/discord-embed:latest + ghcr.io/thelovinator1/discord-embed:master + thelovinator/discord-nice-embed-maker-for-my-yoy:latest + thelovinator/discord-nice-embed-maker-for-my-yoy:master diff --git a/.github/workflows/ruff.yml b/.github/workflows/ruff.yml deleted file mode 100644 index 46416eb..0000000 --- a/.github/workflows/ruff.yml +++ /dev/null @@ -1,14 +0,0 @@ -name: Ruff -on: - push: - pull_request: - schedule: - - cron: '0 0 * * *' # Run every day - workflow_dispatch: - -jobs: - ruff: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: chartboost/ruff-action@v1