cq

Distributed social media platform
git clone git://git.finwo.net/app/cq
Log | Files | Refs

commit 62ab70a3019d54c4149bd97965b3e7cb83a1a2b2
parent 3a3963dfc44dda8be98ad3fdb64e8618c1daa9db
Author: finwo <finwo@pm.me>
Date:   Sun, 14 Sep 2025 01:32:34 +0200

Added deployment pipeline

Diffstat:
A.github/workflows/build-and-deploy.yml | 28++++++++++++++++++++++++++++
Autil/s3-mirror-mime.sh | 30++++++++++++++++++++++++++++++
2 files changed, 58 insertions(+), 0 deletions(-)

diff --git a/.github/workflows/build-and-deploy.yml b/.github/workflows/build-and-deploy.yml @@ -0,0 +1,28 @@ +name: Build and Deploy +on: [push] + +permissions: + contents: write + +jobs: + + build-and-deploy-app: + concurrency: ci-${{ github.ref }} + runs-on: ubuntu-latest + steps: + + - name: Checkout + uses: actions/checkout@v3 + + - name: Install and Build + run: | + echo "BASEURL_APP='\"https://cq.finwo.net/#!\"'" > packages/app/.env + npm install + npm run build + + - name: Deploy + run: | + curl -O https://dl.min.io/client/mc/release/linux-amd64/mc + sudo install mc /usr/local/bin/ + mc alias set target https://s3.finwo.net/ ${{ secrets.S3_KEY }} ${{ secrets.S3_SECRET }} --api S3v4 + util/s3-mirror-mime.sh packages/app/dist target/website-cq-finwo-net diff --git a/util/s3-mirror-mime.sh b/util/s3-mirror-mime.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env bash + +set -x + +src=$1 +dst=$2 + +# function mimeOf { +# filename=$1 +# ext=${filename##*.} +# case "${ext}" in +# crt) echo 'application/x-pem-file' ;; +# css) echo 'text/css' ;; +# html|htm) echo 'text/html' ;; +# js) echo 'text/javascript' ;; +# json) echo 'application/json' ;; +# pdf) echo 'application/pdf' ;; +# xml) echo 'text/xml' ;; +# *) echo 'application/octet-stream' ;; +# esac +# } + +# Sync +mc mirror $src $dst --overwrite --remove + +# # Fix mimetypes +# mc ls --recursive "${dst}" | awk '{print $NF}' | while read obj; do +# mime=$(mimeOf "${obj}") +# mc cp "${dst}/${obj}" --attr="content-type=${mime}" "${dst}/${obj}" +# done