diff --git a/.gitignore b/.gitignore index 5e12e39..b2079b0 100644 --- a/.gitignore +++ b/.gitignore @@ -139,3 +139,5 @@ temp/ # No need to send lock file poetry.lock + +deploy/hosts diff --git a/Makefile b/Makefile index 458def0..f20970c 100644 --- a/Makefile +++ b/Makefile @@ -13,17 +13,15 @@ build: run: - @docker-compose up --force-recreate -d - + @docker-compose -f docker-compose.yml -f docker-compose.dev.yml up --force-recreate -d restart: - @docker-compose restart -t 0 + @docker-compose -f docker-compose.yml -f docker-compose.dev.yml restart -t 0 stop: - @docker-compose down -t 0 + @docker-compose -f docker-compose.yml -f docker-compose.dev.yml down -t 0 logs: - @docker-compose logs -f - + @docker-compose -f docker-compose.yml -f docker-compose.dev.yml logs -f diff --git a/deploy/ansible.cfg b/deploy/ansible.cfg new file mode 100644 index 0000000..f83f92e --- /dev/null +++ b/deploy/ansible.cfg @@ -0,0 +1,8 @@ +# See: https://docs.ansible.com/ansible/intro_configuration.html +[privilege_escalation] +become = True +# See: https://docs.ansible.com/ansible/latest/plugins/callback.html#callback-plugins +[defaults] +stdout_callback = yaml +retry_files_enabled = False +nocows = 1 diff --git a/deploy/deploy.yaml b/deploy/deploy.yaml new file mode 100644 index 0000000..45d0246 --- /dev/null +++ b/deploy/deploy.yaml @@ -0,0 +1,81 @@ +--- +- hosts: do + remote_user: root + vars: + ansible_python_interpreter: /usr/bin/python3 + project_root: /project + # wtd_srv_docker_compose_package_state: latest + # ## Service Management + # wtd_srv_docker_service: "docker" + # # State can be started|stopped + # wtd_srv_docker_service_state: "started" + # wtd_srv_docker_service_enabled: true + + # roles: + # - while_true_do.srv_docker + tasks: + + - name: Disable SELinux + selinux: + state: disabled + + - name: Ensure base requirements are installed + package: + name: + - git + - postgresql + - nginx + - dnf-plugins-core + state: present + retries: 5 + register: result + until: result is succeeded + + # TODO: trocar pelo modulo correto + - name: Add docker-ce repo + command: dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo + + - name: Install docker + package: + name: + - docker-ce + - docker-ce-cli + - containerd.io + + - name: Install Pip requirements + pip: + name: + - docker-compose + + - name: Start service docker, if not started + service: + name: docker + state: started + + - name: Git Repo + git: + repo: https://github.com/flask-extensions/flaskextensions.com + dest: "{{ project_root }}" + + - name: Set variables on .variables.env (ansible vault) + copy: + src: ../.variables.env + dest: "{{ project_root }}/.variables.env" + + - name: Tear down existing services + docker_compose: + project_src: "{{ project_root }}" + state: absent + + - name: Create and start services + docker_compose: + project_src: "{{ project_root }}" + build: yes + register: output + + - debug: + var: output + + - name: Setup NGINX + debug: + msg: "setup nginx" diff --git a/deploy/hosts.example b/deploy/hosts.example new file mode 100644 index 0000000..c39ea87 --- /dev/null +++ b/deploy/hosts.example @@ -0,0 +1,6 @@ +[do] +0.0.0.0 + +[do:vars] +ansible_ssh_user=root +ansible_ssh_private_key_file=~/.ssh/do_private_key diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml new file mode 100644 index 0000000..934baa1 --- /dev/null +++ b/docker-compose.dev.yml @@ -0,0 +1,18 @@ +--- +version: "3" + +services: + + fexui: + build: + context: . + dockerfile: ./docker/ui/Dockerfile + restart: always + environment: + - PORT=5500 + depends_on: + - "fexapi" + volumes: + - ./fexui:/fexui + ports: + - "5500:5500" diff --git a/docker-compose.yml b/docker-compose.yml index 3bd60c2..d185f07 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -32,20 +32,6 @@ services: volumes: - ./fexservice:/fexservice - fexui: - build: - context: . - dockerfile: ./docker/ui/Dockerfile - restart: always - environment: - - PORT=5500 - depends_on: - - "fexapi" - volumes: - - ./fexui:/fexui - ports: - - "5500:5500" - db: image: postgres:12.1 restart: always diff --git a/fexui/js/main.js b/fexui/js/main.js index bba2627..1eaae69 100644 --- a/fexui/js/main.js +++ b/fexui/js/main.js @@ -1,6 +1,5 @@ const instance = axios.create({ baseURL: `//${window.location.hostname}:8000/`, - // baseURL: "http://161.35.57.225:8000/", }); new Vue({