summaryrefslogtreecommitdiff
path: root/.github/workflows/push.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/push.yml')
-rw-r--r--.github/workflows/push.yml58
1 files changed, 58 insertions, 0 deletions
diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml
new file mode 100644
index 0000000..598e5a0
--- /dev/null
+++ b/.github/workflows/push.yml
@@ -0,0 +1,58 @@
1name: build
2
3on:
4 push:
5 branches: [ "main" ]
6 workflow_dispatch:
7
8env:
9 SCCACHE_GHA_ENABLED: "true"
10 RUSTC_WRAPPER: "sccache"
11 SQLX_OFFLINE: "true"
12 CARGO_TERM_COLOR: always
13
14jobs:
15 build:
16 runs-on: ubuntu-latest
17 steps:
18 - name: Run sccache-cache
19 uses: mozilla-actions/[email protected]
20
21 - uses: actions/checkout@v4
22 - uses: actions-rs/toolchain@v1
23 with:
24 toolchain: stable
25 components: rustfmt, clippy
26 override: true
27
28 - name: Run cargo check
29 uses: actions-rs/cargo@v1
30 with:
31 command: check
32
33 - name: Run Clippy
34 uses: actions-rs/cargo@v1
35 with:
36 command: clippy
37
38 - name: Set up QEMU
39 uses: docker/setup-qemu-action@v3
40 - name: Set up Docker Buildx
41 uses: docker/setup-buildx-action@v2
42 - name: Login to DockerHub
43 uses: docker/login-action@v2
44 with:
45 registry: ghcr.io
46 username: ${{ github.actor }}
47 password: ${{ secrets.GITHUB_TOKEN }}
48 - name: Build and push
49 id: docker_build
50 uses: docker/build-push-action@v3
51 with:
52 push: true
53 platforms: linux/amd64,linux/arm64
54 cache-from: type=gha
55 cache-to: type=gha,mode=max
56 tags: |
57 ghcr.io/fxqnlr/webol:dev-latest
58 ghcr.io/fxqnlr/webol:dev-${{ github.run_number }}