diff mbox series

CI: Add GitHub Actions for ALT Linux

Message ID 20210711115539.2400162-1-vt@altlinux.org (mailing list archive)
State New, archived
Headers show
Series CI: Add GitHub Actions for ALT Linux | expand

Commit Message

Vitaly Chikunov July 11, 2021, 11:55 a.m. UTC
Build on Sisyphus branch which is bleeding edge repo.
Package manager is apt-rpm (not APT as it may look from the scripts).

Signed-off-by: Vitaly Chikunov <vt@altlinux.org>
---
 .github/workflows/ci.yml | 13 ++++++++++++-
 ci/alt.sh                | 24 ++++++++++++++++++++++++
 tests/install-swtpm.sh   | 14 +++++++++++---
 3 files changed, 47 insertions(+), 4 deletions(-)
 create mode 100755 ci/alt.sh

Comments

Vitaly Chikunov July 11, 2021, 11:58 a.m. UTC | #1
Subject missing ima-evm-utils, I will resend.

Sorry,

On Sun, Jul 11, 2021 at 02:55:39PM +0300, Vitaly Chikunov wrote:
> Build on Sisyphus branch which is bleeding edge repo.
> Package manager is apt-rpm (not APT as it may look from the scripts).
> 
> Signed-off-by: Vitaly Chikunov <vt@altlinux.org>
> ---
>  .github/workflows/ci.yml | 13 ++++++++++++-
>  ci/alt.sh                | 24 ++++++++++++++++++++++++
>  tests/install-swtpm.sh   | 14 +++++++++++---
>  3 files changed, 47 insertions(+), 4 deletions(-)
>  create mode 100755 ci/alt.sh
Mimi Zohar July 11, 2021, 9:43 p.m. UTC | #2
Hi Vitaly,

For now Travis is still being supported.  Perhaps the subject could be
"CI: add support for ALT linux".

On Sun, 2021-07-11 at 14:55 +0300, Vitaly Chikunov wrote:
> Build on Sisyphus branch which is bleeding edge repo.
> Package manager is apt-rpm (not APT as it may look from the scripts).
> 
> Signed-off-by: Vitaly Chikunov <vt@altlinux.org>
> ---
>  .github/workflows/ci.yml | 13 ++++++++++++-
>  ci/alt.sh                | 24 ++++++++++++++++++++++++
>  tests/install-swtpm.sh   | 14 +++++++++++---
>  3 files changed, 47 insertions(+), 4 deletions(-)
>  create mode 100755 ci/alt.sh
> 
> diff --git .github/workflows/ci.yml .github/workflows/ci.yml
> index f08733a..088c041 100644
> --- .github/workflows/ci.yml
> +++ .github/workflows/ci.yml
> @@ -92,6 +92,11 @@ jobs:
>                CC: clang
>                TSS: ibmtss
> 
> +          - container: "alt:sisyphus"
> +            env:
> +              CC: gcc
> +              TSS: libtpm2-tss-devel
> +
>      container:
>        image: ${{ matrix.container }}
>        env: ${{ matrix.env }}
> @@ -112,7 +117,13 @@ jobs:
>          ARCH="$ARCH" CC="$CC" TSS="$TSS" ./ci/$INSTALL.sh
> 
>      - name: Build swtpm
> -      run: if [ ! "$VARIANT" ]; then which tpm_server || which swtpm || ./tests/install-swtpm.sh; fi
> +      run: |
> +        if [ ! "$VARIANT" ]; then
> +          which tpm_server || which swtpm || \
> +            if which tssstartup; then
> +              ./tests/install-swtpm.sh;
> +            fi
> +        fi

This change isn't specific to ALT Linus.   Could you separate this out
please?

> 
>      - name: Compiler version
>        run: $CC --version
> diff --git ci/alt.sh ci/alt.sh
> new file mode 100755
> index 0000000..4996890
> --- /dev/null
> +++ ci/alt.sh
> @@ -0,0 +1,24 @@
> +#!/bin/sh -ex
> +# SPDX-License-Identifier: GPL-2.0-only
> +#
> +# Build env install script for ALT Linux.
> +
> +apt-get update -y
> +
> +# rpm-build brings basic build envirenment with gcc, make, autotools, etc.
> +apt-get install -y \
> +	$CC \
> +	$TSS \
> +	asciidoc \
> +	attr \
> +	docbook-style-xsl \
> +	libattr-devel \
> +	libkeyutils-devel \
> +	libssl-devel \
> +	openssl \
> +	openssl-gost-engine \
> +	rpm-build \
> +	wget \
> +	xsltproc \
> +	xxd
> +
> diff --git tests/install-swtpm.sh tests/install-swtpm.sh
> index 2666748..b344a69 100755
> --- tests/install-swtpm.sh
> +++ tests/install-swtpm.sh
> @@ -1,5 +1,13 @@
> -#!/bin/sh
> -set -ex
> +#!/bin/sh -ex
> +
> +# No need to run via sudo if we already have permissions, such as in Docker.
> +# Some distros do not have sudo configured for root:
> +#   `root is not in the sudoers file.  This incident will be reported.'
> +if [ -w /usr/local/bin ]; then
> +	SUDO=
> +else
> +	SUDO=sudo
> +fi
> 

ditto

thanks,

Mimi

>  version=1637
> 
> @@ -9,5 +17,5 @@ cd ibmtpm$version
>  tar --no-same-owner -xvzf ../download
>  cd src
>  make -j$(nproc)
> -sudo cp tpm_server /usr/local/bin/
> +$SUDO cp tpm_server /usr/local/bin/
>  cd ../..
diff mbox series

Patch

diff --git .github/workflows/ci.yml .github/workflows/ci.yml
index f08733a..088c041 100644
--- .github/workflows/ci.yml
+++ .github/workflows/ci.yml
@@ -92,6 +92,11 @@  jobs:
               CC: clang
               TSS: ibmtss
 
+          - container: "alt:sisyphus"
+            env:
+              CC: gcc
+              TSS: libtpm2-tss-devel
+
     container:
       image: ${{ matrix.container }}
       env: ${{ matrix.env }}
@@ -112,7 +117,13 @@  jobs:
         ARCH="$ARCH" CC="$CC" TSS="$TSS" ./ci/$INSTALL.sh
 
     - name: Build swtpm
-      run: if [ ! "$VARIANT" ]; then which tpm_server || which swtpm || ./tests/install-swtpm.sh; fi
+      run: |
+        if [ ! "$VARIANT" ]; then
+          which tpm_server || which swtpm || \
+            if which tssstartup; then
+              ./tests/install-swtpm.sh;
+            fi
+        fi
 
     - name: Compiler version
       run: $CC --version
diff --git ci/alt.sh ci/alt.sh
new file mode 100755
index 0000000..4996890
--- /dev/null
+++ ci/alt.sh
@@ -0,0 +1,24 @@ 
+#!/bin/sh -ex
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# Build env install script for ALT Linux.
+
+apt-get update -y
+
+# rpm-build brings basic build envirenment with gcc, make, autotools, etc.
+apt-get install -y \
+	$CC \
+	$TSS \
+	asciidoc \
+	attr \
+	docbook-style-xsl \
+	libattr-devel \
+	libkeyutils-devel \
+	libssl-devel \
+	openssl \
+	openssl-gost-engine \
+	rpm-build \
+	wget \
+	xsltproc \
+	xxd
+
diff --git tests/install-swtpm.sh tests/install-swtpm.sh
index 2666748..b344a69 100755
--- tests/install-swtpm.sh
+++ tests/install-swtpm.sh
@@ -1,5 +1,13 @@ 
-#!/bin/sh
-set -ex
+#!/bin/sh -ex
+
+# No need to run via sudo if we already have permissions, such as in Docker.
+# Some distros do not have sudo configured for root:
+#   `root is not in the sudoers file.  This incident will be reported.'
+if [ -w /usr/local/bin ]; then
+	SUDO=
+else
+	SUDO=sudo
+fi
 
 version=1637
 
@@ -9,5 +17,5 @@  cd ibmtpm$version
 tar --no-same-owner -xvzf ../download
 cd src
 make -j$(nproc)
-sudo cp tpm_server /usr/local/bin/
+$SUDO cp tpm_server /usr/local/bin/
 cd ../..