github.com/MetalBlockchain/metalgo@v1.11.9/.github/workflows/build-deb-pkg.sh (about)

     1  #!/usr/bin/env bash
     2  
     3  set -euo pipefail
     4  
     5  DEBIAN_BASE_DIR=$PKG_ROOT/debian
     6  METAL_BUILD_BIN_DIR=$DEBIAN_BASE_DIR/usr/local/bin
     7  TEMPLATE=.github/workflows/debian/template 
     8  DEBIAN_CONF=$DEBIAN_BASE_DIR/DEBIAN
     9  
    10  mkdir -p "$DEBIAN_BASE_DIR"
    11  mkdir -p "$DEBIAN_CONF"
    12  mkdir -p "$METAL_BUILD_BIN_DIR"
    13  
    14  # Assume binaries are at default locations
    15  OK=$(cp ./build/metalgo "$METAL_BUILD_BIN_DIR")
    16  if [[ $OK -ne 0 ]]; then
    17    exit "$OK";
    18  fi
    19  
    20  OK=$(cp $TEMPLATE/control "$DEBIAN_CONF"/control)
    21  if [[ $OK -ne 0 ]]; then
    22    exit "$OK";
    23  fi
    24  
    25  echo "Build debian package..."
    26  cd "$PKG_ROOT"
    27  echo "Tag: $TAG"
    28  VER=$TAG
    29  if [[ $TAG =~ ^v ]]; then
    30    VER=$(echo "$TAG" | tr -d 'v')
    31  fi
    32  NEW_VERSION_STRING="Version: $VER"
    33  NEW_ARCH_STRING="Architecture: $ARCH"
    34  sed -i "s/Version.*/$NEW_VERSION_STRING/g" debian/DEBIAN/control
    35  sed -i "s/Architecture.*/$NEW_ARCH_STRING/g" debian/DEBIAN/control
    36  dpkg-deb --build debian "metalgo-$TAG-$ARCH.deb"
    37  aws s3 cp "metalgo-$TAG-$ARCH.deb" "s3://${BUCKET}/linux/debs/ubuntu/$RELEASE/$ARCH/"