From 4b445828517b05495092528f53ac234aefd1d27f Mon Sep 17 00:00:00 2001
From: Magnus Walbeck <mw@mwalbeck.org>
Date: Sun, 2 Feb 2025 16:00:03 +0100
Subject: [PATCH] Switch to forgejo actions

---
 .drone.yml                   | 97 ------------------------------------
 .forgejo/workflows/build.yml | 41 +++++++++++++++
 .forgejo/workflows/test.yml  | 33 ++++++++++++
 3 files changed, 74 insertions(+), 97 deletions(-)
 delete mode 100644 .drone.yml
 create mode 100644 .forgejo/workflows/build.yml
 create mode 100644 .forgejo/workflows/test.yml

diff --git a/.drone.yml b/.drone.yml
deleted file mode 100644
index 0b1bbb7..0000000
--- a/.drone.yml
+++ /dev/null
@@ -1,97 +0,0 @@
----
-kind: pipeline
-type: docker
-name: lint
-
-steps:
-  - name: Lint Dockerfiles
-    image: hadolint/hadolint:latest-debian
-    pull: if-not-exists
-    commands:
-      - hadolint --version
-      - hadolint Dockerfile
-    when:
-      status:
-        - failure
-        - success
-
-  - name: Lint entrypoint scripts
-    image: koalaman/shellcheck-alpine
-    pull: if-not-exists
-    commands:
-      - shellcheck entrypoint.sh
-    when:
-      status:
-        - failure
-        - success
-
-trigger:
-  event:
-    - pull_request
-    - push
-  ref:
-    exclude:
-      - refs/heads/renovate/*
-
----
-kind: pipeline
-type: docker
-name: test
-
-steps:
-  - name: docker
-    image: plugins/docker
-    pull: if-not-exists
-    settings:
-      dockerfile: Dockerfile
-      username:
-        from_secret: dockerhub_username
-      password:
-        from_secret: dockerhub_password_ro
-      repo: mwalbeck/flox
-      dry_run: true
-
-trigger:
-  event:
-    - pull_request
-
-depends_on:
-  - lint
-
----
-kind: pipeline
-type: docker
-name: build and publish
-
-steps:
-  - name: determine tags
-    image: mwalbeck/determine-docker-tags
-    pull: if-not-exists
-    environment:
-      CUSTOM_TAGS: latest
-
-  - name: build and publish
-    image: plugins/docker
-    pull: if-not-exists
-    settings:
-      dockerfile: Dockerfile
-      username:
-        from_secret: dockerhub_username
-      password:
-        from_secret: dockerhub_password
-      repo: mwalbeck/flox
-
-trigger:
-  branch:
-    - master
-  event:
-    - push
-
-depends_on:
-  - lint
-
----
-kind: signature
-hmac: 895fe92e0a0a31c5e99d107b136949397dcf0d43cdd949324ff9a92ea016a85b
-
-...
diff --git a/.forgejo/workflows/build.yml b/.forgejo/workflows/build.yml
new file mode 100644
index 0000000..51bd161
--- /dev/null
+++ b/.forgejo/workflows/build.yml
@@ -0,0 +1,41 @@
+name: Build and publish
+
+on:
+  push:
+    branches:
+      - main
+
+jobs:
+  lint:
+    runs-on: docker
+    steps:
+      - uses: actions/checkout@v4
+      - uses: https://github.com/hadolint/hadolint-action@v3.1.0
+        with:
+          dockerfile: Dockerfile
+
+  build:
+    runs-on: dind
+    steps:
+      - uses: actions/checkout@v4
+      - name: Get docker tags
+        id: tags
+        shell: sh
+        env:
+          CUSTOM_TAGS: "latest"
+          IMAGE_NAME: "mwalbeck/flox"
+        run: |
+          determine-docker-tags
+          dockerd &
+      - name: Login to Docker Hub
+        uses: https://github.com/docker/login-action@v3
+        with:
+          username: ${{ secrets.DOCKERHUB_USERNAME }}
+          password: ${{ secrets.DOCKERHUB_TOKEN }}
+      - name: Set up Docker Buildx
+        uses: https://github.com/docker/setup-buildx-action@v3
+      - name: Build and push
+        uses: https://github.com/docker/build-push-action@v6
+        with:
+          push: true
+          tags: ${{ steps.tags.outputs.tags }}
\ No newline at end of file
diff --git a/.forgejo/workflows/test.yml b/.forgejo/workflows/test.yml
new file mode 100644
index 0000000..35a9295
--- /dev/null
+++ b/.forgejo/workflows/test.yml
@@ -0,0 +1,33 @@
+name: Test
+
+on: pull_request
+
+jobs:
+  lint:
+    if: github.ref != 'refs/heads/renovate/*'
+    runs-on: docker
+    steps:
+      - uses: actions/checkout@v4
+      - uses: https://github.com/hadolint/hadolint-action@v3.1.0
+        with:
+          dockerfile: Dockerfile
+
+  test:
+    runs-on: dind
+    steps:
+      - uses: actions/checkout@v4
+      - name: Get docker tags
+        id: tags
+        shell: sh
+        env:
+          CUSTOM_TAGS: "latest"
+          IMAGE_NAME: "mwalbeck/flox"
+        run: |
+          determine-docker-tags
+          dockerd &
+      - name: Set up Docker Buildx
+        uses: https://github.com/docker/setup-buildx-action@v3
+      - name: Test build
+        uses: https://github.com/docker/build-push-action@v6
+        with:
+          tags: ${{ steps.tags.outputs.tags }}
-- 
2.47.2