--- # tasks file for roles/gemini_cli_user - name: Ensure Node.js and npm are installed package: name: - nodejs - npm state: present become: yes - name: Create gemini user user: name: gemini state: present create_home: yes become: yes - name: Add SSH authorized key for gemini user authorized_key: user: gemini state: present key: "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAII823CLHAgx4nTaTr0Wys65YWN9pVnDfbWvsZcFwCnWl" become: yes - name: Install @google/gemini-cli for gemini user command: su - gemini -c "npm install @google/gemini-cli" args: creates: /home/gemini/node_modules/.bin/gemini-cli become: yes - name: Define gemini-cli path set_fact: gemini_cli_bin: "/home/gemini/node_modules/.bin/gemini" - name: Ensure gemini-cli binary exists stat: path: "{{ gemini_cli_bin }}" register: gemini_cli_stat - name: Ensure gemini-cli is in /etc/shells lineinfile: path: /etc/shells line: "{{ gemini_cli_bin }}" state: present become: yes when: gemini_cli_stat.stat.exists - name: Change gemini user shell to gemini-cli user: name: gemini shell: "{{ gemini_cli_bin }}" become: yes when: gemini_cli_stat.stat.exists