diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c72a155..f2d05a3 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -15,8 +15,15 @@ build: - pwd - apk add bash - mkdir -p "$GITLAB_SHARED_DIND_DIR" && chmod 777 "$GITLAB_SHARED_DIND_DIR" - - bash builder/build-tarball - - bash builder/build-deb + - echo "Build Ubuntu 18 on all branches" + - bash builder/build-distro ubuntu bionic + - if echo "$CI_COMMIT_BRANCH" | grep -Eq '(release|testing)'; then + echo "Build all distros"; + bash builder/build-distro ubuntu focal; + bash builder/build-distro debian buster; + bash builder/build-distro debian bullseye; + bash builder/build-distro kali kali-rolling; + fi - mkdir output - cp -r builder/build/* output/ artifacts: diff --git a/builder/build-distro b/builder/build-distro new file mode 100755 index 0000000..a21bf01 --- /dev/null +++ b/builder/build-distro @@ -0,0 +1,19 @@ +#!/bin/bash + +set -e + +os="$1" +codename="$2" + +detect_package_format() { + package_format=rpm + if ls builder/dockerfile*"$os"* | grep -q .deb.build; then + package_format=deb + fi +} + +cd "$(dirname "$0")/.." + +detect_package_format +builder/build-tarball "$os" "$codename" +builder/build-${package_format} "$os" "$codename"