Compare commits

..

No commits in common. "5cae5dc866a85c08c366f19e88eb0ef0346f8235" and "bdf9946fe5812a4b91708625e31f04b8f992cd6b" have entirely different histories.

15 changed files with 65 additions and 121 deletions

View File

@ -1,8 +1,9 @@
name: RPM/DEB build aarch64 name: RPM/DEB build aarch64
on: on:
release: push:
types: [published] paths:
- 'RELEASE'
workflow_dispatch: workflow_dispatch:
jobs: jobs:
@ -44,17 +45,11 @@ jobs:
rpmbuild -ba 3proxy-$RELEASE.spec rpmbuild -ba 3proxy-$RELEASE.spec
cd $ret cd $ret
mv ~/rpmbuild/RPMS/aarch64/3proxy-$RELEASE-1.aarch64.rpm 3proxy-$RELEASE.arm64.rpm mv ~/rpmbuild/RPMS/aarch64/3proxy-$RELEASE-1.aarch64.rpm 3proxy-$RELEASE.arm64.rpm
- name: Get artifact rpm - name: Get artifact arp
uses: actions/upload-artifact@v6 uses: actions/upload-artifact@v6
with: with:
name: "3proxy-${{ env.RELEASE }}-arm64.rpm" name: "3proxy-${{ env.RELEASE }}-arm64.rpm"
path: "*.rpm" path: "*.rpm"
- name: Upload rpm to release
if: github.event_name == 'release'
env:
GH_TOKEN: ${{ github.token }}
TAG: ${{ github.event.release.tag_name }}
run: gh release upload "$TAG" 3proxy-${{ env.RELEASE }}.arm64.rpm
- name: debbuild - name: debbuild
run: | run: |
ret=`pwd` ret=`pwd`
@ -75,9 +70,3 @@ jobs:
with: with:
name: "3proxy-${{ env.RELEASE }}-arm64.deb" name: "3proxy-${{ env.RELEASE }}-arm64.deb"
path: "*.deb" path: "*.deb"
- name: Upload deb to release
if: github.event_name == 'release'
env:
GH_TOKEN: ${{ github.token }}
TAG: ${{ github.event.release.tag_name }}
run: gh release upload "$TAG" 3proxy-${{ env.RELEASE }}.arm64.deb

View File

@ -1,8 +1,9 @@
name: RPM/DEB build armhf name: RPM/DEB build armhf
on: on:
release: push:
types: [published] paths:
- 'RELEASE'
workflow_dispatch: workflow_dispatch:
jobs: jobs:
@ -71,17 +72,11 @@ jobs:
rpmbuild -ba --define "PAMLIB pam0g" --define "_arch arm" --define "cross yes" --target=arm-linux-gnueabi 3proxy-$RELEASE.spec rpmbuild -ba --define "PAMLIB pam0g" --define "_arch arm" --define "cross yes" --target=arm-linux-gnueabi 3proxy-$RELEASE.spec
cd $ret cd $ret
mv ~/rpmbuild/RPMS/arm/3proxy-$RELEASE-1.arm.rpm 3proxy-$RELEASE.arm.rpm mv ~/rpmbuild/RPMS/arm/3proxy-$RELEASE-1.arm.rpm 3proxy-$RELEASE.arm.rpm
- name: Get artifact rpm - name: Get artifact
uses: actions/upload-artifact@v6 uses: actions/upload-artifact@v6
with: with:
name: "3proxy-${{ env.RELEASE }}-arm.rpm" name: "3proxy-${{ env.RELEASE }}-arm.rpm"
path: "*.rpm" path: "*.rpm"
- name: Upload rpm to release
if: github.event_name == 'release'
env:
GH_TOKEN: ${{ github.token }}
TAG: ${{ github.event.release.tag_name }}
run: gh release upload "$TAG" 3proxy-${{ env.RELEASE }}.arm.rpm
- name: debbuild - name: debbuild
run: | run: |
ret=`pwd` ret=`pwd`
@ -108,9 +103,3 @@ jobs:
with: with:
name: "3proxy-${{ env.RELEASE }}-arm.deb" name: "3proxy-${{ env.RELEASE }}-arm.deb"
path: "*.deb" path: "*.deb"
- name: Upload deb to release
if: github.event_name == 'release'
env:
GH_TOKEN: ${{ github.token }}
TAG: ${{ github.event.release.tag_name }}
run: gh release upload "$TAG" 3proxy-${{ env.RELEASE }}.arm.deb

View File

@ -1,8 +1,9 @@
name: RPM/DEB build x86-64 name: RPM/DEB build x86-64
on: on:
release: push:
types: [published] paths:
- 'RELEASE'
workflow_dispatch: workflow_dispatch:
jobs: jobs:
@ -49,12 +50,6 @@ jobs:
with: with:
name: "3proxy-${{ env.RELEASE }}-x86_64.rpm" name: "3proxy-${{ env.RELEASE }}-x86_64.rpm"
path: "*.rpm" path: "*.rpm"
- name: Upload rpm to release
if: github.event_name == 'release'
env:
GH_TOKEN: ${{ github.token }}
TAG: ${{ github.event.release.tag_name }}
run: gh release upload "$TAG" 3proxy-${{ env.RELEASE }}.x86_64.rpm
- name: debbuild - name: debbuild
run: | run: |
ret=`pwd` ret=`pwd`
@ -75,10 +70,4 @@ jobs:
with: with:
name: "3proxy-${{ env.RELEASE }}-x86_64.deb" name: "3proxy-${{ env.RELEASE }}-x86_64.deb"
path: "*.deb" path: "*.deb"
- name: Upload deb to release
if: github.event_name == 'release'
env:
GH_TOKEN: ${{ github.token }}
TAG: ${{ github.event.release.tag_name }}
run: gh release upload "$TAG" 3proxy-${{ env.RELEASE }}.x86_64.deb

View File

@ -1,8 +1,9 @@
name: Build Win32 3proxy-lite with Watcom name: Build Win32 3proxy-lite with Watcom
on: on:
release: push:
types: [published] paths:
- 'RELEASE'
workflow_dispatch: workflow_dispatch:
jobs: jobs:
@ -79,13 +80,3 @@ jobs:
with: with:
name: "3proxy-${{ env.RELEASE }}-lite" name: "3proxy-${{ env.RELEASE }}-lite"
path: dist/ path: dist/
- name: Create zip
if: github.event_name == 'release'
shell: pwsh
run: Compress-Archive -Path dist/* -DestinationPath 3proxy-${{ env.RELEASE }}-lite.zip
- name: Upload to release
if: github.event_name == 'release'
env:
GH_TOKEN: ${{ github.token }}
TAG: ${{ github.event.release.tag_name }}
run: gh release upload "$TAG" 3proxy-${{ env.RELEASE }}-lite.zip

View File

@ -1,8 +1,9 @@
name: Build Win32 3proxy with MSVC name: Build Win32 3proxy with MSVC
on: on:
release: push:
types: [published] paths:
- 'RELEASE'
workflow_dispatch: workflow_dispatch:
jobs: jobs:
@ -85,13 +86,3 @@ jobs:
with: with:
name: "3proxy-${{ env.RELEASE }}" name: "3proxy-${{ env.RELEASE }}"
path: dist/ path: dist/
- name: Create zip
if: github.event_name == 'release'
shell: pwsh
run: Compress-Archive -Path dist/* -DestinationPath 3proxy-${{ env.RELEASE }}-x86.zip
- name: Upload to release
if: github.event_name == 'release'
env:
GH_TOKEN: ${{ github.token }}
TAG: ${{ github.event.release.tag_name }}
run: gh release upload "$TAG" 3proxy-${{ env.RELEASE }}-x86.zip

View File

@ -1,8 +1,9 @@
name: Build Win64 3proxy with MSVC name: Build Win64 3proxy with MSVC
on: on:
release: push:
types: [published] paths:
- 'RELEASE'
workflow_dispatch: workflow_dispatch:
jobs: jobs:
@ -86,13 +87,3 @@ jobs:
with: with:
name: "3proxy-${{ env.RELEASE }}-x64" name: "3proxy-${{ env.RELEASE }}-x64"
path: dist/ path: dist/
- name: Create zip
if: github.event_name == 'release'
shell: pwsh
run: Compress-Archive -Path dist/* -DestinationPath 3proxy-${{ env.RELEASE }}-x64.zip
- name: Upload to release
if: github.event_name == 'release'
env:
GH_TOKEN: ${{ github.token }}
TAG: ${{ github.event.release.tag_name }}
run: gh release upload "$TAG" 3proxy-${{ env.RELEASE }}-x64.zip

View File

@ -1,8 +1,9 @@
name: Build Win-arm64 3proxy with MSVC name: Build Win-arm64 3proxy with MSVC
on: on:
release: push:
types: [published] paths:
- 'RELEASE'
workflow_dispatch: workflow_dispatch:
jobs: jobs:
@ -85,13 +86,3 @@ jobs:
with: with:
name: "3proxy-${{ env.RELEASE }}-arm64" name: "3proxy-${{ env.RELEASE }}-arm64"
path: dist/ path: dist/
- name: Create zip
if: github.event_name == 'release'
shell: pwsh
run: Compress-Archive -Path dist/* -DestinationPath 3proxy-${{ env.RELEASE }}-arm64.zip
- name: Upload to release
if: github.event_name == 'release'
env:
GH_TOKEN: ${{ github.token }}
TAG: ${{ github.event.release.tag_name }}
run: gh release upload "$TAG" 3proxy-${{ env.RELEASE }}-arm64.zip

View File

@ -4,6 +4,9 @@ on:
push: push:
branches: [ "master" ] branches: [ "master" ]
paths: [ '**.c', '**.h', 'Makefile.Linux', '.github/configs', '.github/workflows/c-cpp-Linux.yml' ] paths: [ '**.c', '**.h', 'Makefile.Linux', '.github/configs', '.github/workflows/c-cpp-Linux.yml' ]
pull_request:
branches: [ "master" ]
paths: [ '**.c', '**.h', 'Makefile.Linux', '.github/configs', '.github/workflows/c-cpp-Linux.yml' ]
workflow_dispatch: workflow_dispatch:
jobs: jobs:

View File

@ -4,6 +4,9 @@ on:
push: push:
branches: [ "master" ] branches: [ "master" ]
paths: [ '**.c', '**.h', 'Makefile.FreeBSD', '.github/configs', '.github/workflows/c-cpp-MacOS.yml' ] paths: [ '**.c', '**.h', 'Makefile.FreeBSD', '.github/configs', '.github/workflows/c-cpp-MacOS.yml' ]
pull_request:
branches: [ "master" ]
paths: [ '**.c', '**.h', 'Makefile.FreeBSD', '.github/configs', '.github/workflows/c-cpp-MacOS.yml' ]
workflow_dispatch: workflow_dispatch:
jobs: jobs:

View File

@ -4,6 +4,9 @@ on:
push: push:
branches: [ "master" ] branches: [ "master" ]
paths: [ '**.c', '**.h', 'Makefile.msvc', '.github/configs', '.github/workflows/c-cpp-Windows.yml' ] paths: [ '**.c', '**.h', 'Makefile.msvc', '.github/configs', '.github/workflows/c-cpp-Windows.yml' ]
pull_request:
branches: [ "master" ]
paths: [ '**.c', '**.h', 'Makefile.msvc', '.github/configs', '.github/workflows/c-cpp-Windows.yml' ]
workflow_dispatch: workflow_dispatch:
jobs: jobs:

View File

@ -4,6 +4,9 @@ on:
push: push:
branches: [ "master", "unix_socket" ] branches: [ "master", "unix_socket" ]
paths: [ '**.c', '**.h', '**.cmake', 'CMakeLists.txt', '.github/configs', '.github/workflows/c-cpp-cmake.yml' ] paths: [ '**.c', '**.h', '**.cmake', 'CMakeLists.txt', '.github/configs', '.github/workflows/c-cpp-cmake.yml' ]
pull_request:
branches: [ "master" ]
paths: [ '**.c', '**.h', '**.cmake', 'CMakeLists.txt', '.github/configs', '.github/workflows/c-cpp-cmake.yml' ]
workflow_dispatch: workflow_dispatch:
jobs: jobs:

View File

@ -1,8 +1,10 @@
name: Build Docker images (GHCR) name: Build Docker images (GHCR)
on: on:
release: push:
types: [published] branches: [master]
paths:
- 'RELEASE'
workflow_dispatch: workflow_dispatch:
env: env:
@ -23,31 +25,29 @@ jobs:
- name: Determine tags - name: Determine tags
id: tags id: tags
env: env:
RELEASE_TAG: ${{ github.event.release.tag_name }} REF: ${{ github.ref }}
IMAGE: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} IMAGE: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
run: | run: |
if [[ "$RELEASE_TAG" != "" ]]; then if [[ "$REF" == refs/tags/* ]]; then
RELEASE="${RELEASE_TAG#v}" RELEASE=$(cat RELEASE)
echo "minimal=${IMAGE}:${RELEASE}.minimal,${IMAGE}:minimal" >> "$GITHUB_OUTPUT" echo "minimal=${IMAGE}:${RELEASE}.minimal,${IMAGE}:minimal" >> "$GITHUB_OUTPUT"
echo "busybox=${IMAGE}:${RELEASE}.busybox,${IMAGE}:busybox" >> "$GITHUB_OUTPUT" echo "busybox=${IMAGE}:${RELEASE}.busybox,${IMAGE}:busybox" >> "$GITHUB_OUTPUT"
echo "full=${IMAGE}:${RELEASE},${IMAGE}:latest" >> "$GITHUB_OUTPUT" echo "full=${IMAGE}:${RELEASE},${IMAGE}:latest" >> "$GITHUB_OUTPUT"
else else
DATETIME=$(date +%d%m%y%H%M%S) echo "minimal=${IMAGE}:devel.minimal" >> "$GITHUB_OUTPUT"
BRANCH=$(echo "${GITHUB_REF#refs/heads/}" | tr "/" "-") echo "busybox=${IMAGE}:devel.busybox" >> "$GITHUB_OUTPUT"
echo "minimal=${IMAGE}:${DATETIME}-${BRANCH}.minimal,${IMAGE}:${BRANCH}.minimal" >> "$GITHUB_OUTPUT" echo "full=${IMAGE}:devel" >> "$GITHUB_OUTPUT"
echo "busybox=${IMAGE}:${DATETIME}-${BRANCH}.busybox,${IMAGE}:${BRANCH}.busybox" >> "$GITHUB_OUTPUT"
echo "full=${IMAGE}:${DATETIME}-${BRANCH},${IMAGE}:${BRANCH}" >> "$GITHUB_OUTPUT"
fi fi
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v4 uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v4 uses: docker/setup-buildx-action@v3
- name: Login to GHCR - name: Login to GHCR
if: github.event_name != 'pull_request' if: github.event_name != 'pull_request'
uses: docker/login-action@v4 uses: docker/login-action@v3
with: with:
registry: ${{ env.REGISTRY }} registry: ${{ env.REGISTRY }}
username: ${{ github.actor }} username: ${{ github.actor }}
@ -79,4 +79,3 @@ jobs:
platforms: linux/amd64,linux/arm64 platforms: linux/amd64,linux/arm64
push: ${{ github.event_name != 'pull_request' }} push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.tags.outputs.full }} tags: ${{ steps.tags.outputs.full }}

View File

@ -1,8 +1,10 @@
name: Build Docker images (Docker Hub) name: Build Docker images (Docker Hub)
on: on:
release: push:
types: [published] branches: [master]
paths:
- 'RELEASE'
workflow_dispatch: workflow_dispatch:
env: env:
@ -22,30 +24,28 @@ jobs:
- name: Determine tags - name: Determine tags
id: tags id: tags
env: env:
RELEASE_TAG: ${{ github.event.release.tag_name }} REF: ${{ github.ref }}
run: | run: |
if [[ "$RELEASE_TAG" != "" ]]; then if [[ "$REF" == refs/tags/* ]]; then
RELEASE="${RELEASE_TAG#v}" RELEASE=$(cat RELEASE)
echo "minimal=${REGISTRY}/${IMAGE_NAME}:${RELEASE}.minimal,${REGISTRY}/${IMAGE_NAME}:minimal" >> "$GITHUB_OUTPUT" echo "minimal=${REGISTRY}/${IMAGE_NAME}:${RELEASE}.minimal,${REGISTRY}/${IMAGE_NAME}:minimal" >> "$GITHUB_OUTPUT"
echo "busybox=${REGISTRY}/${IMAGE_NAME}:${RELEASE}.busybox,${REGISTRY}/${IMAGE_NAME}:busybox" >> "$GITHUB_OUTPUT" echo "busybox=${REGISTRY}/${IMAGE_NAME}:${RELEASE}.busybox,${REGISTRY}/${IMAGE_NAME}:busybox" >> "$GITHUB_OUTPUT"
echo "full=${REGISTRY}/${IMAGE_NAME}:${RELEASE},${REGISTRY}/${IMAGE_NAME}:latest" >> "$GITHUB_OUTPUT" echo "full=${REGISTRY}/${IMAGE_NAME}:${RELEASE},${REGISTRY}/${IMAGE_NAME}:latest" >> "$GITHUB_OUTPUT"
else else
DATETIME=$(date +%d%m%y%H%M%S) echo "minimal=${REGISTRY}/${IMAGE_NAME}:devel.minimal" >> "$GITHUB_OUTPUT"
BRANCH=$(echo "${GITHUB_REF#refs/heads/}" | tr "/" "-") echo "busybox=${REGISTRY}/${IMAGE_NAME}:devel.busybox" >> "$GITHUB_OUTPUT"
echo "minimal=${REGISTRY}/${IMAGE_NAME}:${DATETIME}-${BRANCH}.minimal,${REGISTRY}/${IMAGE_NAME}:${BRANCH}.minimal" >> "$GITHUB_OUTPUT" echo "full=${REGISTRY}/${IMAGE_NAME}:devel" >> "$GITHUB_OUTPUT"
echo "busybox=${REGISTRY}/${IMAGE_NAME}:${DATETIME}-${BRANCH}.busybox,${REGISTRY}/${IMAGE_NAME}:${BRANCH}.busybox" >> "$GITHUB_OUTPUT"
echo "full=${REGISTRY}/${IMAGE_NAME}:${DATETIME}-${BRANCH},${REGISTRY}/${IMAGE_NAME}:${BRANCH}" >> "$GITHUB_OUTPUT"
fi fi
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v4 uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v4 uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub - name: Login to Docker Hub
if: github.event_name != 'pull_request' if: github.event_name != 'pull_request'
uses: docker/login-action@v4 uses: docker/login-action@v3
with: with:
username: ${{ secrets.DOCKERHUB_USERNAME }} username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }} password: ${{ secrets.DOCKERHUB_TOKEN }}

View File

@ -44,7 +44,8 @@ RUN cd /dist &&\
ln -s /lib usr/lib64 ln -s /lib usr/lib64
RUN cp /lib/ld-*.so.* /dist/usr/local/3proxy/libexec || true RUN cp /lib/ld-*.so.* /dist/usr/local/3proxy/libexec || true
RUN cp /lib64/ld-*.so.* /dist/usr/local/3proxy/libexec || true RUN cp /lib64/ld-*.so.* /dist/usr/local/3proxy/libexec || true
RUN cp "/lib/`gcc -dumpmachine`"/libdl.so.* /dist/usr/local/3proxy/libexec RUN cp "/lib/`gcc -dumpmachine`"/libdl.so.* /dist/usr/local/3proxy/libexec &&\
ls -lR /dist
FROM docker.io/busybox:glibc FROM docker.io/busybox:glibc
COPY --from=buildenv /dist / COPY --from=buildenv /dist /

View File

@ -54,7 +54,8 @@ RUN cd /dist/usr/local/3proxy/ &&\
RUN cd /dist/usr/local/3proxy/usr &&\ RUN cd /dist/usr/local/3proxy/usr &&\
ln -s ../libexec lib &&\ ln -s ../libexec lib &&\
ln -s ../libexec lib64 &&\ ln -s ../libexec lib64 &&\
strip /dist/usr/local/3proxy/libexec/*.so strip /dist/usr/local/3proxy/libexec/*.so &&\
ls -lR /dist
FROM scratch FROM scratch
COPY --from=buildenv /dist / COPY --from=buildenv /dist /