From b73ac71aa77ea844fbc4f1e3e667ff08f073268c Mon Sep 17 00:00:00 2001 From: Trial97 Date: Thu, 13 Feb 2020 13:45:52 +0200 Subject: [PATCH] Updated ansible script to automatically detect version --- data/ansible/deb_packages/main.yaml | 42 ++++++++++++++++++++++------- 1 file changed, 33 insertions(+), 9 deletions(-) diff --git a/data/ansible/deb_packages/main.yaml b/data/ansible/deb_packages/main.yaml index eae6ac059..329a69436 100644 --- a/data/ansible/deb_packages/main.yaml +++ b/data/ansible/deb_packages/main.yaml @@ -43,10 +43,12 @@ golang_redis_filename: 'go{{ golang_version }}.linux-amd64.tar.gz' ############################################################### - # CGRateS location + # CGRateS vars cgrates_dir: "{{ golang_gopath }}/src/github.com/cgrates/cgrates" + cgrates_version: "master" + cgrates_distribution: "nightly" ############################################################### - ##################### GPG Vars ############################# + ######################## GPG Vars ############################# ############################################################### gpg_home: "/root" gpg_realname: "CGRateS" @@ -70,6 +72,9 @@ remote_user: '{{ gouser }}' tasks: + - name: set cgrates cgrates_version + set_fact: + cgrates_version: "{{ cgrates_version }}" ########################################################################################################################### ########################################################################################################################### # install dependencies @@ -129,7 +134,7 @@ dest: '{{ cgrates_dir }}' update: yes force: yes - version: master + version: "{{ cgrates_version }}" become: yes become_user: "{{ gouser }}" @@ -146,6 +151,12 @@ src: "{{ cgrates_dir }}/data" dest: "/usr/share/cgrates" state: link + + - name: get git tag + shell: "git tag -l --points-at HEAD" + args: + chdir: '{{ cgrates_dir }}' + register: gitTagVar ########################################################################################################################### ########################################################################################################################### # Generate package @@ -179,14 +190,21 @@ shell : "sudo ls /var/packages/debian/incoming/ | grep '.changes'" register: changesFileNames + # get reprepro version + - name: set cgrates distribution + set_fact: + cgrates_distribution: "{{ cgrates_version }}" + when: cgrates_version != "master" + # Include the package with reprepro - name : Include the package with reprepro become: yes - command: sudo reprepro -A amd64 -Vb . include nightly /var/packages/debian/incoming/{{ item }} + command: sudo reprepro -A amd64 -Vb . include {{ cgrates_distribution }} /var/packages/debian/incoming/{{ item }} ignore_errors: true args : chdir: /var/packages/debian with_items: '{{ changesFileNames.stdout_lines }}' + when : cgrates_version == "master" or gitTagVar.stdout_lines|length > 0 # Move the file to PKG server - name: Copy the file to PKG server @@ -206,24 +224,30 @@ - hosts: pkg remote_user: '{{ gouser }}' tasks: + - name: set cgrates cgrates_version + set_fact: + cgrates_version: "{{ hostvars['apt']['cgrates_version'] }}" + - name: Creates directory become: yes file: - path: /var/packages/debian/master/ + path: /var/packages/debian/{{ cgrates_version }}/ state: directory - name: Remove symlink from current deb package become: yes file: - path: /var/packages/debian/master/cgrates_current_amd64.deb + path: /var/packages/debian/{{ cgrates_version }}/cgrates_current_amd64.deb state: absent + when : cgrates_version == "master" or hostvars['apt']['gitTagVar'].stdout_lines|length > 0 - name: Move the new package to /var/packages/debian become: yes - shell: "sudo mv /tmp/{{ item}} /var/packages/debian/master/" + shell: "sudo mv /tmp/{{ item}} /var/packages/debian/{{ cgrates_version }}/" with_items: "{{ hostvars['apt']['debFileName']['stdout_lines'] }}" - name: Create the new symlink cgrates_current_amd64.deb become: yes - shell: "sudo ln -s /var/packages/debian/master/{{ item }} /var/packages/debian/master/cgrates_current_amd64.deb" - with_items: "{{ hostvars['apt']['debFileName']['stdout_lines'] }}" \ No newline at end of file + shell: "sudo ln -s /var/packages/debian/{{ cgrates_version }}/{{ item }} /var/packages/debian/{{ cgrates_version }}/cgrates_current_amd64.deb" + with_items: "{{ hostvars['apt']['debFileName']['stdout_lines'] }}" + when : cgrates_version == "master" or hostvars['apt']['gitTagVar'].stdout_lines|length > 0