|
2 | 2 | set -ev
|
3 | 3 | cd $(dirname $(readlink -f $0))
|
4 | 4 |
|
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" |
9 | 10 |
|
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} |
15 | 12 |
|
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 |
0 commit comments