刘洪青 | 4720585 | 2020-08-14 13:39:30 +0800 | [diff] [blame^] | 1 | #!/bin/sh |
| 2 | |
| 3 | # docker-entrypoint-job.sh |
| 4 | |
| 5 | BASE_PWD="/home/java-app" |
| 6 | |
| 7 | # BASE_PWD=`pwd` |
| 8 | # EANBLED_JOBS="TMP_DM_GENDER,TMP_DM_ORGTYPE,TMP_DM_ACCOUNTTYPE,TMP_DM_IDENTITYTYPE,TMP_ORGANIZE,TMP_PERSON,TMP_ACCOUNT,TMP_REGISTERED_SERVICE,TMP_WEAK_PASSWORD_DICT,TMP_ACCOUNT_QQ,TMP_ACCOUNT_WECHAT,TMP_TB_ORGANIZE,TMP_TB_USER,TMP_TB_ACCOUNT,TMP_TB_USERGROUP,TMP_TB_ROLE,TMP_TB_APPLICATION,TMP_TB_FUNCTION,TMP_TB_RIGHT,TMP_TB_ACCOUNTSECURITYEMAIL,TMP_TB_ACCOUNTSECURITYMOBILE,TMP_REF_ORGANIZEUSER,TMP_REF_USERGROUPACCOUNT,TMP_REF_ACCOUNTROLE,TMP_REF_USERGROUPROLE,TMP_REF_USERROLE,TMP_REF_APPLICATIONROLE,TMP_REF_FUNCTIONROLE,TMP_REF_RIGHTROLE" |
| 9 | |
| 10 | |
| 11 | replace_file() { |
| 12 | local file="$1" |
| 13 | local key="$2" |
| 14 | local value="$3" |
| 15 | sed -i "s;\${$key};$value;" $file |
| 16 | } |
| 17 | |
| 18 | is_enabled() { |
| 19 | local file="$1" |
| 20 | if [ -n "$EANBLED_JOBS" ]; then |
| 21 | if [ "$EANBLED_JOBS" = "*" ]; then |
| 22 | echo 1 |
| 23 | fi |
| 24 | |
| 25 | # job_name="1001.job_TMP_DM_GENDER.json"; job_name=${job_name#*job_}; job_name=${job_name%*.json}; echo $job_name; |
| 26 | job_name=${file} |
| 27 | job_name=${job_name#*job_}; |
| 28 | job_name=${job_name%*.json}; |
| 29 | # echo $job_name; |
| 30 | |
| 31 | enable=$(echo $EANBLED_JOBS | grep "${job_name}") |
| 32 | if [[ "$enable" != "" ]] |
| 33 | then |
| 34 | echo 1 |
| 35 | else |
| 36 | echo 0 |
| 37 | fi |
| 38 | else |
| 39 | echo 1 |
| 40 | fi |
| 41 | } |
| 42 | |
| 43 | # 如果第一个参数是app,那么就启动执行 |
| 44 | if [ "$1" = 'app' ]; then |
| 45 | |
| 46 | for job_file in `ls -1 ${BASE_PWD}/datax/job/*.json | sort`; do |
| 47 | echo "replace_file, job: $job_file" |
| 48 | |
| 49 | enable=$(is_enabled "$job_file") |
| 50 | echo "job: $job_file enable status is ${enable}" |
| 51 | if [ "$enable" = "1" ]; then |
| 52 | echo 'replace' |
| 53 | |
| 54 | if [ -n "$ORACLEREADER_UNIAUTH_USERNAME" ]; then |
| 55 | replace_file "$job_file" "ORACLEREADER_UNIAUTH_USERNAME" "$ORACLEREADER_UNIAUTH_USERNAME" |
| 56 | fi |
| 57 | if [ -n "$ORACLEREADER_UNIAUTH_PASSWORD" ]; then |
| 58 | replace_file "$job_file" "ORACLEREADER_UNIAUTH_PASSWORD" "$ORACLEREADER_UNIAUTH_PASSWORD" |
| 59 | fi |
| 60 | if [ -n "$ORACLEREADER_UNIAUTH_JDBC_URL" ]; then |
| 61 | replace_file "$job_file" "ORACLEREADER_UNIAUTH_JDBC_URL" "$ORACLEREADER_UNIAUTH_JDBC_URL" |
| 62 | fi |
| 63 | |
| 64 | if [ -n "$MYSQLWRITER8_TMP_USERNAME" ]; then |
| 65 | replace_file "$job_file" "MYSQLWRITER8_TMP_USERNAME" "$MYSQLWRITER8_TMP_USERNAME" |
| 66 | fi |
| 67 | if [ -n "$MYSQLWRITER8_TMP_PASSWORD" ]; then |
| 68 | replace_file "$job_file" "MYSQLWRITER8_TMP_PASSWORD" "$MYSQLWRITER8_TMP_PASSWORD" |
| 69 | fi |
| 70 | if [ -n "$MYSQLWRITER8_TMP_JDBC_URL" ]; then |
| 71 | replace_file "$job_file" "MYSQLWRITER8_TMP_JDBC_URL" "$MYSQLWRITER8_TMP_JDBC_URL" |
| 72 | fi |
| 73 | |
| 74 | else |
| 75 | echo 'rm' |
| 76 | |
| 77 | rm -rf $job_file |
| 78 | fi |
| 79 | |
| 80 | done |
| 81 | |
| 82 | set -ex; |
| 83 | exec /home/java-app/docker-entrypoint.sh app |
| 84 | else |
| 85 | set -ex; |
| 86 | exec "$@" |
| 87 | fi |
| 88 | |