Skip to content

Commit 2dd3156

Browse files
reshkerobot-cloud-aw
authored andcommitted
Add CI
Do not run mdb locales tests in OS Fix CI && fast CI circuit (#24) Use mirror apt repo (#35) Refactor regress Dockerfile Update Dockerfile: try Update Dockerfile
1 parent 8fc2670 commit 2dd3156

5 files changed

Lines changed: 91 additions & 1 deletion

File tree

.github/workflows/regress.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: Docker Image CI
2+
3+
on:
4+
push:
5+
branches: [ "MDB_*" ]
6+
pull_request:
7+
branches: [ "MDB_*" ]
8+
9+
jobs:
10+
11+
check:
12+
13+
runs-on: ubuntu-latest
14+
15+
steps:
16+
- uses: actions/checkout@v4
17+
- name: Build the Docker image
18+
run: docker build . --file docker/regress/Dockerfile --tag regress_test:1234 && docker run --entrypoint /home/build-user/docker/regress/run_tests_f.sh regress_test:1234
19+
20+
check-world:
21+
22+
runs-on: ubuntu-latest
23+
24+
steps:
25+
- uses: actions/checkout@v4
26+
- name: Build the Docker image
27+
run: docker build . --file docker/regress/Dockerfile --tag regress_test:1234 && docker run regress_test:1234
28+
29+

Dockerfile

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ RUN echo "deb http://dist.yandex.ru/mdb-${CODE_NAME}-secure stable/\$(ARCH)/" >>
2323
RUN curl -s 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xafc3ce0d00e3c45a357e9e637fcd11186050cd1a' | \
2424
gpg --dearmour -o /etc/apt/trusted.gpg.d/yandex.gpg
2525

26+
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys FF5F4D0E27393420
27+
2628
RUN apt-get update && apt-get install -y --no-install-recommends \
2729
sudo build-essential \
2830
gcc lsb-release libssl-dev gnupg openssl \
@@ -38,7 +40,8 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
3840
RUN apt-get install -y \
3941
libmdblocales1 libmdblocales-dev \
4042
postgresql-client-common=${PGDG_VER} \
41-
postgresql-common=${PGDG_VER}
43+
postgresql-common=${PGDG_VER} \
44+
postgresql-common-dev=${PGDG_VER}
4245

4346
RUN groupadd -g 999 build-user && \
4447
useradd -r -u 999 -g build-user build-user

docker/regress/Dockerfile

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
ARG codename
2+
FROM ubuntu:${codename:-bionic}
3+
4+
ARG codename
5+
ENV CODE_NAME=${codename:-bionic}
6+
7+
ARG pgdg
8+
ENV PGDG_VER=${pgdg:-242-2-pgdg18.04+1+yandex220}
9+
10+
ENV DEBIAN_FRONTEND=noninteractive
11+
ENV TZ=Europe/Moskow
12+
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
13+
14+
RUN apt update && apt install -y ca-certificates
15+
RUN sed -i 's/archive.ubuntu.com/mirror.yandex.ru/g' /etc/apt/sources.list
16+
RUN apt-get update && apt-get install -y --no-install-recommends \
17+
sudo build-essential \
18+
gcc lsb-release libssl-dev gnupg openssl \
19+
gdb git curl ca-certificates
20+
21+
RUN curl -s 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xafc3ce0d00e3c45a357e9e637fcd11186050cd1a' | \
22+
gpg --dearmour -o /etc/apt/trusted.gpg.d/yandex.gpg
23+
24+
RUN apt-get update && apt-get install -y --no-install-recommends \
25+
sudo build-essential \
26+
gcc lsb-release libssl-dev gnupg openssl \
27+
gdb git \
28+
libpam0g-dev \
29+
debhelper debootstrap devscripts make equivs debhelper-compat \
30+
libz-dev flex libicu-dev libio-pty-perl libipc-run-perl libkrb5-dev \
31+
libldap2-dev liblz4-dev liblz4-tool zstd libperl-dev libreadline-dev libselinux1-dev llvm-dev \
32+
libsystemd-dev libxml2-dev libxml2-utils libxslt1-dev \
33+
pkg-config python3-dev systemtap-sdt-dev tcl-dev uuid-dev xsltproc zlib1g-dev \
34+
bison dh-exec docbook-xml docbook-xsl
35+
36+
RUN groupadd -g 999 build-user && \
37+
useradd -r -u 999 -g build-user build-user
38+
39+
COPY . /home/build-user
40+
RUN chown build-user:build-user /home -R && usermod -aG sudo build-user
41+
42+
RUN echo 'build-user ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
43+
44+
USER build-user
45+
46+
ENTRYPOINT ["/home/build-user/docker/regress/run_tests.sh"]

docker/regress/run_tests.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#!/bin/bash
2+
set -ex
3+
4+
sed -i '/mdb-related/,$d' src/test/regress/*/misc.*
5+
6+
make check-world

docker/regress/run_tests_f.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#!/bin/bash
2+
set -ex
3+
4+
sed -i '/mdb-related/,$d' src/test/regress/*/misc.*
5+
6+
make check

0 commit comments

Comments
 (0)