Merge pull request #646 from kiwix/remove-ci-images
Move CI container creation to kiwix/container-images
This commit is contained in:
commit
0e103dd0b5
|
@ -50,7 +50,7 @@ jobs:
|
||||||
SSH_KEY: /tmp/id_rsa
|
SSH_KEY: /tmp/id_rsa
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
container:
|
container:
|
||||||
image: "ghcr.io/kiwix/kiwix-build_ci_${{matrix.image_variant}}:dev"
|
image: "ghcr.io/kiwix/kiwix-build_ci_${{matrix.image_variant}}:2023-10-30"
|
||||||
options: "--device /dev/fuse --privileged"
|
options: "--device /dev/fuse --privileged"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
|
|
|
@ -1,43 +0,0 @@
|
||||||
name: Container images CD
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
paths:
|
|
||||||
- 'ci_images/**'
|
|
||||||
release:
|
|
||||||
types: [published]
|
|
||||||
|
|
||||||
env:
|
|
||||||
IMAGE_PREFIX: ghcr.io/kiwix/kiwix-build_ci_
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
Container:
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
variant: [f35, focal, bionic, alpine]
|
|
||||||
runs-on: ubuntu-22.04
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Retrieve the code
|
|
||||||
uses: actions/checkout@v3
|
|
||||||
|
|
||||||
- name: Setup container image name
|
|
||||||
id: env
|
|
||||||
run: |
|
|
||||||
echo "IMAGE_NAME=${{ env.IMAGE_PREFIX }}${{ matrix.variant }}" >> $GITHUB_OUTPUT
|
|
||||||
|
|
||||||
- name: Build container image
|
|
||||||
run: |
|
|
||||||
docker build -t ${{ steps.env.outputs.IMAGE_NAME }}:dev - < ci_images/${{ matrix.variant }}_builder.dockerfile
|
|
||||||
|
|
||||||
- name: Tag release container image
|
|
||||||
if: github.event.action == 'published'
|
|
||||||
run: |
|
|
||||||
docker tag ${{ steps.env.outputs.IMAGE_NAME }}:dev ${{ steps.env.outputs.IMAGE_NAME }}:$GITHUB_REF_NAME
|
|
||||||
docker tag ${{ steps.env.outputs.IMAGE_NAME }}:dev ${{ steps.env.outputs.IMAGE_NAME }}:latest
|
|
||||||
|
|
||||||
- name: Upload container image
|
|
||||||
run: |
|
|
||||||
echo "${{ secrets.GHCR_TOKEN }}" | docker login ghcr.io -u "${{ secrets.GHCR_USERNAME }}" --password-stdin
|
|
||||||
docker push --all-tags ${{ steps.env.outputs.IMAGE_NAME }}
|
|
|
@ -45,7 +45,7 @@ jobs:
|
||||||
SSH_KEY: /tmp/id_rsa
|
SSH_KEY: /tmp/id_rsa
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
container:
|
container:
|
||||||
image: "ghcr.io/kiwix/kiwix-build_ci_${{matrix.image_variant}}:38"
|
image: "ghcr.io/kiwix/kiwix-build_ci_${{matrix.image_variant}}:2023-10-30"
|
||||||
options: "--device /dev/fuse --privileged"
|
options: "--device /dev/fuse --privileged"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
|
|
|
@ -1,23 +0,0 @@
|
||||||
FROM alpine:3.16
|
|
||||||
|
|
||||||
ENV LANG C.UTF-8
|
|
||||||
ENV OS_NAME alpine
|
|
||||||
|
|
||||||
RUN apk update -q \
|
|
||||||
&& apk add -q --no-cache \
|
|
||||||
# Base build tools
|
|
||||||
bash build-base git py3-pip \
|
|
||||||
# Packaged dependencies
|
|
||||||
xz-dev \
|
|
||||||
zstd-dev \
|
|
||||||
xapian-core-dev \
|
|
||||||
icu-dev icu-data-full \
|
|
||||||
gtest-dev
|
|
||||||
|
|
||||||
# Create user
|
|
||||||
RUN addgroup --gid 121 runner
|
|
||||||
RUN adduser -u 1001 -G runner -h /home/runner -D runner
|
|
||||||
USER runner
|
|
||||||
ENV PATH /home/runner/.local/bin:$PATH
|
|
||||||
RUN pip3 install meson ninja ; \
|
|
||||||
ln -s /usr/bin/python3 /home/runner/.local/bin/python
|
|
|
@ -1,26 +0,0 @@
|
||||||
FROM ubuntu:bionic
|
|
||||||
|
|
||||||
ENV LANG C.UTF-8
|
|
||||||
ENV OS_NAME bionic
|
|
||||||
|
|
||||||
RUN apt update -q \
|
|
||||||
&& apt-get update \
|
|
||||||
&& apt install -q -y --no-install-recommends \
|
|
||||||
# Base build tools
|
|
||||||
build-essential automake libtool cmake ccache pkg-config autopoint patch \
|
|
||||||
python3-pip python3-setuptools python3-wheel git subversion wget unzip \
|
|
||||||
ninja-build openssh-client curl \
|
|
||||||
# Packaged dependencies
|
|
||||||
libbz2-dev uuid-dev zlib1g-dev \
|
|
||||||
libgtest-dev \
|
|
||||||
# Other tools (to remove)
|
|
||||||
# vim less grep \
|
|
||||||
&& apt-get clean -y \
|
|
||||||
&& rm -rf /var/lib/apt/lists/* /usr/share/doc/* /var/cache/debconf/* \
|
|
||||||
&& pip3 install meson pytest gcovr requests distro
|
|
||||||
|
|
||||||
# Create user
|
|
||||||
RUN groupadd --gid 121 runner
|
|
||||||
RUN useradd --uid 1001 --gid 121 --create-home runner
|
|
||||||
USER runner
|
|
||||||
ENV PATH /home/runner/.local/bin:$PATH
|
|
|
@ -1,28 +0,0 @@
|
||||||
FROM fedora:35
|
|
||||||
|
|
||||||
ENV LANG C.UTF-8
|
|
||||||
ENV OS_NAME f35
|
|
||||||
|
|
||||||
RUN dnf install -y --nodocs \
|
|
||||||
# Base build tools
|
|
||||||
make automake libtool cmake git-core subversion pkg-config gcc-c++ \
|
|
||||||
wget unzip ninja-build ccache which patch gcovr xz openssh-clients \
|
|
||||||
python3-pip \
|
|
||||||
# Cross win32 compiler
|
|
||||||
mingw32-gcc-c++ mingw32-bzip2-static mingw32-win-iconv-static \
|
|
||||||
mingw32-winpthreads-static mingw32-zlib-static mingw32-xz-libs-static \
|
|
||||||
mingw32-libmicrohttpd \
|
|
||||||
# python3
|
|
||||||
python3-pip python-unversioned-command \
|
|
||||||
# Other tools (to remove)
|
|
||||||
# vim less grep
|
|
||||||
&& dnf remove -y "*-doc" \
|
|
||||||
&& dnf autoremove -y \
|
|
||||||
&& dnf clean all \
|
|
||||||
&& pip3 install meson pytest requests distro
|
|
||||||
|
|
||||||
# Create user
|
|
||||||
RUN groupadd --gid 121 runner
|
|
||||||
RUN useradd --uid 1001 --gid 121 --create-home runner
|
|
||||||
USER runner
|
|
||||||
ENV PATH /home/runner/.local/bin:$PATH
|
|
|
@ -1,40 +0,0 @@
|
||||||
FROM ubuntu:focal
|
|
||||||
|
|
||||||
ENV LANG C.UTF-8
|
|
||||||
ENV OS_NAME focal
|
|
||||||
ENV DEBIAN_FRONTEND noninteractive
|
|
||||||
|
|
||||||
RUN apt update -q \
|
|
||||||
&& apt install -q -y --no-install-recommends \
|
|
||||||
# Base build tools
|
|
||||||
build-essential automake libtool cmake ccache pkg-config autopoint patch \
|
|
||||||
python3-pip python3-setuptools python3-wheel git subversion wget unzip \
|
|
||||||
ninja-build openssh-client curl libgl-dev \
|
|
||||||
# Python (2) is needed to install android-ndk
|
|
||||||
python \
|
|
||||||
# Packaged dependencies
|
|
||||||
libbz2-dev libmagic-dev uuid-dev zlib1g-dev \
|
|
||||||
libmicrohttpd-dev aria2 libgtest-dev libgl-dev \
|
|
||||||
# Devel package to compile python modules
|
|
||||||
libxml2-dev libxslt-dev python3-dev \
|
|
||||||
# Qt packages
|
|
||||||
libqt5gui5 qtbase5-dev qtwebengine5-dev libqt5svg5-dev qt5-image-formats-plugins qt5-default \
|
|
||||||
# To create the appimage of kiwix-desktop
|
|
||||||
libfuse2 fuse patchelf \
|
|
||||||
# Flatpak tools
|
|
||||||
elfutils flatpak flatpak-builder \
|
|
||||||
# Cross win32 compiler
|
|
||||||
g++-mingw-w64-i686 gcc-mingw-w64-i686 gcc-mingw-w64-base mingw-w64-tools \
|
|
||||||
# Cross compile i586
|
|
||||||
libc6-dev-i386 lib32stdc++6 gcc-multilib g++-multilib \
|
|
||||||
# Other tools (to remove)
|
|
||||||
# vim less grep \
|
|
||||||
&& apt-get clean -y \
|
|
||||||
&& rm -rf /var/lib/apt/lists/* /usr/share/doc/* /var/cache/debconf/* \
|
|
||||||
&& pip3 install meson pytest gcovr requests distro
|
|
||||||
|
|
||||||
# Create user
|
|
||||||
RUN groupadd --gid 121 runner
|
|
||||||
RUN useradd --uid 1001 --gid 121 --create-home runner
|
|
||||||
USER runner
|
|
||||||
ENV PATH /home/runner/.local/bin:$PATH
|
|
Loading…
Reference in New Issue