feat: add FreeCAD and Rommie MCP server configurations and deployment playbooks
This commit is contained in:
82
ansible/rommie/deploy.yml
Normal file
82
ansible/rommie/deploy.yml
Normal file
@@ -0,0 +1,82 @@
|
||||
---
|
||||
- name: Deploy Agent S (Rommie dependency)
|
||||
import_playbook: ../agent_s/deploy.yml
|
||||
|
||||
- name: Deploy Rommie MCP Server
|
||||
hosts: caliban
|
||||
become: yes
|
||||
vars:
|
||||
rommie_venv: "/home/{{principal_user}}/env/rommie"
|
||||
rommie_repo: "/home/{{principal_user}}/rommie"
|
||||
|
||||
tasks:
|
||||
- name: Create Rommie application directory
|
||||
become_user: "{{principal_user}}"
|
||||
file:
|
||||
path: "{{rommie_repo}}"
|
||||
state: directory
|
||||
mode: '0755'
|
||||
|
||||
- name: Transfer and extract Rommie
|
||||
become_user: "{{principal_user}}"
|
||||
ansible.builtin.unarchive:
|
||||
src: "~/rel/rommie_{{rommie_rel}}.tar"
|
||||
dest: "{{rommie_repo}}"
|
||||
|
||||
- name: Create Rommie virtual environment
|
||||
become_user: "{{principal_user}}"
|
||||
command: python3 -m venv --system-site-packages {{rommie_venv}}
|
||||
args:
|
||||
creates: "{{rommie_venv}}/bin/activate"
|
||||
|
||||
- name: Install Rommie into virtual environment
|
||||
become_user: "{{principal_user}}"
|
||||
pip:
|
||||
name: "{{rommie_repo}}"
|
||||
extra_args: "-e"
|
||||
virtualenv: "{{rommie_venv}}"
|
||||
state: present
|
||||
|
||||
- name: Deploy Rommie environment file
|
||||
become_user: "{{principal_user}}"
|
||||
template:
|
||||
src: .env.j2
|
||||
dest: "{{rommie_repo}}/.env"
|
||||
mode: '0600'
|
||||
|
||||
- name: Deploy Rommie systemd service
|
||||
template:
|
||||
src: rommie.service.j2
|
||||
dest: /etc/systemd/system/rommie.service
|
||||
mode: '0644'
|
||||
notify:
|
||||
- Reload systemd
|
||||
- Restart rommie
|
||||
|
||||
- name: Enable and start Rommie service
|
||||
systemd:
|
||||
name: rommie
|
||||
enabled: yes
|
||||
state: started
|
||||
daemon_reload: yes
|
||||
|
||||
- name: Verify Rommie MCP endpoint is reachable
|
||||
ansible.builtin.uri:
|
||||
url: "http://localhost:{{rommie_port}}/mcp"
|
||||
method: GET
|
||||
status_code: [200, 405]
|
||||
timeout: 15
|
||||
register: rommie_health
|
||||
retries: 5
|
||||
delay: 3
|
||||
until: rommie_health.status in [200, 405]
|
||||
|
||||
handlers:
|
||||
- name: Reload systemd
|
||||
systemd:
|
||||
daemon_reload: yes
|
||||
|
||||
- name: Restart rommie
|
||||
systemd:
|
||||
name: rommie
|
||||
state: restarted
|
||||
Reference in New Issue
Block a user