github.com/vnforks/kid@v5.11.1+incompatible/build/local-test-env.sh (about) 1 #!/bin/bash 2 3 export COMPOSE_PROJECT_NAME=localdev 4 local_cmdname=${0##*/} 5 6 usage() 7 { 8 cat << USAGE >&2 9 Usage: 10 $local_cmdname up/down 11 USAGE 12 exit 1 13 } 14 15 up() 16 { 17 docker-compose run --rm start_dependencies 18 19 docker-compose exec openldap bash -c 'echo -e "dn: ou=testusers,dc=mm,dc=test,dc=com\nobjectclass: organizationalunit" | ldapadd -x -D "cn=admin,dc=mm,dc=test,dc=com" -w mostest' 20 docker-compose exec openldap bash -c 'echo -e "dn: uid=test.one,ou=testusers,dc=mm,dc=test,dc=com\nobjectclass: iNetOrgPerson\nsn: User\ncn: Test1\nmail: success+testone@simulator.amazonses.com" | ldapadd -x -D "cn=admin,dc=mm,dc=test,dc=com" -w mostest' 21 docker-compose exec openldap bash -c 'ldappasswd -s Password1 -D "cn=admin,dc=mm,dc=test,dc=com" -x "uid=test.one,ou=testusers,dc=mm,dc=test,dc=com" -w mostest' 22 docker-compose exec openldap bash -c 'echo -e "dn: uid=test.two,ou=testusers,dc=mm,dc=test,dc=com\nobjectclass: iNetOrgPerson\nsn: User\ncn: Test2\nmail: success+testtwo@simulator.amazonses.com" | ldapadd -x -D "cn=admin,dc=mm,dc=test,dc=com" -w mostest' 23 docker-compose exec openldap bash -c 'ldappasswd -s Password1 -D "cn=admin,dc=mm,dc=test,dc=com" -x "uid=test.two,ou=testusers,dc=mm,dc=test,dc=com" -w mostest' 24 docker-compose exec openldap bash -c 'echo -e "dn: cn=tgroup,ou=testusers,dc=mm,dc=test,dc=com\nobjectclass: groupOfUniqueNames\nuniqueMember: uid=test.one,ou=testusers,dc=mm,dc=test,dc=com" | ldapadd -x -D "cn=admin,dc=mm,dc=test,dc=com" -w mostest' 25 26 docker run -it -u root \ 27 --privileged \ 28 -v $GOPATH:/go \ 29 -w /go/src/github.com/mattermost/mattermost-server/ \ 30 --net ${COMPOSE_PROJECT_NAME}_mm-test \ 31 -e GOPATH="/go" \ 32 -e TEST_DATABASE_MYSQL_DSN="mmuser:mostest@tcp(mysql:3306)/mattermost_test?charset=utf8mb4,utf8\u0026readTimeout=30s\u0026writeTimeout=30s" \ 33 -e TEST_DATABASE_POSTGRESQL_DSN="postgres://mmuser:mostest@postgres:5432/mattermost_test?sslmode=disable&connect_timeout=10" \ 34 -e TEST_DATABASE_MYSQL_ROOT_PASSWD="mostest" \ 35 -e CI_INBUCKET_HOST="inbucket" \ 36 -e CI_MINIO_HOST="minio" \ 37 -e CI_INBUCKET_PORT="10080" \ 38 -e CI_MINIO_PORT="9000" \ 39 -e CI_INBUCKET_SMTP_PORT="10025" \ 40 -e CI_LDAP_HOST="openldap" \ 41 -e IS_CI=true \ 42 -e MM_SQLSETTINGS_DATASOURCE="mmuser:mostest@tcp(mysql:3306)/mattermost_test?charset=utf8mb4,utf8" \ 43 -e MM_EMAILSETTINGS_SMTPSERVER="inbucket" \ 44 -e MM_EMAILSETTINGS_SMTPPORT="10025" \ 45 -e MM_ELASTICSEARCHSETTINGS_CONNECTIONURL="http://elasticsearch:9200" \ 46 mattermost/mattermost-build-server:dec-7-2018 /bin/bash 47 } 48 49 down() 50 { 51 docker-compose down 52 } 53 54 # process arguments 55 while [[ $# -gt 0 ]] 56 do 57 case "$1" in 58 up) 59 echo "Starting Containers" 60 up 61 break 62 ;; 63 64 down) 65 echo "Stopping Containers" 66 down 67 break 68 ;; 69 70 --help) 71 usage 72 ;; 73 74 *) 75 echo "Unknown argument: $1" >&2 76 usage 77 ;; 78 esac 79 done 80 81 if [[ "$1" == "" ]]; then 82 usage 83 fi