ci/cd - fix linux package generation when arch is ARM
This commit is contained in:
parent
f4590749d7
commit
45c90527c4
|
@ -35,7 +35,6 @@ on:
|
|||
ARM_SSH_CONFIG:
|
||||
required: false
|
||||
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
@ -48,6 +47,18 @@ jobs:
|
|||
echo "ARCH=${{ env.PLATFORMS }}" | sed 's/linux//g' | sed 's@/@@g' >> "$GITHUB_ENV"
|
||||
env:
|
||||
PLATFORMS: ${{ inputs.PLATFORMS }}
|
||||
- name: Extract linux arch
|
||||
if: inputs.PACKAGE == 'rpm'
|
||||
run : |
|
||||
echo "LARCH=${{ env.ARCH }}" | sed 's/amd64/x86_64/g' | sed 's/arm64/aarch64/g' >> "$GITHUB_ENV"
|
||||
env:
|
||||
ARCH: ${{ env.ARCH }}
|
||||
- name: Extract linux arch
|
||||
if: inputs.PACKAGE == 'deb'
|
||||
run : |
|
||||
echo "LARCH=${{ env.ARCH }}" >> "$GITHUB_ENV"
|
||||
env:
|
||||
ARCH: ${{ env.ARCH }}
|
||||
- name: Setup SSH for ARM node
|
||||
if: startsWith(env.ARCH, 'arm') == true
|
||||
run: |
|
||||
|
@ -103,7 +114,16 @@ jobs:
|
|||
tags: local/bunkerweb-${{ inputs.LINUX }}:latest
|
||||
# Generate package
|
||||
- name: Generate package
|
||||
run: ./src/linux/package.sh ${{ inputs.LINUX }}
|
||||
if: startsWith(env.ARCH, 'arm') == false
|
||||
run: ./src/linux/package.sh ${{ inputs.LINUX }} ${{ inputs.LARCH }}
|
||||
- name: Generate package (ARM)
|
||||
if: startsWith(env.ARCH, 'arm') == true
|
||||
run: |
|
||||
docker save local/bunkerweb-${{ inputs.LINUX }}:latest | ssh -C root@arm docker load
|
||||
scp ./src/linux/package.sh root@arm:/opt/package.sh
|
||||
ssh root@arm chmod +x /opt/package.sh
|
||||
ssh root@arm /opt/packages.sh ${{ inputs.LINUX }} ${{ inputs.LARCH }}
|
||||
scp -r root@arm:/root/package-${{ inputs.LINUX }} ./package-${{ inputs.LINUX }}
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: package-${{ inputs.LINUX }}-${{ env.ARCH }}
|
||||
|
|
|
@ -15,12 +15,17 @@ function do_and_check_cmd() {
|
|||
return 0
|
||||
}
|
||||
|
||||
# Check arg
|
||||
# Check args
|
||||
if [ "$1" = "" ] ; then
|
||||
echo "❌ Missing distro arg"
|
||||
exit 1
|
||||
fi
|
||||
linux="$1"
|
||||
if [ "$2" = "" ] ; then
|
||||
echo "❌ Missing arch arg"
|
||||
exit 1
|
||||
fi
|
||||
arch="$2"
|
||||
|
||||
# Create empty directory
|
||||
package_dir="${PWD}/package-$linux"
|
||||
|
@ -36,9 +41,9 @@ if [ "$linux" = "fedora" ] || [ "$linux" = "centos" ] || [ "$linux" = "rhel" ] ;
|
|||
type="rpm"
|
||||
fi
|
||||
do_and_check_cmd docker run --rm -v "${package_dir}:/data" "local/bunkerweb-${linux}:latest" "$type"
|
||||
name="bunkerweb_${version}-1_amd64"
|
||||
name="bunkerweb_${version}-1_${arch}"
|
||||
if [ "$type" = "rpm" ] ; then
|
||||
name="bunkerweb-${version}-1.x86_64"
|
||||
name="bunkerweb-${version}-1.${arch}"
|
||||
fi
|
||||
do_and_check_cmd mv "${package_dir}/bunkerweb.$type" "${package_dir}/${name}.${type}"
|
||||
|
||||
|
|
Loading…
Reference in New Issue