From fa22b5e291066ff35223b78072fbb723e6b58c1f Mon Sep 17 00:00:00 2001 From: Emil Miler Date: Mon, 27 Nov 2023 17:11:24 +0100 Subject: [PATCH] Drone CI Closes: #39, #40 --- .drone.yml | 22 ++++++++++++++++++++++ README.md | 38 -------------------------------------- 2 files changed, 22 insertions(+), 38 deletions(-) create mode 100644 .drone.yml diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..cf6dec8 --- /dev/null +++ b/.drone.yml @@ -0,0 +1,22 @@ +--- +kind: pipeline +name: default + +steps: + - name: build + image: ghcr.io/getzola/zola:v0.17.2 + entrypoint: ["/bin/zola"] + command: ["build"] + + - name: deploy + image: drillster/drone-rsync + settings: + hosts: ["it-new.pedf.cuni.cz"] + user: drone + source: public/* + target: /home/www/web-kittv/ + recursive: true + delete: true + environment: + RSYNC_KEY: + from_secret: ssh_private_key diff --git a/README.md b/README.md index 15fb853..4588e07 100644 --- a/README.md +++ b/README.md @@ -19,44 +19,6 @@ Pro testování a vývoji na lokálním web serveru stačí spustit `zola serve` Pro vygenerování statického obsahu (pro nasazení na web server) je třeba spustit `zola build`. Výsledný obsah je uložen do složky `public`. -## Deployment - -Z tohoto repozitáře (master branch) je nastaven automatický deployment na webserver. V tuto chvíli neprobíhá kontrola kódu a spoléhá se na to, že commitnutý kód je validní. - -Repozitář má nastaven *post-receive* hook: - -```sh -#!/bin/sh - -nohup ash -c ' \ - eval "$(ssh-agent -s)" && \ - ssh-add -t 60 ~/.ssh/id_repository && \ - ssh gitea@it-new.pedf.cuni.cz "/home/gitea/deployment.sh" && \ - trap "ssh-agent -k" EXIT \ -' > /dev/null 2>&1 & - -echo "Automatic deployment started." -``` - -Ten na serveru spouští skript `deployment.sh`: - -```sh -#!/bin/sh - -eval "$(ssh-agent -s)" && \ -ssh-add -t 60 ~/.ssh/id_deploy && \ -git clone gitea@git.microlab.space:kittv/web.git kittv-web && \ -zola -r ~/kittv-web/ build && \ -rsync -r ~/kittv-web/public/* /home/www/web-kittv/ && \ -trap "ssh-agent -k" EXIT - -date >> ~/deployment_log.txt - -rm -rf ~/kittv-web -``` - -Přístup do repozitáře je ověřován pomocí tzv. *deploy keys*, tedy SSH klíčem. - ## Dokumentace - [Zola](https://www.getzola.org/documentation/) (generátor)