add docker-compose for ci (#11795)
* add docker-compose for ci * docker-compose logs does not have the option to set the dc file * leverage docker-compose extends This moves the developer `docker-compose.yml` to the root, extending the `build/docker-compose.yml` and overriding the `container_name` to preserve compatibility with the older, non-docker-compose setup. Note that this required downgrading to docker-compose 2.4's file format (still supported by the newer tooling) due to the long and frustrating converstaion at https://github.com/moby/moby/issues/31101. * remove -f docker-compose-ci.yml references
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
a1a190e5c0
Коммит
c927fb9d50
10
Makefile
10
Makefile
@@ -116,8 +116,8 @@ start-docker: ## Starts the docker containers for local development.
|
||||
ifeq ($(IS_CI),false)
|
||||
@echo Starting docker containers
|
||||
|
||||
docker-compose --no-ansi -f ./build/docker-compose.yml run --rm start_dependencies
|
||||
cat tests/${LDAP_DATA}-data.ldif | docker-compose --no-ansi -f ./build/docker-compose.yml exec -T openldap bash -c 'ldapadd -x -D "cn=admin,dc=mm,dc=test,dc=com" -w mostest || true';
|
||||
docker-compose --no-ansi run --rm start_dependencies
|
||||
cat tests/${LDAP_DATA}-data.ldif | docker-compose --no-ansi exec -T openldap bash -c 'ldapadd -x -D "cn=admin,dc=mm,dc=test,dc=com" -w mostest || true';
|
||||
|
||||
else
|
||||
@echo CI Build: skipping docker start
|
||||
@@ -126,14 +126,14 @@ endif
|
||||
stop-docker: ## Stops the docker containers for local development.
|
||||
@echo Stopping docker containers
|
||||
|
||||
docker-compose --no-ansi -f ./build/docker-compose.yml stop
|
||||
docker-compose --no-ansi stop
|
||||
|
||||
|
||||
clean-docker: ## Deletes the docker containers for local development.
|
||||
@echo Removing docker containers
|
||||
|
||||
docker-compose --no-ansi -f ./build/docker-compose.yml down -v
|
||||
docker-compose --no-ansi -f ./build/docker-compose.yml rm -v
|
||||
docker-compose --no-ansi down -v
|
||||
docker-compose --no-ansi rm -v
|
||||
|
||||
|
||||
govet: ## Runs govet against all packages.
|
||||
|
||||
@@ -131,12 +131,12 @@ pipeline {
|
||||
}
|
||||
|
||||
steps {
|
||||
dir('src/github.com/mattermost/mattermost-server') {
|
||||
dir('src/github.com/mattermost/mattermost-server/build') {
|
||||
ansiColor('xterm') {
|
||||
sh """
|
||||
/usr/local/bin/docker-compose --no-ansi -f ./build/docker-compose.yml run --rm start_dependencies
|
||||
/usr/local/bin/docker-compose --no-ansi -f ./build/docker-compose.yml ps
|
||||
cat tests/${LDAP_DATA}-data.ldif | /usr/local/bin/docker-compose --no-ansi -f ./build/docker-compose.yml exec -T openldap bash -c 'ldapadd -x -D "cn=admin,dc=mm,dc=test,dc=com" -w mostest';
|
||||
/usr/local/bin/docker-compose --no-ansi run --rm start_dependencies
|
||||
/usr/local/bin/docker-compose --no-ansi ps
|
||||
cat ../tests/${LDAP_DATA}-data.ldif | /usr/local/bin/docker-compose --no-ansi exec -T openldap bash -c 'ldapadd -x -D "cn=admin,dc=mm,dc=test,dc=com" -w mostest';
|
||||
"""
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
version: '3.4'
|
||||
version: '2.4'
|
||||
services:
|
||||
mysql:
|
||||
image: "mysql:5.7"
|
||||
|
||||
54
docker-compose.yml
Обычный файл
54
docker-compose.yml
Обычный файл
@@ -0,0 +1,54 @@
|
||||
version: '2.4'
|
||||
services:
|
||||
mysql:
|
||||
container_name: mattermost-mysql
|
||||
extends:
|
||||
file: build/docker-compose.yml
|
||||
service: mysql
|
||||
postgres:
|
||||
container_name: mattermost-postgres
|
||||
extends:
|
||||
file: build/docker-compose.yml
|
||||
service: postgres
|
||||
minio:
|
||||
container_name: mattermost-minio
|
||||
extends:
|
||||
file: build/docker-compose.yml
|
||||
service: minio
|
||||
inbucket:
|
||||
container_name: mattermost-inbucket
|
||||
extends:
|
||||
file: build/docker-compose.yml
|
||||
service: inbucket
|
||||
openldap:
|
||||
container_name: mattermost-openldap
|
||||
extends:
|
||||
file: build/docker-compose.yml
|
||||
service: openldap
|
||||
elasticsearch:
|
||||
container_name: mattermost-elasticsearch
|
||||
extends:
|
||||
file: build/docker-compose.yml
|
||||
service: elasticsearch
|
||||
redis:
|
||||
container_name: mattermost-redis
|
||||
extends:
|
||||
file: build/docker-compose.yml
|
||||
service: redis
|
||||
start_dependencies:
|
||||
image: mattermost/mattermost-wait-for-dep:latest
|
||||
networks:
|
||||
- mm-test
|
||||
depends_on:
|
||||
- mysql
|
||||
- postgres
|
||||
- minio
|
||||
- inbucket
|
||||
- openldap
|
||||
- elasticsearch
|
||||
- redis
|
||||
command: postgres:5432 mysql:3306 minio:9000 inbucket:10080 openldap:389 elasticsearch:9200 redis:6379
|
||||
|
||||
networks:
|
||||
mm-test:
|
||||
driver: bridge
|
||||
Ссылка в новой задаче
Block a user