This commit is contained in:
@@ -4,23 +4,14 @@ on:
|
|||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
runs-on: linux
|
runs-on: ubuntu-latest
|
||||||
container:
|
container:
|
||||||
image: catthehacker/ubuntu:act-latest
|
image: catthehacker/ubuntu:act-latest
|
||||||
options: --privileged # Required for Docker-in-Docker
|
options: --privileged
|
||||||
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 }}
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
@@ -35,21 +26,29 @@ jobs:
|
|||||||
username: ${{ secrets.DOCKER_USERNAME }}
|
username: ${{ secrets.DOCKER_USERNAME }}
|
||||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||||
|
|
||||||
- name: Build and push Docker image
|
- name: Build and Push Docker Image
|
||||||
uses: docker/build-push-action@v4
|
uses: docker/build-push-action@v4
|
||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: ./Dockerfile
|
file: ./Dockerfile
|
||||||
push: true
|
push: true
|
||||||
tags: gitea.abzk.fr/mrzaiko/jarvis:latest
|
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
|
- name: Deploy to Portainer
|
||||||
run: |
|
run: |
|
||||||
curl --location --request PUT -k 'https://192.168.1.17:9443/api/stacks/27?endpointId=2' \
|
curl -k -X PUT 'https://192.168.1.17:9443/api/stacks/27?endpointId=2' \
|
||||||
--header 'X-API-Key: ${{ secrets.PORTAINER_API_KEY }}' \
|
-H "X-API-Key: ${{ secrets.PORTAINER_API_KEY }}" \
|
||||||
--header 'Content-Type: application/json' \
|
-H "Content-Type: application/json" \
|
||||||
--data '{
|
-d @- <<EOF
|
||||||
|
{
|
||||||
"prune": false,
|
"prune": false,
|
||||||
"pullImage": true,
|
"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"
|
"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 PYTHONDONTWRITEBYTECODE=1
|
||||||
ENV PYTHONUNBUFFERED=1
|
ENV PYTHONUNBUFFERED=1
|
||||||
|
|
||||||
|
ARG BOT_TOKEN
|
||||||
ENV BOT_TOKEN=$BOT_TOKEN
|
ENV BOT_TOKEN=$BOT_TOKEN
|
||||||
|
|
||||||
|
ARG AUTHORIZED_USER_ID
|
||||||
ENV AUTHORIZED_USER_ID=$AUTHORIZED_USER_ID
|
ENV AUTHORIZED_USER_ID=$AUTHORIZED_USER_ID
|
||||||
|
|
||||||
|
ARG NTFY_AUTH_HEADER
|
||||||
ENV NTFY_AUTH_HEADER=$NTFY_AUTH_HEADER
|
ENV NTFY_AUTH_HEADER=$NTFY_AUTH_HEADER
|
||||||
|
|
||||||
|
ARG KUMA_API_PASSWORD
|
||||||
ENV KUMA_API_PASSWORD=$KUMA_API_PASSWORD
|
ENV KUMA_API_PASSWORD=$KUMA_API_PASSWORD
|
||||||
|
|
||||||
|
ARG TORRENT_API_PASSWORD
|
||||||
ENV TORRENT_API_PASSWORD=$TORRENT_API_PASSWORD
|
ENV TORRENT_API_PASSWORD=$TORRENT_API_PASSWORD
|
||||||
|
|
||||||
# Set working directory inside the container
|
# Set working directory inside the container
|
||||||
|
|||||||
Reference in New Issue
Block a user