Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
R
Rethinkdb Testing
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Open Source Software
Software Testing
Rethinkdb Testing
Commits
913fe590
Commit
913fe590
authored
1 year ago
by
Jason Hiser
Browse files
Options
Downloads
Patches
Plain Diff
non-working
parent
fd8d6a54
Branches
trunk
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
Dockerfile
+70
-0
70 additions, 0 deletions
Dockerfile
with
70 additions
and
0 deletions
Dockerfile
0 → 100644
+
70
−
0
View file @
913fe590
# which image to test.
ARG
BASE_TAG
# specify that we'll inherit from the image to test.
FROM
${BASE_TAG}
# which python binary to test
ARG
INSTALL_BIN
# specify we are running as root, in case the base image doesn't default to that.
USER
root
# specify that apt should be non-interactive.
ENV
DEBIAN_FRONTEND=noninteractive
# install basic software
RUN
apt update
&&
apt
install
-y
build-essential protobuf-compiler
\
python python3 libprotobuf-dev libcurl4-openssl-dev
\
libncurses5-dev libjemalloc-dev wget m4 g++ libssl-dev libc6 libcurl4
\
git build-essential protobuf-compiler
\
libprotobuf-dev libcurl4-openssl-dev
\
libncurses5-dev m4 g++ libssl-dev
\
debhelper curl rsync pip
RUN
apt
install
-y
tzdata
\
&&
ln
-fs
/usr/share/zoneinfo/UTC /etc/localtime
\
&&
dpkg-reconfigure
--frontend
noninteractive tzdata
# checkout and build the redis suite.
# note: the sed command for memefficiency.tcl extends a timeout so that the test is deterministic
# on our older test runners.
RUN
set
-x
;
mkdir
/work
&&
\
cd
/work
&&
\
git clone https://github.com/rethinkdb/rethinkdb.git && \
version=$(rethinkdb --version 2>&1 | sed -e "s/rethinkdb //" -e "s/~.*//") && \
cd /work/rethinkdb && \
git checkout v${version} && \
PYTHON=$(which python3) ./configure --fetch boost --fetch gtest --fetch re2 --fetch jemalloc --fetch quickjs && \
make support -j $(python -c 'import multiprocessing; print(multiprocessing.cpu_count())') && \
make DEBUG=1 -j $(python -c 'import multiprocessing; print(multiprocessing.cpu_count())') && \
git clone https://github.com/rethinkdb/rethinkdb-python /tmp/python-driver && \
cd /tmp/python-driver && \
git checkout v${version} && \
pip install -r requirements.txt && \
make prepare
# run the original tests
RUN
cd
/work/rethinkdb
;
\
md5sum
./build/debug/rethinkdb
;
\
export
PYTHON_DRIVER
=
/tmp/python-driver/rethinkdb
;
\
export
MAX_JOBS
=
$(
python
-c
'import multiprocessing; print(multiprocessing.cpu_count())'
)
;
\
test
/run
--timeout
300
--jobs
"
${
MAX_JOBS
}
"
-H
all
'!unit'
'!cpplint'
'!long'
'!disabled'
|
\
tee
/orig_runtest_results.txt
||
true
# run python tests on the version to test
RUN
cd
/work/rethinkdb
;
\
cp
${
INSTALL_BIN
}
./build/debug/rethinkdb
;
\
md5sum
./build/debug/rethinkdb
;
\
export
PYTHON_DRIVER
=
/tmp/python-driver/rethinkdb
;
\
export
MAX_JOBS
=
$(
python
-c
'import multiprocessing; print(multiprocessing.cpu_count())'
)
;
\
test
/run
--timeout
300
--jobs
"
${
MAX_JOBS
}
"
-H
all
'!unit'
'!cpplint'
'!long'
'!disabled'
|
\
tee
/modi_runtest_results.txt
||
true
## finally, test the diffs
#RUN bash -c 'diff /orig_runtest_results.txt /modi_runtest_results.txt'
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment