Added deploy files

This commit is contained in:
2021-10-24 17:16:07 +02:00
parent 7f82b25cde
commit 4363674265
6 changed files with 64 additions and 2 deletions

17
README.org Normal file
View File

@@ -0,0 +1,17 @@
* Webhooks
** Descripció
Servidor HTTP senzill que escolta peticions per a executar scripts.
** Variables d'entorn
- WEBHOOK_HOST: Host del servidor de webhook
- WEBHOOK_PORT: Port del servidor de webhook
- CONFIG_FILE: Path al fitxer de configuració
** Scripts
*** deploy_hugo.sh
Construeix i deploya una web estàtica amb hugo
**** Variables
- GIT_REPO_URL: Url SSH del repositori amb la web
- GIT_SSH_ID_FILE: Clau pública d'accés SSH
- HUGO_PARAMS: Paràmetres extra per a la comanda d'`hugo`
- TARGET_DIR: Directori de destí per construir la pàgina

23
deploy/Dockerfile Normal file
View File

@@ -0,0 +1,23 @@
FROM klakegg/hugo:alpine-ci
# Install git and ssh
RUN apk add --no-cache git openssh
# Install python/pip
ENV PYTHONUNBUFFERED=1
RUN apk add --update --no-cache python3 && ln -sf python3 /usr/bin/python
RUN python3 -m ensurepip
RUN pip3 install --no-cache --upgrade pip setuptools
WORKDIR /app
# Install requirements
COPY requirements.txt requirements.txt
COPY main.py main.py
RUN pip install -r requirements.txt
# Add scripts
COPY scripts scripts
RUN chmod +x scripts/*.sh
CMD python main.py

9
deploy/deploy.sh Normal file
View File

@@ -0,0 +1,9 @@
#!/bin/bash
set -e
# BUILD
docker build . -f deploy/Dockerfile -t webhooks:latest
# PUBLISH
docker tag pasta-server marc.sastre.cat/webhooks:latest
docker push marc.sastre.cat/webhooks

13
docker-compose.yml Normal file
View File

@@ -0,0 +1,13 @@
version: "3"
services:
webhooks:
build:
context: .
dockerfile: deploy/Dockerfile
environment:
CONFIG_FILE: ./config.json
ports:
- "6000:6000"
volumes:
- ./test/config.json:/app/config.json
- /home/marc/.ssh/lajuntament:/app/lajuntament

0
test/deploy.sh → scripts/deploy_hugo.sh Executable file → Normal file
View File

View File

@@ -2,10 +2,10 @@
"lajuntament": { "lajuntament": {
"test": { "test": {
"secret": "elsecret", "secret": "elsecret",
"deploy_script": "./test/deploy.sh", "deploy_script": "./scripts/deploy_hugo.sh",
"env": { "env": {
"GIT_REPO_URL": "ssh://git@git.lajuntament.space:2222/lajuntament/web.git", "GIT_REPO_URL": "ssh://git@git.lajuntament.space:2222/lajuntament/web.git",
"GIT_SSH_ID_FILE": "/home/marc/.ssh/lajuntament.pub" "GIT_SSH_ID_FILE": "/app/lajuntament"
} }
} }
} }