Files
cms/roles/cms_preparation/tasks/main.yml
ytshih bf6ac11888
All checks were successful
Ansible Playbook lint / ansible-lint (push) Successful in 35s
Initial commit
2024-12-19 10:25:37 +08:00

105 lines
2.3 KiB
YAML

---
- name: Clone repository
ansible.builtin.git:
repo: 'https://github.com/cms-dev/cms.git'
dest: /srv/cms
version: b77c87b4d60fbe7df60dc5e03d2be632a25992fe
single_branch: true
track_submodules: true
update: false
- name: Run prerequisites
ansible.builtin.command: |
python prerequisites.py -y --as-root install
args:
chdir: /srv/cms
register: ret
changed_when: ret.rc != 0
- name: Modify cmsuser
ansible.builtin.user:
name: cmsuser
shell: /usr/bin/bash
home: /srv/cms
groups: wheel
append: true
- name: Allow wheel group to sudo
community.general.sudoers:
name: wheel
group: wheel
commands: ALL
runas: ALL
nopassword: true
- name: Chown cms directory
ansible.builtin.file:
path: /srv/cms/
state: directory
owner: cmsuser
group: cmsuser
recurse: true
- name: Install pyenv
ansible.builtin.command: |
pyenv install 3.8.20 --skip-existing
args:
chdir: /srv/cms
become: true
become_user: cmsuser
register: ret
changed_when: ret.rc != 0
- name: Setup pyenv
ansible.builtin.command: |
pyenv local 3.8.20
args:
chdir: /srv/cms
become: true
become_user: cmsuser
register: ret
changed_when: ret.rc != 0
- name: Setup .profile
ansible.builtin.copy:
src: profile
dest: /srv/cms/.profile
mode: '0644'
owner: cmsuser
group: cmsuser
- name: Setup .bashrc
ansible.builtin.copy:
src: bashrc
dest: /srv/cms/.bashrc
mode: '0644'
owner: cmsuser
group: cmsuser
- name: Setup .bash_profile
ansible.builtin.copy:
src: bash_profile
dest: /srv/cms/.bash_profile
mode: '0644'
owner: cmsuser
group: cmsuser
- name: Check python version
ansible.builtin.shell: |
sudo -iu cmsuser <<EOF
python --version
EOF
register: ret
changed_when: ret.rc != 0
failed_when: ret.stdout != 'Python 3.8.20'
- name: Setup python venv
ansible.builtin.shell: |
sudo -iu cmsuser <<EOF
python -m venv .
EOF
register: ret
changed_when: ret.rc != 0
- name: Install requirements
ansible.builtin.pip:
virtualenv: /srv/cms
requirements: /srv/cms/requirements.txt
become: true
become_user: cmsuser
- name: Install cms
ansible.builtin.shell: |
sudo -iu cmsuser <<EOF
python setup.py install
EOF
register: ret
changed_when: ret.rc != 0