We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see ourdocumentation.
There was an error while loading.Please reload this page.
2 parentsb6abfce +f550b4e commit9e88960Copy full SHA for 9e88960
.dockerignore
@@ -0,0 +1,5 @@
1
+*.gcno
2
+*.gcda
3
+*.gcov
4
+*.so
5
+*.o
.gitignore
@@ -1,5 +1,11 @@
*.o
*.so
*.swp
+*.pyc
6
7
8
+pg_query_state--*.sql
9
cscope.out
10
tags
11
+Dockerfile
.travis.yml
@@ -0,0 +1,31 @@
+sudo:required
+
+language:c
+services:
+ -docker
+install:
+ -./mk_dockerfile.sh
+ -docker-compose build
12
+script:
13
+ -docker-compose run $(bash <(curl -s https://codecov.io/env)) tests
14
15
+notifications:
16
+email:
17
+on_success:change
18
+on_failure:always
19
20
+env:
21
+ -PG_VERSION=11 LEVEL=hardcore
22
+ -PG_VERSION=11
23
+ -PG_VERSION=10 LEVEL=hardcore
24
+ -PG_VERSION=10
25
+ -PG_VERSION=9.6 LEVEL=hardcore
26
+ -PG_VERSION=9.6
27
28
+matrix:
29
+allow_failures:
30
+ -env:PG_VERSION=10 LEVEL=nightmare
31
+ -env:PG_VERSION=9.6 LEVEL=nightmare
Dockerfile.tmpl
@@ -0,0 +1,38 @@
+FROM postgres:${PG_VERSION}-alpine
+# Install dependencies
+RUN apk add --no-cache \
+openssl curl \
+perl perl-ipc-run \
+make musl-dev gcc bison flex coreutils \
+zlib-dev libedit-dev \
+clang clang-analyzer \
+python2 python2-dev py2-virtualenv;
+# Install fresh valgrind
+RUN apk add valgrind \
+--update-cache \
+--repository http://dl-3.alpinelinux.org/alpine/edge/main;
+# Environment
+ENV LANG=C.UTF-8 PGDATA=/pg/data
+# Make directories
+RUNmkdir -p ${PGDATA} && \
+mkdir -p /pg/testdir
+# Grant privileges
+RUNchown postgres:postgres ${PGDATA} && \
+chown postgres:postgres /pg/testdir && \
+chmod -R a+rwx /usr/local/lib/postgresql && \
+chmod a+rwx /usr/local/share/postgresql/extension
+COPY run_tests.sh /run.sh
32
+RUN chmod 755 /run.sh
33
34
+ADD . /pg/testdir
35
+WORKDIR /pg/testdir
36
37
+USER postgres
38
+ENTRYPOINT LEVEL=${LEVEL} /run.sh
Makefile
@@ -3,11 +3,13 @@
MODULE_big = pg_query_state
OBJS = pg_query_state.o signal_handler.o$(WIN32RES)
EXTENSION = pg_query_state
-EXTVERSION = 1.0
-DATA =$(EXTENSION)--$(EXTVERSION).sql
+EXTVERSION = 1.1
+DATA = pg_query_state--1.0--1.1.sql
+DATA_built =$(EXTENSION)--$(EXTVERSION).sql
PGFILEDESC = "pg_query_state - facility to track progress of plan execution"
-EXTRA_CLEAN = ./isolation_output
+EXTRA_CLEAN = ./isolation_output$(EXTENSION)--$(EXTVERSION).sql\
+Dockerfile ./tests/*.pyc
ifdefUSE_PGXS
PG_CONFIG = pg_config
@@ -20,6 +22,9 @@ include $(top_builddir)/src/Makefile.global
include$(top_srcdir)/contrib/contrib-global.mk
endif
+$(EXTENSION)--$(EXTVERSION).sql: init.sql
+cat$^>$@
check: isolationcheck
ISOLATIONCHECKS=corner_cases
README.md
docker-compose.yml
@@ -0,0 +1,2 @@
+tests:
+build:.
executor_hooks.patch
pg_query_state--1.0.sqlrenamed to init.sql
@@ -15,11 +15,3 @@ CREATE FUNCTION pg_query_state(pid integer
, leader_pidinteger)
AS'MODULE_PATHNAME'
LANGUAGE C STRICT VOLATILE;
-
-CREATEFUNCTIONexecutor_step(pidinteger) RETURNS VOID
-AS'MODULE_PATHNAME'
-LANGUAGE C VOLATILE;
-CREATEFUNCTIONexecutor_continue(pidinteger) RETURNS VOID
mk_dockerfile.sh
@@ -0,0 +1,16 @@
+if [-z${PG_VERSION+x} ];then
+echo PG_VERSION is not set!
+exit 1
+fi
+if [-z${LEVEL+x} ];then
+LEVEL=scan-build
+echo PG_VERSION=${PG_VERSION}
+echo LEVEL=${LEVEL}
+sed \
+-e's/${PG_VERSION}/'${PG_VERSION}/g \
+-e's/${LEVEL}/'${LEVEL}/g \
+Dockerfile.tmpl> Dockerfile