mirror of
https://github.com/ValveSoftware/GameNetworkingSockets.git
synced 2026-05-29 16:20:34 +00:00
ci: make package updates a separate workflow step
Signed-off-by: Steven Noonan <steven@valvesoftware.com>
This commit is contained in:
Executable
+28
@@ -0,0 +1,28 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
set -o pipefail
|
||||
|
||||
ACTION="$(basename "$0")"
|
||||
ACTION="${ACTION%.sh}"
|
||||
|
||||
SCRIPT_CANDIDATES=(
|
||||
"$PWD/.github/${ACTION}/${IMAGE//\//-}.sh"
|
||||
"$PWD/.github/${ACTION}/${IMAGE%/*}.sh"
|
||||
)
|
||||
|
||||
for SCRIPT in "${SCRIPT_CANDIDATES[@]}"; do
|
||||
if [[ -f "${SCRIPT}" ]]; then
|
||||
bash "${SCRIPT}" | cat
|
||||
exit $?
|
||||
fi
|
||||
done
|
||||
|
||||
echo "Could not find script in any of these paths:"
|
||||
for SCRIPT in "${SCRIPT_CANDIDATES[@]}"; do
|
||||
echo " ${SCRIPT}"
|
||||
done
|
||||
echo ""
|
||||
echo "Don't know how to do step '${ACTION}' for ${IMAGE}!"
|
||||
echo ""
|
||||
exit 1
|
||||
@@ -1 +0,0 @@
|
||||
install-ubuntu.sh
|
||||
@@ -1,25 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
set -o pipefail
|
||||
|
||||
INSTALL_SCRIPT_CANDIDATES=(
|
||||
"$PWD/.github/install-${IMAGE//\//-}.sh"
|
||||
"$PWD/.github/install-${IMAGE%/*}.sh"
|
||||
)
|
||||
|
||||
for INSTALL_SCRIPT in "${INSTALL_SCRIPT_CANDIDATES[@]}"; do
|
||||
if [[ -f "${INSTALL_SCRIPT}" ]]; then
|
||||
bash "${INSTALL_SCRIPT}" | cat
|
||||
exit $?
|
||||
fi
|
||||
done
|
||||
|
||||
echo "Could not find install script in any of these paths:"
|
||||
for INSTALL_SCRIPT in "${INSTALL_SCRIPT_CANDIDATES[@]}"; do
|
||||
echo " ${INSTALL_SCRIPT}"
|
||||
done
|
||||
echo ""
|
||||
echo "Don't know how to install packages for ${IMAGE}!"
|
||||
echo ""
|
||||
exit 1
|
||||
Symlink
+1
@@ -0,0 +1 @@
|
||||
action.sh
|
||||
@@ -4,8 +4,6 @@
|
||||
#
|
||||
set -ex
|
||||
|
||||
apk update
|
||||
|
||||
# Base build packages
|
||||
PACKAGES=(
|
||||
clang
|
||||
@@ -19,7 +19,6 @@ PACKAGES+=(protobuf)
|
||||
PACKAGES+=(openssl)
|
||||
PACKAGES+=(libsodium)
|
||||
|
||||
pacman --noconfirm -Syu
|
||||
pacman --noconfirm -Sy "${PACKAGES[@]}"
|
||||
|
||||
exit 0
|
||||
Symlink
+1
@@ -0,0 +1 @@
|
||||
ubuntu.sh
|
||||
@@ -23,12 +23,6 @@ PACKAGES+=(protobuf-compiler protobuf-devel)
|
||||
PACKAGES+=(openssl-devel)
|
||||
PACKAGES+=(libsodium-devel)
|
||||
|
||||
if ! grep '^fastestmirror' /etc/dnf/dnf.conf; then
|
||||
echo 'fastestmirror=1' >> /etc/dnf/dnf.conf
|
||||
fi
|
||||
|
||||
dnf clean all
|
||||
dnf update -y
|
||||
dnf install -y "${PACKAGES[@]}"
|
||||
|
||||
exit 0
|
||||
@@ -21,7 +21,6 @@ PACKAGES+=(protobuf-devel)
|
||||
PACKAGES+=(libopenssl-devel)
|
||||
PACKAGES+=(libsodium-devel)
|
||||
|
||||
zypper update -y
|
||||
zypper install -y "${PACKAGES[@]}"
|
||||
|
||||
exit 0
|
||||
@@ -8,8 +8,6 @@ APT_FLAGS=(-q -oDpkg::Use-Pty=0)
|
||||
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
apt-get ${APT_FLAGS[@]} update
|
||||
apt-get ${APT_FLAGS[@]} dist-upgrade -y
|
||||
apt-get ${APT_FLAGS[@]} install -y locales
|
||||
locale-gen en_US.UTF-8
|
||||
|
||||
Symlink
+1
@@ -0,0 +1 @@
|
||||
action.sh
|
||||
Executable
+9
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# This is an install script for Alpine-specific package updates.
|
||||
#
|
||||
set -ex
|
||||
|
||||
apk update
|
||||
|
||||
exit 0
|
||||
Executable
+9
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# This is an install script for Arch Linux-specific package updates.
|
||||
#
|
||||
set -ex
|
||||
|
||||
pacman --noconfirm -Syu
|
||||
|
||||
exit 0
|
||||
+1
@@ -0,0 +1 @@
|
||||
ubuntu.sh
|
||||
Executable
+14
@@ -0,0 +1,14 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# This is an install script for Fedora-specific package updates.
|
||||
#
|
||||
set -ex
|
||||
|
||||
if ! grep '^fastestmirror' /etc/dnf/dnf.conf; then
|
||||
echo 'fastestmirror=1' >> /etc/dnf/dnf.conf
|
||||
fi
|
||||
|
||||
dnf clean all
|
||||
dnf update -y
|
||||
|
||||
exit 0
|
||||
Executable
+9
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# This is an install script for OpenSuSE-specific package updates.
|
||||
#
|
||||
set -ex
|
||||
|
||||
zypper update -y
|
||||
|
||||
exit 0
|
||||
Executable
+14
@@ -0,0 +1,14 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# This is an install script for Debian/Ubuntu-specific package updates.
|
||||
#
|
||||
set -ex
|
||||
|
||||
APT_FLAGS=(-q -oDpkg::Use-Pty=0)
|
||||
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
apt-get ${APT_FLAGS[@]} update
|
||||
apt-get ${APT_FLAGS[@]} dist-upgrade -y
|
||||
|
||||
exit 0
|
||||
@@ -44,6 +44,9 @@ jobs:
|
||||
docker run -d --rm --name github-docker-builder -e LC_ALL="C" -e LANG="C" -v ${{ github.workspace }}:/build -w /build ${{ matrix.docker_image }}:${{ matrix.docker_tag }} tail -f /dev/null
|
||||
docker ps
|
||||
docker exec -e CI_BUILD=1 -e IMAGE=${{ matrix.docker_image }} -e IMAGE_TAG=${{ matrix.docker_tag }} -t github-docker-builder sh .github/preinstall.sh
|
||||
- name: Update packages
|
||||
run: |
|
||||
docker exec -e CI_BUILD=1 -e IMAGE=${{ matrix.docker_image }} -e IMAGE_TAG=${{ matrix.docker_tag }} -t github-docker-builder bash .github/update-packages.sh
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
docker exec -e CI_BUILD=1 -e IMAGE=${{ matrix.docker_image }} -e IMAGE_TAG=${{ matrix.docker_tag }} -t github-docker-builder bash .github/install.sh
|
||||
|
||||
@@ -45,6 +45,7 @@ before_install:
|
||||
- docker run -d --rm --cap-add SYS_PTRACE --name $CONTAINER_NAME -e LC_ALL="C" -e LANG="C" -v $(pwd):/build -w /build $IMAGE_PREFIX$IMAGE:$IMAGE_TAG tail -f /dev/null
|
||||
- docker ps
|
||||
- docker exec -e CI_BUILD=1 -e IMAGE=$IMAGE -e IMAGE_TAG=$IMAGE_TAG -t $CONTAINER_NAME sh .github/preinstall.sh
|
||||
- docker exec -e CI_BUILD=1 -e IMAGE=$IMAGE -e IMAGE_TAG=$IMAGE_TAG -t $CONTAINER_NAME bash .github/update-packages.sh
|
||||
|
||||
install:
|
||||
- docker exec -e CI_BUILD=1 -e IMAGE=$IMAGE -e IMAGE_TAG=$IMAGE_TAG -t $CONTAINER_NAME bash .github/install.sh
|
||||
|
||||
Reference in New Issue
Block a user