diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index da2b484..258a6cf 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -64,19 +64,26 @@ jobs: - rockylinux:9 - rockylinux:8 - centos:centos7 + - fedora:39 - fedora:38 - - fedora:37 + - alpine:3.19 - alpine:3.18 container: image: ${{ matrix.container }} steps: + # [NOTE] + # actions/checkout@v3 uses nodejs v16 and will be deprecated. + # However, @v4 does not work on centos7 depending on the glibc version, + # so we will continue to use @v3. # - # Checks-out your repository under $GITHUB_WORKSPACE, so your - # job can access it - # - - name: Checkout sources + - name: Checkout source code(other than centos7) + if: matrix.container != 'centos:centos7' + uses: actions/checkout@v4 + + - name: Checkout source code(only centos7) + if: matrix.container == 'centos:centos7' uses: actions/checkout@v3 # diff --git a/.github/workflows/ostypevars.sh b/.github/workflows/ostypevars.sh index 94db5bf..9f1418b 100644 --- a/.github/workflows/ostypevars.sh +++ b/.github/workflows/ostypevars.sh @@ -201,8 +201,8 @@ elif [ "${CI_OSTYPE}" = "centos:7" ] || [ "${CI_OSTYPE}" = "centos:centos7" ]; t PKG_EXT="rpm" IS_OS_CENTOS=1 -elif [ "${CI_OSTYPE}" = "fedora:38" ]; then - DIST_TAG="fedora/38" +elif [ "${CI_OSTYPE}" = "fedora:39" ]; then + DIST_TAG="fedora/39" INSTALL_PKG_LIST="git autoconf automake gcc-c++ make pkgconfig redhat-rpm-config rpm-build ruby-devel rubygems procps" INSTALLER_BIN="dnf" UPDATE_CMD="update" @@ -215,8 +215,8 @@ elif [ "${CI_OSTYPE}" = "fedora:38" ]; then PKG_EXT="rpm" IS_OS_FEDORA=1 -elif [ "${CI_OSTYPE}" = "fedora:37" ]; then - DIST_TAG="fedora/37" +elif [ "${CI_OSTYPE}" = "fedora:38" ]; then + DIST_TAG="fedora/38" INSTALL_PKG_LIST="git autoconf automake gcc-c++ make pkgconfig redhat-rpm-config rpm-build ruby-devel rubygems procps" INSTALLER_BIN="dnf" UPDATE_CMD="update" @@ -229,6 +229,20 @@ elif [ "${CI_OSTYPE}" = "fedora:37" ]; then PKG_EXT="rpm" IS_OS_FEDORA=1 +elif [ "${CI_OSTYPE}" = "alpine:3.19" ]; then + DIST_TAG="alpine/v3.19" + INSTALL_PKG_LIST="bash sudo alpine-sdk automake autoconf util-linux-misc musl-locales ruby-dev procps coreutils k2hr3-cli" + INSTALLER_BIN="apk" + UPDATE_CMD="update" + UPDATE_CMD_ARG="--no-progress" + INSTALL_CMD="add" + INSTALL_CMD_ARG="--no-progress --no-cache" + INSTALL_AUTO_ARG="" + INSTALL_QUIET_ARG="-q" + PKG_OUTPUT_DIR="apk_build" + PKG_EXT="apk" + IS_OS_ALPINE=1 + elif [ "${CI_OSTYPE}" = "alpine:3.18" ]; then DIST_TAG="alpine/v3.18" INSTALL_PKG_LIST="bash sudo alpine-sdk automake autoconf util-linux-misc musl-locales ruby-dev procps coreutils k2hr3-cli" diff --git a/Makefile.am b/Makefile.am index a2b72a5..e79a968 100644 --- a/Makefile.am +++ b/Makefile.am @@ -80,13 +80,14 @@ SHELLCHECK_FILES_SH = `grep -ril '^\#!/bin/sh' . | grep '\.sh' | grep -v '\.sh SHELLCHECK_FILES_INCLUDE_SH = `grep -Lir '^\#!/bin/sh' . | grep '\.sh' | grep -v '\.sh\.' | grep -v '/\.git/' | grep -v '/rpmbuild/' | grep -v '/debian_build/' | grep -v '/autom4te.cache/' | grep -v '/m4/' | tr '\n' ' '` shellcheck: - @if type shellcheck > /dev/null 2>&1; then \ + @set -e; \ + if type shellcheck > /dev/null 2>&1; then \ echo "*** Check all files with ShellCheck"; \ if [ -n "$(SHELLCHECK_FILES_SH)" ]; then \ - LC_ALL=C.UTF-8 $(SHELLCHECK_CMD) $(SHELLCHECK_BASE_OPT) $(SHELLCHECK_IGN_OPT) $(SHELLCHECK_FILES_SH) || exit 1; \ + LC_ALL=C.UTF-8 $(SHELLCHECK_CMD) $(SHELLCHECK_BASE_OPT) $(SHELLCHECK_IGN_OPT) $(SHELLCHECK_FILES_SH); \ fi; \ if [ -n "$(SHELLCHECK_FILES_INCLUDE_SH)" ]; then \ - LC_ALL=C.UTF-8 $(SHELLCHECK_CMD) $(SHELLCHECK_BASE_OPT) $(SHELLCHECK_INCLUDE_IGN_OPT) $(SHELLCHECK_FILES_INCLUDE_SH) || exit 1; \ + LC_ALL=C.UTF-8 $(SHELLCHECK_CMD) $(SHELLCHECK_BASE_OPT) $(SHELLCHECK_INCLUDE_IGN_OPT) $(SHELLCHECK_FILES_INCLUDE_SH); \ fi; \ echo " -> No error was detected."; \ echo ""; \