wsjz_01 发表于 2018-1-3 08:39:20

基于docker的gitlab+gitlabrunner+ansible自动部署

#filename:deploy_entrypoint.yml  

  
- hosts: all
  tasks:
  - name: Creating the directory
  file: path=/var/projects/{{ project_name }}-{{ env }}/ state=directory
  

  - name: Clean src
  file:
  state: absent
  path: "/var/projects/{{ project_name }}-{{ env }}/src"
  - name: Clean app
  file:
  state: absent
  path: "/var/projects/{{ project_name }}-{{ env }}/app"
  

  - name: copy
  unarchive:
  src: "{{ src }}/package.tar"
  dest: /var/projects/{{ project_name }}-{{ env }}/
  

  
#- name: run if exist entrypoint.sh
  
#    shell: /var/projects/{{ project_name }}/entrypoint.sh
  
#    when: $(-s /var/projects/{{ project_name }}/entrypoint.sh)
  

  - name: stop project
  shell: docker-compose -f docker-compose.yml -f docker-compose.{{ env }}.yml stop
  args:
  chdir: /var/projects/{{ project_name }}-{{ env }}/
  

  - name: start project
  shell: docker-compose -f docker-compose.yml -f docker-compose.{{ env }}.yml up --build -d
  args:
  chdir: /var/projects/{{ project_name }}-{{ env }}/
  

  - name: run entrypoint.sh
  shell: ./entrypoint.sh
  args:
  chdir: /var/projects/{{ project_name }}-{{ env }}/
  

  

  
#filename:deploy.yml
  

  
- hosts: all
  tasks:
  - name: Creating the directory
  file: path=/var/projects/{{ project_name }}-{{ env }}/ state=directory
  

  - name: copy
  unarchive:
  src: "{{ src }}/package.tar"
  dest: /var/projects/{{ project_name }}-{{ env }}/
  

  
#- name: run if exist entrypoint.sh
  
#    shell: /var/projects/{{ project_name }}/entrypoint.sh
  
#    when: $(-s /var/projects/{{ project_name }}/entrypoint.sh)
  

  - name: stop project
  shell: docker-compose -f docker-compose.yml -f docker-compose.{{ env }}.yml stop
  args:
  chdir: /var/projects/{{ project_name }}-{{ env }}/
  

  - name: start project
  shell: docker-compose -f docker-compose.yml -f docker-compose.{{ env }}.yml up --build -d
  args:
  chdir: /var/projects/{{ project_name }}-{{ env }}/
  
页: [1]
查看完整版本: 基于docker的gitlab+gitlabrunner+ansible自动部署