Hello from MCP server

List Files | Just Commands | Repo | Logs

← back |
---
- name: Deploy MCP Server
  hosts: all
  become: yes
  vars:
    deploy_user: deploy
    dev_user: dev
    app_name: mcp
    app_dir: /srv/apps/mcp
    dev_repo_path: /home/dev/pricebook-platform

  tasks:
    - name: Check if dev repo exists
      stat:
        path: "{{ dev_repo_path }}"
      register: dev_repo

    - name: Warn if dev repo not found
      debug:
        msg: "WARNING: Dev repo not found at {{ dev_repo_path }}. Run setup-dev-env first. MCP service will not start until repo exists."
      when: not dev_repo.stat.exists

    - name: Add project root to git safe directories for dev user
      command: git config --global --add safe.directory {{ dev_repo_path }}
      become_user: "{{ dev_user }}"
      when: dev_repo.stat.exists

    - name: Create app directory
      file:
        path: "{{ app_dir }}"
        state: directory
        owner: "{{ dev_user }}"
        group: "{{ dev_user }}"
        mode: '0755'

    - name: Create log directory
      file:
        path: /var/log/{{ app_name }}
        state: directory
        owner: "{{ dev_user }}"
        group: "{{ dev_user }}"
        mode: '0755'

    - name: Upload MCP binary
      copy:
        src: artifacts/mcp
        dest: "{{ app_dir }}/mcp"
        owner: "{{ dev_user }}"
        group: "{{ dev_user }}"
        mode: '0755'
      notify: Restart MCP

    - name: Deploy systemd service
      template:
        src: mcp.service.j2
        dest: /etc/systemd/system/{{ app_name }}.service
      notify: Restart MCP

    - name: Enable MCP service
      systemd:
        daemon_reload: yes
        name: "{{ app_name }}"
        enabled: yes

    - name: Start MCP service (only if repo exists)
      systemd:
        name: "{{ app_name }}"
        state: started
      when: dev_repo.stat.exists

  handlers:
    - name: Restart MCP
      systemd:
        daemon_reload: yes
        name: "{{ app_name }}"
        state: restarted
      when: dev_repo.stat.exists