--- - name: Prepare base folder file: path: "{{ minio_base_dir }}" state: directory owner: "{{ minio_user }}" group: "{{ minio_user }}" mode: 0750 become: True become_user: root - block: - name: Prepare folder structure file: path: "{{ item }}" state: directory loop: "{{ minio_data_dirs }}" - name: Download Minio binary get_url: url: "{{ __minio_server_source }}{{ '/archive/minio.RELEASE.' + minio_server_version if minio_server_version != 'latest' else '/minio' }}" dest: "{{ minio_base_dir }}/minio" mode: 0750 notify: __minio_restart become: True become_user: "{{ minio_user }}" - block: - name: Download Minio client get_url: url: "{{ __minio_client_source }}{{ '/' + minio_client_version if minio_client_version != 'latest' else '/mc' }}" dest: "/usr/local/bin/mc" mode: 0755 - name: Create cronjobs cron: name: "{{ item.name }}" minute: "{{ item.minute | default('*') }}" hour: "{{ item.hour | default('*') }}" day: "{{ item.day | default('*') }}" month: "{{ item.month | default('*') }}" weekday: "{{ item.weekday | default('*') }}" job: "{{ item.job }}" user: "{{ item.user | default(omit) }}" cron_file: "{{ item.cron_file | default(omit) }}" state: "{{ item.state | default('present') }}" loop: "{{ minio_cronjobs }}" loop_control: label: "{{ item.name }}" - name: Copy sysconfig file template: src: "etc/sysconfig/minio.j2" dest: "{{ __minio_sysconfig }}" mode: 0600 notify: __minio_restart - name: Copy systemd unit file template: src: "etc/systemd/system/minio.service.j2" dest: "/etc/systemd/system/minio.service" notify: __minio_restart - name: Ensure minio service is up and running systemd: name: minio daemon_reload: yes enabled: yes state: started become: True become_user: root