automation_rs/.gitea/workflows/build.yml
Dreaded_X f480a92d93
All checks were successful
Build and deploy automation_rs / Deploy Docker container (push) Successful in 19s
Feature: Deploy Docker container after it is created
2023-11-22 01:12:10 +01:00

99 lines
3.2 KiB
YAML

# Based on: https://pastebin.com/99Fq2b2w
name: Build and deploy automation_rs
on:
push:
branches:
- main
- feature/actions
jobs:
# build:
# name: Build
# runs-on: ubuntu-latest
# container: catthehacker/ubuntu:act-latest
# steps:
# - name: Checkout
# uses: actions/checkout@v4
#
# - name: Setup Rust
# uses: actions-rust-lang/setup-rust-toolchain@v1
# with:
# rustflags: ""
#
# - name: Formatting
# uses: actions-rust-lang/rustfmt@v1
#
# - name: Clippy
# run: cargo clippy --all-targets --all -- -D warnings
#
# - name: Build
# run: cargo build --release
#
# - name: Upload artifact
# uses: actions/upload-artifact@v3
# with:
# name: build
# path: target/x86_64-unknown-linux-gnu/release/automation
#
# container:
# name: Create container
# runs-on: ubuntu-latest
# needs: [build]
# container: catthehacker/ubuntu:act-latest
# steps:
# - name: Checkout
# uses: actions/checkout@v4
#
# - name: Download artifact
# uses: actions/download-artifact@v3
# with:
# name: build
#
# - name: Set permissions
# run: |
# chown 65532:65532 ./build/*
# chmod 0755 ./build/*
#
# - name: Login to registry
# uses: https://github.com/docker/login-action@v3
# with:
# registry: git.huizinga.dev
# username: ${{ gitea.actor }}
# password: ${{ secrets.REGISTRY_TOKEN }}
#
# - name: Build & Push Docker Image
# uses: https://github.com/docker/build-push-action@v5
# with:
# context: .
# push: true
# tags: git.huizinga.dev/dreaded_x/automation_rs:latest
deploy:
name: Deploy Docker container
runs-on: ubuntu-latest
container: catthehacker/ubuntu:act-latest
# needs: [container]
steps:
- name: Stop and remove current container
run: |
docker stop automation_rs || true
docker rm automation_rs || true
- name: Create container
run: |
docker create \
--pull always \
--restart unless-stopped \
--name automation_rs \
-e RUST_LOG=automation=debug \
-e MQTT_PASSWORD=${{ secrets.MQTT_PASSWORD }} \
-e HUE_TOKEN=${{ secrets.HUE_TOKEN }} \
-e NTFY_TOPIC=${{ secrets.NTFY_TOPIC }} \
git.huizinga.dev/dreaded_x/automation_rs:latest
docker network connect mqtt automation_rs
docker network connect web automation_rs
- name: Start container
run: docker start automation_rs