Skip to content

Deploy CI

Deploy CI #2

Workflow file for this run

name: Deploy CI
on:
# Trigger the workflow on pushes to the master branch or when pull requests are opened
push:
branches:
- master
pull_request:
branches:
- master
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest # Use Ubuntu for building the project
strategy:
matrix:
target: [x86_64-unknown-linux-gnu]
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Rust
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
target: ${{ matrix.target }}
override: true
- name: Install cross (for cross-compilation)
run: cargo install cross --version 0.2.5
- name: Build project
run: cross build --target ${{ matrix.target }} --release
- uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Image metadata
id: meta_services
uses: docker/metadata-action@v5
with:
images: ghcr.io/${{ github.repository }}
labels: |
org.opencontainers.image.licenses=GPL-3.0-or-later
- name: Image build
uses: docker/build-push-action@v6
with:
context: .
file: Dockerfile
push: true
tags: ${{ steps.meta_services.outputs.tags }}
labels: ${{ steps.meta_services.outputs.labels }}