|
@@ -1,86 +1,86 @@
|
|
|
-#services:
|
|
|
-# selenium:
|
|
|
-# image: selenium/standalone-firefox-debug:3.1
|
|
|
-# docker:
|
|
|
-# image: docker:17.10-dind
|
|
|
-# privileged: true
|
|
|
-# command: [ "--storage-driver=vfs", "--tls=false" ]
|
|
|
-
|
|
|
-pipeline:
|
|
|
- build:
|
|
|
- image: python:2.7
|
|
|
- commands:
|
|
|
- - START=$(date +%s)
|
|
|
- - echo $START
|
|
|
- - export CLIENT=fd3
|
|
|
- - apt update
|
|
|
- - apt install netcat -yq
|
|
|
- #- pip install --upgrade pip ansible==2.2.0 markupsafe ecdsa pyOpenSSL;
|
|
|
- # - curl -OL https://github.com/digitalocean/doctl/releases/download/v1.8.0/doctl-1.8.0-linux-amd64.tar.gz
|
|
|
- # - tar xf doctl-1.8.0-linux-amd64.tar.gz
|
|
|
- #- ./doctl auth init -t 083d19437d43fc51983c8926e5060bdb5039032e7d2a933395b2513573c799d3
|
|
|
- #- ID=$(./doctl compute droplet create test-installer-fd3 --wait --format "ID" --size s-6vcpu-16gb --image debian-9-x64 --region nyc3 --ssh-keys b4:2b:5f:4c:0c:be:6e:77:50:85:96:ca:70:55:db:aa --tag-names test,fd3-test,installer | tail -1)
|
|
|
- #- echo $ID
|
|
|
- #- ./doctl compute droplet get $ID --format "PublicIPv4" --no-header > dd.id
|
|
|
- - FD3IP=165.227.7.103
|
|
|
- #- timeout 30 sh -c 'until nc -z $0 $1; do sleep 1; done' $FD3IP 22
|
|
|
-#ssh con IP doctl
|
|
|
- - chmod 0600 tools/keys/bitbucket.id_rsa
|
|
|
- - eval $(ssh-agent) ; ssh-add tools/keys/bitbucket.id_rsa
|
|
|
- - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP apt-get update
|
|
|
-
|
|
|
- - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP apt-get install curl git python python-pip -yq
|
|
|
- - ssh root@$FD3IP 'ssh-keyscan -H -p 22 bitbucket.org >> ~/.ssh/known_hosts'
|
|
|
- #- ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP curl https://bootstrap.pypa.io/get-pip.py | python
|
|
|
- #- curl -fsSL get.docker.com | ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP
|
|
|
- - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP 'pip install docker-compose'
|
|
|
-
|
|
|
-# - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP 'curl -sSL https://agent.digitalocean.com/install.sh | sh'
|
|
|
-
|
|
|
-####. Crear un directorio para la instalación, puede ser en cualquier lugar del sistema. Tener en cuenta que en este directorio se descargará código fuente.
|
|
|
- - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP 'docker stop $(docker ps -qa) || exit 0'
|
|
|
-
|
|
|
-####. Descargar el fuente de instalación.
|
|
|
-#- ssh -A -o StrictHostKeyChecking=no root@$FD3IP git clone git@bitbucket.org:ikflowdat/installer.git /opt/installer
|
|
|
- - ssh -A -o StrictHostKeyChecking=no root@$FD3IP rm -rf /opt/flowdat
|
|
|
- - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP rm -rf /opt/flowdat /opt/installer/
|
|
|
- - ssh -A -o StrictHostKeyChecking=no root@$FD3IP mkdir -p /opt/installer
|
|
|
- - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP mkdir /opt/flowdat
|
|
|
- - scp -r -o StrictHostKeyChecking=no tools root@$FD3IP:/opt/installer/
|
|
|
-
|
|
|
-####. Construir el docker que se utilizará durante la instalación.
|
|
|
- - ssh -o StrictHostKeyChecking=no root@$FD3IP 'cd /opt/installer/tools; docker build --build-arg DIR_INSTALL=$(pwd) -t dind .'
|
|
|
-
|
|
|
-####. Instalamos con composer elementos adicionales.
|
|
|
-# - ssh -o StrictHostKeyChecking=no root@$FD3IP docker run -v $(pwd):$(pwd) -v /var/run/docker.sock:/tmp/docker.sock dind composer install
|
|
|
-
|
|
|
-####. Crear los archivos necesarios para la instalción. Dentro del directorio actual se crea un nuevo directorio con el nombre de la empresa.
|
|
|
- - ssh -o StrictHostKeyChecking=no root@$FD3IP 'docker run -v /opt/flowdat:/opt/flowdat -v /var/run/docker.sock:/tmp/docker.sock dind make:install /opt/flowdat --client=fd3'
|
|
|
-
|
|
|
-####. Una vez dentro del docker entramos al directorio de instalación. Obtener los fuentes desde bitbucket
|
|
|
- - ssh -o StrictHostKeyChecking=no root@$FD3IP 'cd /opt/flowdat ; docker run -v /opt/flowdat:/opt/flowdat -v /var/run/docker.sock:/tmp/docker.sock dind get:source $(pwd)/git.ini --timeout=120'
|
|
|
- - echo "get:source DONE!"
|
|
|
-
|
|
|
-####. Renombramos los archivos innecesarios para el nginx.
|
|
|
- #- ssh -o StrictHostKeyChecking=no root@$FD3IP 'docker run -v /opt/flowdat:/opt/flowdat -v /var/run/docker.sock:/tmp/docker.sock dind fix:nginx /opt/flowdat'
|
|
|
-
|
|
|
-####. Entramos al docker para correr ansible y terminar la configuración. Una vez dentro del docker entramos al directorio de instalación. Corremos ansible para finalizar la configuración e instalación
|
|
|
- - scp -o StrictHostKeyChecking=no tools/installer.sh root@$FD3IP:/opt/flowdat
|
|
|
- - ssh -o StrictHostKeyChecking=no root@$FD3IP 'docker run -v /opt/flowdat:/opt/flowdat -v /var/run/docker.sock:/tmp/docker.sock -w /opt/flowdat --entrypoint=./installer.sh dind'
|
|
|
-
|
|
|
-### Compose UP
|
|
|
- - ssh -o StrictHostKeyChecking=no root@$FD3IP 'cd /opt/flowdat ; docker-compose up -d'
|
|
|
-
|
|
|
-### Los container se levantan por systemctl. Ejecutar fuera del dind
|
|
|
-# - ssh -o StrictHostKeyChecking=no root@$FD3IP ln -sf /opt/flowdat/docker-compose.service /etc/systemd/system/docker-compose.service
|
|
|
-# - ssh -o StrictHostKeyChecking=no root@$FD3IP systemctl enable docker-compose.service
|
|
|
-
|
|
|
- - ssh -o StrictHostKeyChecking=no root@$FD3IP 'cd /opt/flowdat ; docker-compose up -d'
|
|
|
- - ssh -o StrictHostKeyChecking=no root@$FD3IP 'cd /opt/flowdat ; docker-compose ps'
|
|
|
- - ssh -o StrictHostKeyChecking=no root@$FD3IP 'cd /opt/flowdat ; docker-compose rm -sf'
|
|
|
-
|
|
|
- - END=$(date +%s);
|
|
|
- - echo $((END-START)) | awk '{print int($1/60)":"int($1%60)}'
|
|
|
-# - ./doctl compute droplet delete -f $ID
|
|
|
- - exit 0
|
|
|
+##services:
|
|
|
+## selenium:
|
|
|
+## image: selenium/standalone-firefox-debug:3.1
|
|
|
+## docker:
|
|
|
+## image: docker:17.10-dind
|
|
|
+## privileged: true
|
|
|
+## command: [ "--storage-driver=vfs", "--tls=false" ]
|
|
|
+#
|
|
|
+#pipeline:
|
|
|
+# build:
|
|
|
+# image: python:2.7
|
|
|
+# commands:
|
|
|
+# - START=$(date +%s)
|
|
|
+# - echo $START
|
|
|
+# - export CLIENT=fd3
|
|
|
+# - apt update
|
|
|
+# - apt install netcat -yq
|
|
|
+# #- pip install --upgrade pip ansible==2.2.0 markupsafe ecdsa pyOpenSSL;
|
|
|
+# # - curl -OL https://github.com/digitalocean/doctl/releases/download/v1.8.0/doctl-1.8.0-linux-amd64.tar.gz
|
|
|
+# # - tar xf doctl-1.8.0-linux-amd64.tar.gz
|
|
|
+# #- ./doctl auth init -t 083d19437d43fc51983c8926e5060bdb5039032e7d2a933395b2513573c799d3
|
|
|
+# #- ID=$(./doctl compute droplet create test-installer-fd3 --wait --format "ID" --size s-6vcpu-16gb --image debian-9-x64 --region nyc3 --ssh-keys b4:2b:5f:4c:0c:be:6e:77:50:85:96:ca:70:55:db:aa --tag-names test,fd3-test,installer | tail -1)
|
|
|
+# #- echo $ID
|
|
|
+# #- ./doctl compute droplet get $ID --format "PublicIPv4" --no-header > dd.id
|
|
|
+# - FD3IP=165.227.7.103
|
|
|
+# #- timeout 30 sh -c 'until nc -z $0 $1; do sleep 1; done' $FD3IP 22
|
|
|
+##ssh con IP doctl
|
|
|
+# - chmod 0600 tools/keys/bitbucket.id_rsa
|
|
|
+# - eval $(ssh-agent) ; ssh-add tools/keys/bitbucket.id_rsa
|
|
|
+# - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP apt-get update
|
|
|
+#
|
|
|
+# - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP apt-get install curl git python python-pip -yq
|
|
|
+# - ssh root@$FD3IP 'ssh-keyscan -H -p 22 bitbucket.org >> ~/.ssh/known_hosts'
|
|
|
+# #- ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP curl https://bootstrap.pypa.io/get-pip.py | python
|
|
|
+# #- curl -fsSL get.docker.com | ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP
|
|
|
+# - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP 'pip install docker-compose'
|
|
|
+#
|
|
|
+## - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP 'curl -sSL https://agent.digitalocean.com/install.sh | sh'
|
|
|
+#
|
|
|
+#####. Crear un directorio para la instalación, puede ser en cualquier lugar del sistema. Tener en cuenta que en este directorio se descargará código fuente.
|
|
|
+# - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP 'docker stop $(docker ps -qa) || exit 0'
|
|
|
+#
|
|
|
+#####. Descargar el fuente de instalación.
|
|
|
+##- ssh -A -o StrictHostKeyChecking=no root@$FD3IP git clone git@bitbucket.org:ikflowdat/installer.git /opt/installer
|
|
|
+# - ssh -A -o StrictHostKeyChecking=no root@$FD3IP rm -rf /opt/flowdat
|
|
|
+# - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP rm -rf /opt/flowdat /opt/installer/
|
|
|
+# - ssh -A -o StrictHostKeyChecking=no root@$FD3IP mkdir -p /opt/installer
|
|
|
+# - ssh -i bitbucket.id_rsa -o StrictHostKeyChecking=no root@$FD3IP mkdir /opt/flowdat
|
|
|
+# - scp -r -o StrictHostKeyChecking=no tools root@$FD3IP:/opt/installer/
|
|
|
+#
|
|
|
+#####. Construir el docker que se utilizará durante la instalación.
|
|
|
+# - ssh -o StrictHostKeyChecking=no root@$FD3IP 'cd /opt/installer/tools; docker build --build-arg DIR_INSTALL=$(pwd) -t dind .'
|
|
|
+#
|
|
|
+#####. Instalamos con composer elementos adicionales.
|
|
|
+## - ssh -o StrictHostKeyChecking=no root@$FD3IP docker run -v $(pwd):$(pwd) -v /var/run/docker.sock:/tmp/docker.sock dind composer install
|
|
|
+#
|
|
|
+#####. Crear los archivos necesarios para la instalción. Dentro del directorio actual se crea un nuevo directorio con el nombre de la empresa.
|
|
|
+# - ssh -o StrictHostKeyChecking=no root@$FD3IP 'docker run -v /opt/flowdat:/opt/flowdat -v /var/run/docker.sock:/tmp/docker.sock dind make:install /opt/flowdat --client=fd3'
|
|
|
+#
|
|
|
+#####. Una vez dentro del docker entramos al directorio de instalación. Obtener los fuentes desde bitbucket
|
|
|
+# - ssh -o StrictHostKeyChecking=no root@$FD3IP 'cd /opt/flowdat ; docker run -v /opt/flowdat:/opt/flowdat -v /var/run/docker.sock:/tmp/docker.sock dind get:source $(pwd)/git.ini --timeout=120'
|
|
|
+# - echo "get:source DONE!"
|
|
|
+#
|
|
|
+#####. Renombramos los archivos innecesarios para el nginx.
|
|
|
+# #- ssh -o StrictHostKeyChecking=no root@$FD3IP 'docker run -v /opt/flowdat:/opt/flowdat -v /var/run/docker.sock:/tmp/docker.sock dind fix:nginx /opt/flowdat'
|
|
|
+#
|
|
|
+#####. Entramos al docker para correr ansible y terminar la configuración. Una vez dentro del docker entramos al directorio de instalación. Corremos ansible para finalizar la configuración e instalación
|
|
|
+# - scp -o StrictHostKeyChecking=no tools/installer.sh root@$FD3IP:/opt/flowdat
|
|
|
+# - ssh -o StrictHostKeyChecking=no root@$FD3IP 'docker run -v /opt/flowdat:/opt/flowdat -v /var/run/docker.sock:/tmp/docker.sock -w /opt/flowdat --entrypoint=./installer.sh dind'
|
|
|
+#
|
|
|
+#### Compose UP
|
|
|
+# - ssh -o StrictHostKeyChecking=no root@$FD3IP 'cd /opt/flowdat ; docker-compose up -d'
|
|
|
+#
|
|
|
+#### Los container se levantan por systemctl. Ejecutar fuera del dind
|
|
|
+## - ssh -o StrictHostKeyChecking=no root@$FD3IP ln -sf /opt/flowdat/docker-compose.service /etc/systemd/system/docker-compose.service
|
|
|
+## - ssh -o StrictHostKeyChecking=no root@$FD3IP systemctl enable docker-compose.service
|
|
|
+#
|
|
|
+# - ssh -o StrictHostKeyChecking=no root@$FD3IP 'cd /opt/flowdat ; docker-compose up -d'
|
|
|
+# - ssh -o StrictHostKeyChecking=no root@$FD3IP 'cd /opt/flowdat ; docker-compose ps'
|
|
|
+# - ssh -o StrictHostKeyChecking=no root@$FD3IP 'cd /opt/flowdat ; docker-compose rm -sf'
|
|
|
+#
|
|
|
+## - END=$(date +%s);
|
|
|
+# - echo $((END-START)) | awk '{print int($1/60)":"int($1%60)}'
|
|
|
+## - ./doctl compute droplet delete -f $ID
|
|
|
+# - exit 0
|
|
|
|