Skip to content

Commit d8e865f

Browse files
committed
Library updates and build tidy up
1 parent 6f4b203 commit d8e865f

File tree

12 files changed

+154
-176
lines changed

12 files changed

+154
-176
lines changed

.travis.yml

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,20 +34,19 @@ cache:
3434
install:
3535
- bash .travis/maven_cfg.sh
3636
- bash .travis/start_db.sh
37-
- bash .travis/install_utplsql.sh $DB_UT3_USER $DB_UT3_PASS
37+
- bash .travis/install_utplsql.sh
3838
- bash .travis/install_demo_project.sh
39-
- bash .travis/install_demo_owner_project.sh
4039

4140
script:
4241
- echo "Run Unit Tests"
43-
- mvn org.jacoco:jacoco-maven-plugin:prepare-agent test
42+
- mvn test
4443
- echo "Run Integration Tests"
45-
- mvn org.jacoco:jacoco-maven-plugin:prepare-agent verify -Pintegration -DdbUser="${DB_UT3_USER}" -DdbPass="${DB_UT3_PASS}" -DdbUrl="jdbc:oracle:thin:@${DB_URL}"
44+
- mvn verify -Pintegration -DdbUser="${DB_UT3_USER}" -DdbPass="${DB_UT3_PASS}" -DdbUrl="jdbc:oracle:thin:@${DB_URL}"
4645
- mvn sonar:sonar -Dsonar.projectKey=org.utplsql:utplsql-maven-plugin
4746

4847
before_deploy:
49-
- echo $GPG_SECRET_KEYS | base64 --decode | $GPG_EXECUTABLE --import
50-
- echo $GPG_OWNERTRUST | base64 --decode | $GPG_EXECUTABLE --import-ownertrust
48+
- echo $GPG_SECRET_KEYS | base64 --decode | ${GPG_EXECUTABLE} --import
49+
- echo $GPG_OWNERTRUST | base64 --decode | ${GPG_EXECUTABLE} --import-ownertrust
5150

5251
deploy:
5352
- provider: script

.travis/install_demo_owner_project.sh

Lines changed: 0 additions & 50 deletions
This file was deleted.

.travis/install_demo_project.sh

Lines changed: 11 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,18 @@
11
#!/bin/bash
22
set -ev
33

4-
PROJECT_FILES_SRC="src/it/resources/simple-project"
5-
PROJECT_FILES="resources"
6-
DB_USER=app
7-
DB_PASS=app
4+
DB_URL="//127.0.0.1:1521/XE"
5+
SQLPLUS_IMAGE=${DOCKER_REPO}:${ORACLE_VERSION}
6+
VOLUME="/project"
87

9-
cat > demo_project.sh.tmp <<EOF
10-
sqlplus -S -L sys/oracle@//127.0.0.1:1521/xe AS SYSDBA <<SQL
11-
create user ${DB_USER} identified by ${DB_PASS} quota unlimited on USERS default tablespace USERS;
12-
grant create session, create procedure, create type, create table, create sequence, create view to ${DB_USER};
13-
grant select any dictionary to ${DB_USER};
14-
exit
15-
SQL
8+
docker run --rm -v $(pwd):${VOLUME} -w ${VOLUME} --network host --entrypoint sqlplus ${SQLPLUS_IMAGE} \
9+
sys/oracle@${DB_URL} as sysdba @.travis/sql/create_users.sql
1610

17-
cd ${PROJECT_FILES}
18-
sqlplus -S -L ${DB_USER}/${DB_PASS}@//127.0.0.1:1521/xe <<SQL
19-
whenever sqlerror exit failure rollback
20-
whenever oserror exit failure rollback
11+
docker run --rm -v $(pwd):${VOLUME} -w ${VOLUME} --network host --entrypoint sqlplus ${SQLPLUS_IMAGE} \
12+
app/pass@${DB_URL} @.travis/sql/create_app_objects.sql
2113

22-
@scripts/sources/TO_TEST_ME.tab
23-
@scripts/sources/APP.PKG_TEST_ME.spc
24-
@scripts/sources/APP.PKG_TEST_ME.bdy
14+
docker run --rm -v $(pwd):${VOLUME} -w ${VOLUME} --network host --entrypoint sqlplus ${SQLPLUS_IMAGE} \
15+
code_owner/pass@${DB_URL} @.travis/sql/create_source_owner_objects.sql
2516

26-
@scripts/tests/APP.TEST_PKG_TEST_ME.spc
27-
@scripts/tests/APP.TEST_PKG_TEST_ME.bdy
28-
29-
exit
30-
SQL
31-
EOF
32-
33-
docker cp ./$PROJECT_FILES_SRC $ORACLE_VERSION:/$PROJECT_FILES
34-
docker cp ./demo_project.sh.tmp $ORACLE_VERSION:/demo_project.sh
35-
docker exec $ORACLE_VERSION bash demo_project.sh
17+
docker run --rm -v $(pwd):${VOLUME} -w ${VOLUME} --network host --entrypoint sqlplus ${SQLPLUS_IMAGE} \
18+
tests_owner/pass@${DB_URL} @.travis/sql/create_tests_owner_objects.sql

.travis/install_utplsql.sh

Lines changed: 8 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -2,45 +2,13 @@
22
set -ev
33
cd $(dirname $(readlink -f $0))
44

5-
# Download the specified version of utPLSQL.
6-
UTPLSQL_VERSION="v3.0.4"
7-
UTPLSQL_FILE="utPLSQL"
8-
curl -L -O "https://github.com/utPLSQL/utPLSQL/releases/download/$UTPLSQL_VERSION/$UTPLSQL_FILE.tar.gz"
5+
DB_URL="//127.0.0.1:1521/XE"
6+
UTPLSQL_VERSION="v3.1.9"
7+
UTPLSQL_DIR="utPLSQL"
8+
SQLPLUS_IMAGE=${DOCKER_REPO}:${ORACLE_VERSION}
9+
VOLUME="/utPLSQL"
910

10-
# Download develop branch of utPLSQL.
11-
#UTPLSQL_VERSION="develop"
12-
#UTPLSQL_FILE="utPLSQL"
13-
#git clone -b develop --single-branch https://github.com/utPLSQL/utPLSQL.git
14-
# tar -czf $UTPLSQL_FILE.tar.gz $UTPLSQL_FILE && rm -rf $UTPLSQL_FILE
11+
git clone --depth=1 --branch=${UTPLSQL_VERSION} https://github.com/utPLSQL/utPLSQL.git ${UTPLSQL_DIR}
1512

16-
# Create a temporary install script.
17-
cat > install.sh.tmp <<EOF
18-
tar -xzf ${UTPLSQL_FILE}.tar.gz && rm ${UTPLSQL_FILE}.tar.gz
19-
cd ${UTPLSQL_FILE}/source
20-
sqlplus -S -L sys/oracle@//127.0.0.1:1521/xe AS SYSDBA @install_headless.sql $1 $2 users
21-
22-
sqlplus -S -L sys/oracle@//127.0.0.1:1521/xe AS SYSDBA << SQL
23-
grant execute any procedure to $1;
24-
grant create any procedure to $1;
25-
grant execute on dbms_lob to $1;
26-
grant execute on dbms_sql to $1;
27-
grant execute on dbms_xmlgen to $1;
28-
grant execute on dbms_lock to $1;
29-
30-
31-
exit
32-
SQL
33-
EOF
34-
35-
# Copy utPLSQL files to the container and install it.
36-
docker cp ./$UTPLSQL_FILE.tar.gz $ORACLE_VERSION:/$UTPLSQL_FILE.tar.gz
37-
# docker cp ./$UTPLSQL_FILE $ORACLE_VERSION:/$UTPLSQL_FILE
38-
docker cp ./install.sh.tmp $ORACLE_VERSION:/install.sh
39-
40-
# Remove temporary files.
41-
# rm $UTPLSQL_FILE.tar.gz
42-
rm -rf $UTPLSQL_FILE
43-
rm install.sh.tmp
44-
45-
# Execute the utPLSQL installation inside the container.
46-
docker exec $ORACLE_VERSION bash install.sh
13+
docker run --rm -v $(pwd)/${UTPLSQL_DIR}:${VOLUME} -w ${VOLUME}/source --network host --entrypoint sqlplus ${SQLPLUS_IMAGE} \
14+
sys/oracle@${DB_URL} as sysdba @install_headless.sql ${DB_UT3_USER} ${DB_UT3_PASS} users

.travis/sql/create_app_objects.sql

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
whenever sqlerror exit failure rollback
2+
whenever oserror exit failure rollback
3+
4+
@src/it/resources/simple-project/scripts/sources/TO_TEST_ME.tab
5+
@src/it/resources/simple-project/scripts/sources/APP.PKG_TEST_ME.spc
6+
@src/it/resources/simple-project/scripts/sources/APP.PKG_TEST_ME.bdy
7+
8+
@src/it/resources/simple-project/scripts/tests/APP.TEST_PKG_TEST_ME.spc
9+
@src/it/resources/simple-project/scripts/tests/APP.TEST_PKG_TEST_ME.bdy
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
whenever sqlerror exit failure rollback
2+
whenever oserror exit failure rollback
3+
4+
@src/it/resources/owner-param-project/scripts/sources/foo/tables/TO_TEST_ME.tab
5+
@src/it/resources/owner-param-project/scripts/sources/foo/packages/PKG_TEST_ME.sql
6+
@src/it/resources/owner-param-project/scripts/sources/foo/package_bodies/PKG_TEST_ME.sql
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
whenever sqlerror exit failure rollback
2+
whenever oserror exit failure rollback
3+
4+
create synonym TO_TEST_ME for CODE_OWNER.TO_TEST_ME;
5+
create synonym PKG_TEST_ME for CODE_OWNER.PKG_TEST_ME;
6+
@src/it/resources/owner-param-project/scripts/test/bar/packages/TEST_PKG_TEST_ME.sql
7+
@src/it/resources/owner-param-project/scripts/test/bar/package_bodies/TEST_PKG_TEST_ME.sql

.travis/sql/create_users.sql

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
whenever sqlerror exit failure rollback
2+
whenever oserror exit failure rollback
3+
set echo off
4+
set verify off
5+
6+
define UTPLSQL_USER = 'UT3';
7+
define APP_USER = 'APP';
8+
define CODE_OWNER = 'CODE_OWNER';
9+
define TESTS_OWNER = 'TESTS_OWNER';
10+
define DB_PASS = 'pass';
11+
12+
grant execute any procedure to &UTPLSQL_USER;
13+
grant create any procedure to &UTPLSQL_USER;
14+
grant execute on dbms_lob to &UTPLSQL_USER;
15+
grant execute on dbms_sql to &UTPLSQL_USER;
16+
grant execute on dbms_xmlgen to &UTPLSQL_USER;
17+
grant execute on dbms_lock to &UTPLSQL_USER;
18+
19+
create user &APP_USER identified by &DB_PASS quota unlimited on USERS default tablespace USERS;
20+
grant create session, create procedure, create type, create table, create sequence, create view to &APP_USER;
21+
grant select any dictionary to &APP_USER;
22+
23+
create user &CODE_OWNER identified by &DB_PASS quota unlimited on USERS default tablespace USERS;
24+
grant create session, create procedure, create type, create table, create sequence, create view to &CODE_OWNER;
25+
26+
create user &TESTS_OWNER identified by &DB_PASS quota unlimited on USERS default tablespace USERS;
27+
grant create session, create procedure, create type, create table, create sequence, create view, create synonym to &TESTS_OWNER;
28+
grant select any dictionary to &TESTS_OWNER;
29+
grant select any table, delete any table, drop any table to &TESTS_OWNER;
30+
grant execute any procedure to &TESTS_OWNER;

.travis/start_db.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,5 @@ fi
1010

1111
# Pull the specified db version from docker hub.
1212
docker pull $DOCKER_REPO:$ORACLE_VERSION
13-
docker run -d --name $ORACLE_VERSION $DOCKER_OPTIONS -p 1521:1521 $DOCKER_REPO:$ORACLE_VERSION
13+
docker run -d --name $ORACLE_VERSION $DOCKER_OPTIONS -p 127.0.0.1:1521:1521 $DOCKER_REPO:$ORACLE_VERSION
1414
docker logs -f $ORACLE_VERSION | grep -m 1 "DATABASE IS READY TO USE!" --line-buffered

0 commit comments

Comments
 (0)