From 48da2bb19829d7941bff0f5c09322083b5d6f1a6 Mon Sep 17 00:00:00 2001 From: minoplhy Date: Sun, 12 Jan 2025 00:14:25 +0700 Subject: [PATCH] test: alpine nginx --- .github/workflows/alpine-nginx-build.yaml | 72 +++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 .github/workflows/alpine-nginx-build.yaml diff --git a/.github/workflows/alpine-nginx-build.yaml b/.github/workflows/alpine-nginx-build.yaml new file mode 100644 index 0000000..70c20d4 --- /dev/null +++ b/.github/workflows/alpine-nginx-build.yaml @@ -0,0 +1,72 @@ +name: nginx Mega Build +run-name: nginx Build +on: + push: + tags: + - alpine-nginx-* +jobs: + build_nginx: + runs-on: [ubuntu-latest] + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Setup latest Alpine Linux + uses: jirutka/setup-alpine@v1 + + - name: Run script inside Alpine chroot as root + run: | + apk add curl bash + shell: alpine.sh --root {0} + + - name: Set up environment variables + run: | + TAG_NAME=${GITHUB_REF##*/} + NGINX_TAG=${TAG_NAME#alpine-nginx-} + + echo "NGINX_TAG=${NGINX_TAG}" >> $GITHUB_ENV + echo "NGINX_TAG=${NGINX_TAG}" + shell: alpine.sh {0} + + - name: Run nginx Builds + run: | + TAGS=("vanilla") + OPTIONS=( + "--type=nginx" + ) + + 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 alpine-nginx-${NGINX_TAG}-${TAGS[$i]}.tar.gz $TAR_PATH + done + shell: alpine.sh {0} + + - name: Release + uses: softprops/action-gh-release@v2 + if: startsWith(github.ref, 'refs/tags/') + with: + body: | + "nginx Successfully build on -> ${{ env.NGINX_TAG }}" + token: ${{ secrets.DEPLOYMENT_TOKEN }} + files: nginx-*.tar.gz