From 71188a33696b559e7837450c6e901917b6027b59 Mon Sep 17 00:00:00 2001 From: mgite Date: Tue, 29 Oct 2024 16:46:05 +0400 Subject: [PATCH 1/9] Add workflow --- .gitea/workflows/workflows.yaml | 52 +++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 .gitea/workflows/workflows.yaml diff --git a/.gitea/workflows/workflows.yaml b/.gitea/workflows/workflows.yaml new file mode 100644 index 0000000..bf07026 --- /dev/null +++ b/.gitea/workflows/workflows.yaml @@ -0,0 +1,52 @@ +name: Update odoo 18 +run-name: ${{ gitea.actor }} is testing out Gitea Actions +on: + push: + branches: + - dev + # paths: + # - '**/docker-compose.yml' + # - '**/.env' + +jobs: + update: + runs-on: ubuntu-22.04 + steps: + - name: Setup correct time in build container + run: ln -sf /usr/share/zoneinfo/Asia/Tbilisi /etc/localtime + + - name: Checkout repository + uses: actions/checkout@v4 + with: + github-server-url: http://10.0.0.8:3000 + repository: gitea/bross_hms + token: ${{ secrets.PAT }} + path: . + fetch-depth: 0 + + - name: Deploy to main environment + if: gitea.ref == 'refs/heads/dev' + run: | + ### Get current commit + # commit_hash=$(git rev-parse --short HEAD) + + ### Update local repo + # cd /opt/odoo/extra-addons + # git pull + + ### Get modules list to update + modules_to_update=$(git diff --name-only ${{ gitea.event.before }}..${{ gitea.event.after }} | awk -F/ '{print $1}' | uniq | xargs -I {} sh -c 'find {} -type f -name "__manifest__.py" | grep -q "__manifest__.py" && echo {}' 2>/dev/null | sed -z 's/\n/,/g; s/,$/\n/') + echo $modules_to_update + ### Generate update string + # if [ -z "${modules_to_update}" ]; then + # echo "No module to update" + # # args="-d fms" + # else + # echo "Modules to update set" + # args="-d fms_prod -u ${modules_to_update}" + # docker compose -f /opt/odoo/docker-compose.yml down + # export ADDONS="--addons-path=/opt/odoo/addons/,/mnt/extra-addons/" && export ARGS=${args} && docker compose -f /opt/odoo/docker-compose.yml up -d + # fi + + - name: Install sshpass + run: apt update && apt install -y sshpass From 3e77f7282a029c64f114dc719607df664b734319 Mon Sep 17 00:00:00 2001 From: mgite Date: Tue, 29 Oct 2024 16:49:30 +0400 Subject: [PATCH 2/9] Test --- .gitea/workflows/workflows.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitea/workflows/workflows.yaml b/.gitea/workflows/workflows.yaml index bf07026..9a2fb53 100644 --- a/.gitea/workflows/workflows.yaml +++ b/.gitea/workflows/workflows.yaml @@ -24,6 +24,10 @@ jobs: path: . fetch-depth: 0 + - run: | + modules_to_update=$(git diff --name-only ${{ gitea.event.before }}..${{ gitea.event.after }} | awk -F/ '{print $1}' | uniq | xargs -I {} sh -c 'find {} -type f -name "__manifest__.py" | grep -q "__manifest__.py" && echo {}' 2>/dev/null | sed -z 's/\n/,/g; s/,$/\n/') + echo $modules_to_update + - name: Deploy to main environment if: gitea.ref == 'refs/heads/dev' run: | From f281ce399aa7053549534b8147ce9ddd37cfab1c Mon Sep 17 00:00:00 2001 From: mgite Date: Tue, 29 Oct 2024 16:57:05 +0400 Subject: [PATCH 3/9] Test --- .gitea/workflows/workflows.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitea/workflows/workflows.yaml b/.gitea/workflows/workflows.yaml index 9a2fb53..7f25e28 100644 --- a/.gitea/workflows/workflows.yaml +++ b/.gitea/workflows/workflows.yaml @@ -12,6 +12,9 @@ jobs: update: runs-on: ubuntu-22.04 steps: + - run: | + echo ${{ gitea.event.before }} + - name: Setup correct time in build container run: ln -sf /usr/share/zoneinfo/Asia/Tbilisi /etc/localtime From 34122cf3177789f6de7003b6f20d32bc327ba918 Mon Sep 17 00:00:00 2001 From: mgite Date: Tue, 29 Oct 2024 16:59:45 +0400 Subject: [PATCH 4/9] Test --- .gitea/workflows/workflows.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitea/workflows/workflows.yaml b/.gitea/workflows/workflows.yaml index 7f25e28..c426a4f 100644 --- a/.gitea/workflows/workflows.yaml +++ b/.gitea/workflows/workflows.yaml @@ -14,6 +14,8 @@ jobs: steps: - run: | echo ${{ gitea.event.before }} + echo ${{ gitea.event.after }} + git status - name: Setup correct time in build container run: ln -sf /usr/share/zoneinfo/Asia/Tbilisi /etc/localtime From 4952a1b76b48e76907cae8cc3dead81aa8d900f0 Mon Sep 17 00:00:00 2001 From: mgite Date: Tue, 29 Oct 2024 17:01:52 +0400 Subject: [PATCH 5/9] Test --- .gitea/workflows/workflows.yaml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.gitea/workflows/workflows.yaml b/.gitea/workflows/workflows.yaml index c426a4f..68277a6 100644 --- a/.gitea/workflows/workflows.yaml +++ b/.gitea/workflows/workflows.yaml @@ -13,9 +13,7 @@ jobs: runs-on: ubuntu-22.04 steps: - run: | - echo ${{ gitea.event.before }} - echo ${{ gitea.event.after }} - git status + modules_to_update=$(git diff --name-only ${{ gitea.event.before }}..${{ gitea.event.after }} | awk -F/ '{print $1}' | - name: Setup correct time in build container run: ln -sf /usr/share/zoneinfo/Asia/Tbilisi /etc/localtime From 140bf1aaad306cda8d7a0d1ec9063352c28ed28b Mon Sep 17 00:00:00 2001 From: mgite Date: Tue, 29 Oct 2024 17:02:34 +0400 Subject: [PATCH 6/9] Test --- .gitea/workflows/workflows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/workflows.yaml b/.gitea/workflows/workflows.yaml index 68277a6..3e12c44 100644 --- a/.gitea/workflows/workflows.yaml +++ b/.gitea/workflows/workflows.yaml @@ -13,7 +13,7 @@ jobs: runs-on: ubuntu-22.04 steps: - run: | - modules_to_update=$(git diff --name-only ${{ gitea.event.before }}..${{ gitea.event.after }} | awk -F/ '{print $1}' | + modules_to_update=$(git diff --name-only ${{ gitea.event.before }}..${{ gitea.event.after }} | awk -F/ '{print $1}') - name: Setup correct time in build container run: ln -sf /usr/share/zoneinfo/Asia/Tbilisi /etc/localtime From 3f9f40304bfc4f119a451d133ff01a2ca60842a1 Mon Sep 17 00:00:00 2001 From: mgite Date: Tue, 29 Oct 2024 17:05:04 +0400 Subject: [PATCH 7/9] Test --- .gitea/workflows/workflows.yaml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/.gitea/workflows/workflows.yaml b/.gitea/workflows/workflows.yaml index 3e12c44..729a850 100644 --- a/.gitea/workflows/workflows.yaml +++ b/.gitea/workflows/workflows.yaml @@ -12,9 +12,6 @@ jobs: update: runs-on: ubuntu-22.04 steps: - - run: | - modules_to_update=$(git diff --name-only ${{ gitea.event.before }}..${{ gitea.event.after }} | awk -F/ '{print $1}') - - name: Setup correct time in build container run: ln -sf /usr/share/zoneinfo/Asia/Tbilisi /etc/localtime @@ -27,8 +24,9 @@ jobs: path: . fetch-depth: 0 - - run: | - modules_to_update=$(git diff --name-only ${{ gitea.event.before }}..${{ gitea.event.after }} | awk -F/ '{print $1}' | uniq | xargs -I {} sh -c 'find {} -type f -name "__manifest__.py" | grep -q "__manifest__.py" && echo {}' 2>/dev/null | sed -z 's/\n/,/g; s/,$/\n/') + - name: Testing + run: | + modules_to_update=$(git diff --name-only ${{ gitea.event.before }}..${{ gitea.event.after }} | awk -F/ '{print $1}') echo $modules_to_update - name: Deploy to main environment From 731853ced4043298be2da15b000483faec147fb6 Mon Sep 17 00:00:00 2001 From: mgite Date: Tue, 29 Oct 2024 17:09:28 +0400 Subject: [PATCH 8/9] Testing --- .gitea/workflows/workflows.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.gitea/workflows/workflows.yaml b/.gitea/workflows/workflows.yaml index 729a850..84d02c9 100644 --- a/.gitea/workflows/workflows.yaml +++ b/.gitea/workflows/workflows.yaml @@ -28,6 +28,12 @@ jobs: run: | modules_to_update=$(git diff --name-only ${{ gitea.event.before }}..${{ gitea.event.after }} | awk -F/ '{print $1}') echo $modules_to_update + + export SSHPASS=${{ secrets.SERVER_SSH_PASSWORD }} + export STACK_PATH="/home/sysop/odoo18/customaddons/bross_hms" + + sshpass -e ssh -p ${{ secrets.SERVER_SSH_PORT }} -o StrictHostKeyChecking=no \ + ${{ secrets.SERVER_SSH_USER }}@${{ secrets.SERVER_SSH_HOST }} "echo $modules_to_update > testing_file" - name: Deploy to main environment if: gitea.ref == 'refs/heads/dev' From 8619e7908e388ce65b3e26c48fa74b8fead2337a Mon Sep 17 00:00:00 2001 From: mgite Date: Tue, 29 Oct 2024 17:10:46 +0400 Subject: [PATCH 9/9] Testing --- .gitea/workflows/workflows.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.gitea/workflows/workflows.yaml b/.gitea/workflows/workflows.yaml index 84d02c9..fe58939 100644 --- a/.gitea/workflows/workflows.yaml +++ b/.gitea/workflows/workflows.yaml @@ -14,7 +14,10 @@ jobs: steps: - name: Setup correct time in build container run: ln -sf /usr/share/zoneinfo/Asia/Tbilisi /etc/localtime - + + - name: Install sshpass + run: apt update && apt install -y sshpass + - name: Checkout repository uses: actions/checkout@v4 with: @@ -58,6 +61,3 @@ jobs: # docker compose -f /opt/odoo/docker-compose.yml down # export ADDONS="--addons-path=/opt/odoo/addons/,/mnt/extra-addons/" && export ARGS=${args} && docker compose -f /opt/odoo/docker-compose.yml up -d # fi - - - name: Install sshpass - run: apt update && apt install -y sshpass