dnstp/.gitea/workflows/build.yml
Andy Pack 369c3617bc
Some checks failed
Build Binaries / Build & Test (push) Successful in 54s
Build Binaries / Package Library (push) Failing after 45s
Build Binaries / Package Container (push) Successful in 1m32s
writing creds to file
2024-07-28 13:00:52 +01:00

100 lines
2.5 KiB
YAML

name: Build Binaries
on:
# Runs on pushes targeting the default branch
push:
jobs:
# Build job
build:
name: Build & Test
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
github-server-url: https://gitea.sheep-ghoul.ts.net
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
- name: Cargo Build
uses: actions-rs/cargo@v1
with:
command: build
- name: Cargo Test
uses: actions-rs/cargo@v1
with:
command: test
publishLib:
runs-on: ubuntu-latest
name: Package Library
needs: [ build ] # for ignoring bad builds
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
steps:
- name: Checkout
uses: actions/checkout@v4
with:
github-server-url: https://gitea.sheep-ghoul.ts.net
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
- name: Add SarGit Repo
run: |
cat <<EOF > ~/.cargo/config.toml
[registry]
default = "sargit"
[registries.sargit]
index = "sparse+https://git.sarsoo.xyz/api/packages/${{ secrets.DOCKERHUB_USERNAME }}/cargo/"
[net]
git-fetch-with-cli = true
EOF
- name: Add SarGit Credentials
run: |
cat <<EOF > ~/.cargo/credentials.toml
[registries.sargit]
token = "Bearer ${{ secrets.DOCKERHUB_TOKEN }}"
EOF
- name: Cargo Publish
uses: actions-rs/cargo@v1
with:
command: publish
args: --package dnstplib
package:
runs-on: ubuntu-latest
name: Package Container
needs: [ build ] # for ignoring bad builds
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
steps:
- uses: actions/checkout@v4
with:
github-server-url: https://gitea.sheep-ghoul.ts.net
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to DockerHub
uses: docker/login-action@v2
with:
registry: gitea.sheep-ghoul.ts.net
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build & Push Container
uses: docker/build-push-action@v2
with:
push: true
tags: gitea.sheep-ghoul.ts.net/sarsoo/dnstp:latest
context: .