Ansible roles
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

30 lines
1.3 KiB

---
- name: Check if admin user exists
command: "mysql --host={{ gitea_db_server }} --user={{ gitea_db_user }} --password='{{ gitea_db_pass }}' {{ gitea_db_name }} -ss -e \"select count(*) from user where lower_name='gitadmin'\""
register: gitea_admin
changed_when: False
retries: 10 # first time gitea starts, it'll take some time to create the tables
delay: 10
until: gitea_admin.rc == 0
tags: gitea
# The user table is created before the email_address. So on first run, we might have an error when creating the
# admin account. Here, we just ensure the email_address table exists before we can continue
- name: Check if the email_address table exists
command: "mysql --host={{ gitea_db_server }} --user={{ gitea_db_user }} --password='{{ gitea_db_pass }}' {{ gitea_db_name }} -ss -e \"select count(*) from email_address\""
register: gitea_email_table
changed_when: False
retries: 10
delay: 10
until: gitea_email_table.rc == 0
when: gitea_admin.stdout != "1"
tags: gitea
- name: Create the admin account
command: "{{ gitea_root_dir }}/bin/gitea admin create-user --name gitadmin --admin --password admin --email admin@example.net --config {{ gitea_root_dir }}/etc/app.ini"
args:
chdir: "{{ gitea_root_dir }}"
become_user: gitea
when: gitea_admin.stdout != "1"
tags: gitea