mirror-deployment/.github/workflows/freenginx-build.yaml

67 lines
2.2 KiB
YAML

name: freenginx Mega Build
run-name: freenginx Build
on:
push:
tags:
- freenginx-*
jobs:
build_nginx:
runs-on: [ubuntu-latest]
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up environment variables
run: |
TAG_NAME=${GITHUB_REF##*/}
NGINX_TAG=${TAG_NAME#freenginx-}
echo "NGINX_TAG=${NGINX_TAG}" >> $GITHUB_ENV
echo "NGINX_TAG=${NGINX_TAG}"
- name: Run freenginx Builds
run: |
#!/bin/bash
TAGS=("vanilla" "allstar" "lua" "modsecurity")
OPTIONS=(
"--type=freenginx"
"--lua --modsecurity --type=freenginx"
"--lua --type=freenginx"
"--modsecurity --type=freenginx"
)
for i in ${!TAGS[@]}; do
echo "This Task will be run using the following tag: ${NGINX_TAG}"
echo "This Task will be run using the following version: ${TAGS[$i]}"
echo "This Task will be run using the following options: ${OPTIONS[$i]}"
curl https://raw.githubusercontent.com/minoplhy/scriptbox/main/nginx_build_script/build.sh | bash -s -- --nginx-tag=${NGINX_TAG} ${OPTIONS[$i]}
# Prepare tar file paths
HOMEDIRECTORY=~/nginx_scriptbox
TAR_PATH="$HOMEDIRECTORY/nginx/objs" # Base Path
case "${TAGS[$i]}" in
"allstar")
TAR_PATH="$TAR_PATH /opt/nginx-lua-module /usr/local/lua /usr/local/modsecurity"
;;
"lua")
TAR_PATH="$TAR_PATH /opt/nginx-lua-module /usr/local/lua"
;;
"modsecurity")
TAR_PATH="$TAR_PATH /usr/local/modsecurity"
;;
esac
# Create the tarball
tar czvf freenginx-${NGINX_TAG}-${TAGS[$i]}.tar.gz $TAR_PATH
done
- name: Release
uses: softprops/action-gh-release@v2
if: startsWith(github.ref, 'refs/tags/')
with:
body: |
"freenginx Successfully build on -> ${{ env.NGINX_TAG }}"
token: ${{ secrets.DEPLOYMENT_TOKEN }}
files: freenginx-*.tar.gz