--- # tasks file for flexlm # package {{{ - name: INSTALL FlexLM packages package: name: '{{ item }}' state: '{{ flexlm__packages_state }}' install_recommends: False with_flattened: - '{{ flexlm__dependent_packages }}' when: flexlm__packages_manage # }}} # user - name: Create flexlm user user: name: '{{ flexlm__user_name }}' createhome: False system: True # bin {{{ - name: Add lmgrd bin copy: src: '{{ flexlm__lmgrd_source + "." + flexlm__lmgrd_version }}' dest: '{{ flexlm__lmgrd_path + "." + flexlm__lmgrd_version }}' owner: '{{ flexlm__user_name }}' group: '{{ flexlm__user_name }}' mode: 0755 - name: Link to the last version of lmgrd file: src: '{{ flexlm__lmgrd_path + "." + flexlm__lmgrd_version }}' dest: '{{ flexlm__lmgrd_path }}' owner: '{{ flexlm__user_name }}' group: '{{ flexlm__user_name }}' state: link - name: Add lmutil bin copy: src: '{{ flexlm__lmutil_source }}' dest: '{{ flexlm__lmutil_path }}' owner: '{{ flexlm__user_name }}' group: '{{ flexlm__user_name }}' mode: 0755 # }}} # VENDOR and licence {{{ - name: Add VENDOR DAEMON copy: src: '{{ item.bin_src }}' dest: '{{ item.bin_path | d("/opt/" + item.name + "/bin") }}' owner: '{{ flexlm__user_name }}' group: '{{ flexlm__user_name }}' mode: 0754 with_flattened: - '{{ flexlm__licences }}' when: (item.bin_src|d()) notify: ['restart flexlm services'] - name: Add licence file copy: src: '{{ (item.lic_src | dirname) + "/" }}' # Need a final "/" dest: '{{ (item.lic_path | d("/opt/" + item.name + "/etc/licence.lic")) | dirname }}' owner: '{{ flexlm__user_name }}' group: '{{ flexlm__user_name }}' mode: 0640 with_flattened: - '{{ flexlm__licences }}' when: (item.lic_src|d()) notify: ['restart flexlm services'] # }}} # service {{{ - name: Add systemd unit template: src: '{{ flexlm__service_unit_content }}' dest: '{{ "/etc/systemd/system/flexlm-" + item.name + ".service" }}' owner: 'root' group: 'root' mode: '0644' register: flexlm__register_systemd_service notify: ['restart flexlm services'] with_flattened: - '{{ flexlm__licences }}' when: ( flexlm__service_manage and ( item.service | d(True) )) - name: Reload systemd daemons command: systemctl daemon-reload notify: ['restart flexlm services'] when: (flexlm__service_manage and flexlm__register_systemd_service|changed) - name: SERVICE manage services service: name: '{{ "flexlm-" + item.name }}' state: started enabled: '{{ flexlm__service_enabled }}' with_flattened: - '{{ flexlm__licences }}' when: ( flexlm__service_manage and ( item.service | d(True) )) # }}}