This commit is contained in:
@@ -4,23 +4,14 @@ on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: linux
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: catthehacker/ubuntu:act-latest
|
||||
options: --privileged # Required for Docker-in-Docker
|
||||
environment:
|
||||
BOT_TOKEN:
|
||||
from_secret: bot_token
|
||||
AUTHORIZED_USER_ID:
|
||||
from_secret: ${{ secrets.authorized_user_id }}
|
||||
NTFY_AUTH_HEADER:
|
||||
from_secret: ${{ secrets.ntfy_auth_header }}
|
||||
KUMA_API_PASSWORD:
|
||||
from_secret: ${{ secrets.kuma_api_password }}
|
||||
TORRENT_API_PASSWORD:
|
||||
from_secret: ${{ secrets.torrent_api_password }}
|
||||
options: --privileged
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
@@ -35,21 +26,29 @@ jobs:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
- name: Build and push Docker image
|
||||
- name: Build and Push Docker Image
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile
|
||||
push: true
|
||||
tags: gitea.abzk.fr/mrzaiko/jarvis:latest
|
||||
build-args: |
|
||||
BOT_TOKEN=${{ secrets.BOT_TOKEN }}
|
||||
AUTHORIZED_USER_ID=${{ secrets.AUTHORIZED_USER_ID }}
|
||||
NTFY_AUTH_HEADER=${{ secrets.NTFY_AUTH_HEADER }}
|
||||
KUMA_API_PASSWORD=${{ secrets.KUMA_API_PASSWORD }}
|
||||
TORRENT_API_PASSWORD=${{ secrets.TORRENT_API_PASSWORD }}
|
||||
|
||||
- name: Deploy to Portainer
|
||||
run: |
|
||||
curl --location --request PUT -k 'https://192.168.1.17:9443/api/stacks/27?endpointId=2' \
|
||||
--header 'X-API-Key: ${{ secrets.PORTAINER_API_KEY }}' \
|
||||
--header 'Content-Type: application/json' \
|
||||
--data '{
|
||||
"prune": false,
|
||||
"pullImage": true,
|
||||
"stackFileContent": "version: '\''3.8'\''\nservices:\n jarvis:\n image: gitea.abzk.fr/mrzaiko/jarvis:latest\n container_name: jarvis\n volumes:\n - /home/portainer/docker-config/local_stuff/jarvis/:/app/config"
|
||||
}'
|
||||
curl -k -X PUT 'https://192.168.1.17:9443/api/stacks/27?endpointId=2' \
|
||||
-H "X-API-Key: ${{ secrets.PORTAINER_API_KEY }}" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d @- <<EOF
|
||||
{
|
||||
"prune": false,
|
||||
"pullImage": true,
|
||||
"stackFileContent": "$(cat .gitea/workflows/portainer-stack.yml | sed 's/"/\\"/g' | tr '\n' '\\n')"
|
||||
}
|
||||
EOF
|
||||
|
||||
8
.gitea/workflows/portainer-stack.yaml
Normal file
8
.gitea/workflows/portainer-stack.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
# portainer-stack.yml
|
||||
version: '3.8'
|
||||
services:
|
||||
jarvis:
|
||||
image: gitea.abzk.fr/mrzaiko/jarvis:latest
|
||||
container_name: jarvis
|
||||
volumes:
|
||||
- /home/portainer/docker-config/local_stuff/jarvis/:/app/config
|
||||
@@ -5,10 +5,19 @@ FROM python:3.11-slim
|
||||
ENV PYTHONDONTWRITEBYTECODE=1
|
||||
ENV PYTHONUNBUFFERED=1
|
||||
|
||||
ARG BOT_TOKEN
|
||||
ENV BOT_TOKEN=$BOT_TOKEN
|
||||
|
||||
ARG AUTHORIZED_USER_ID
|
||||
ENV AUTHORIZED_USER_ID=$AUTHORIZED_USER_ID
|
||||
|
||||
ARG NTFY_AUTH_HEADER
|
||||
ENV NTFY_AUTH_HEADER=$NTFY_AUTH_HEADER
|
||||
|
||||
ARG KUMA_API_PASSWORD
|
||||
ENV KUMA_API_PASSWORD=$KUMA_API_PASSWORD
|
||||
|
||||
ARG TORRENT_API_PASSWORD
|
||||
ENV TORRENT_API_PASSWORD=$TORRENT_API_PASSWORD
|
||||
|
||||
# Set working directory inside the container
|
||||
|
||||
Reference in New Issue
Block a user