Browse Source

:wrench: build ming release xz

China Kassapa 8 months ago
parent
commit
6c0f4dc829

+ 0 - 12
deploy/mint.yml

@@ -24,18 +24,6 @@
         owner: "{{ ansible_user }}"
         mode: "0755"
 
-- name: Upload local build dist folders
-  hosts: building
-  tasks:
-    - name: Upload dashboard-v4 dist
-      ansible.posix.synchronize:
-        src: "{{ playbook_dir }}/tmp/mint/dashboard-v4/dashboard/dist-{{ mint_version }}/"
-        dest: "{{ app_deploy_target }}/dashboard-v4/dashboard/dist/"
-    - name: Upload openai-proxy dist
-      ansible.posix.synchronize:
-        src: "{{ playbook_dir }}/tmp/mint/open-ai-server/dist/"
-        dest: "{{ app_deploy_target }}/open-ai-server/dist/"
-
 - name: Build mint package on remote
   hosts: building
   roles:

+ 3 - 3
deploy/roles/mint-dashboard-v4-build/tasks/main.yml

@@ -2,15 +2,15 @@
   ansible.builtin.unarchive:
     src: dashboard-20241201115354.tar.xz
     dest: "{{ playbook_dir }}/tmp/mint/dashboard-v4/dashboard"
-    creates: "{{ playbook_dir }}/tmp/mint/dashboard-v4/dashboard/node_modules"
+    creates: "node_modules"
 
 - name: Build dashboard-v4 dist
   ansible.builtin.shell: yarn build
   args:
     chdir: "{{ playbook_dir }}/tmp/mint/dashboard-v4/dashboard"
-    # creates: "{{ playbook_dir }}/tmp/mint/dashboard-v4/dashboard/dist-{{ mint_version }}"
+    creates: "dist-{{ app_domain }}-{{ mint_version }}"
   environment:
-    BUILD_PATH: "dist-{{ mint_version }}"
+    BUILD_PATH: "dist-{{ app_domain }}-{{ mint_version }}"
     NODE_OPTIONS: "--max_old_space_size=5120"
     PUBLIC_URL: "{{ app_dashboard_base_path }}"
     REACT_APP_DEFAULT_LOCALE: "zh-Hans"

+ 3 - 2
deploy/roles/mint-openai-proxy-build/tasks/main.yml

@@ -1,10 +1,11 @@
 - name: Install openai-proxy nodejs dependencies
-  ansible.builtin.shell: npm install
+  ansible.builtin.shell: npm install --quiet
   args:
     chdir: "{{ playbook_dir }}/tmp/mint/open-ai-server"
-    creates: "{{ playbook_dir }}/tmp/mint/open-ai-server/node_modules"
+    creates: "node_modules"
 
 - name: Build openai-proxy target dist
   ansible.builtin.shell: npm run build
   args:
     chdir: "{{ playbook_dir }}/tmp/mint/open-ai-server"
+    creates: "dist"

+ 0 - 25
deploy/roles/mint-release-build/tasks/dashboard-v4.yml

@@ -1,25 +0,0 @@
-- name: Extract dashboard-v4 node_modules
-  ansible.builtin.unarchive:
-    src: dashboard-20241201115354.tar.xz
-    dest: "{{ ansible_env.HOME }}/build/mint-{{ mint_version }}/dashboard-v4/dashboard"
-
-- name: Build dashboard-v4 dist
-  ansible.builtin.shell: yarn build
-  args:
-    chdir: "{{ ansible_env.HOME }}/build/mint-{{ mint_version }}/dashboard-v4/dashboard"
-  environment:
-    NODE_OPTIONS: "--max_old_space_size=2048"
-    PUBLIC_URL: "{{ app_dashboard_base_path }}"
-    REACT_APP_DEFAULT_LOCALE: "zh-Hans"
-    REACT_APP_LANGUAGES: "en-US,zh-Hans,zh-Hant"
-    REACT_APP_ENABLE_LOCAL_TOKEN: "true"
-    REACT_APP_TOKEN_KEY: "token.20250320"
-    REACT_APP_DOCUMENTS_SERVER: "{{ app_documents_server }}"
-    REACT_APP_RPC_SERVER: "{{ app_grpc_web_server }}"
-    REACT_APP_ASSETS_SERVER: "{{ app_assets_server }}"
-    REACT_APP_API_SERVER: "https://{{ app_domain }}"
-    REACT_APP_ICP_CODE: "{{ app_icp_code }}"
-    REACT_APP_MPS_CODE: "{{ app_mps_code }}"
-    REACT_APP_QUESTIONNAIRE_LINK: "{{ app_questionnaire_link }}"
-    # https://github.com/iapt-platform/mint/blob/5e81587433455cbc4994da49db5b880cf79e3539/dashboard-v4/dashboard/.env.orig#L17
-    REACT_APP_OPENAI_PROXY: "{{ app_openai_proxy_server }}/api/openai"

+ 13 - 37
deploy/roles/mint-release-build/tasks/main.yml

@@ -11,26 +11,21 @@
     remote_src: true
     creates: "{{ ansible_env.HOME }}/build/mint-{{ mint_version }}"
 
-- name: Extract dashboard-v4 node_modules
-  ansible.builtin.unarchive:
-    src: dashboard-20241201115354.tar.xz
-    dest: "{{ ansible_env.HOME }}/build/mint-{{ mint_version }}/dashboard-v4/dashboard"
-    creates: "{{ ansible_env.HOME }}/build/mint-{{ mint_version }}/dashboard-v4/dashboard/node_modules"
-
-# - name: Build dashboard v4
-#   ansible.builtin.import_tasks: dashboard-v4.yml
-
-# - name: Build openai proxy
-#   ansible.builtin.import_tasks: openai-proxy.yml
-
-# - name: Setup api-v8
-#   ansible.builtin.import_tasks: api-v8.yml
+- name: Upload dashboard-v4 dist
+  ansible.posix.synchronize:
+    src: "{{ playbook_dir }}/tmp/mint/dashboard-v4/dashboard/dist-{{ app_domain }}-{{ mint_version }}/"
+    dest: "{{ ansible_env.HOME }}/build/mint-{{ mint_version }}/dashboard-v4/dashboard/dist/"
 
-# - name: Setup api-v12
-#   ansible.builtin.import_tasks: api-v12.yml
+- name: Upload openai-proxy dist
+  ansible.posix.synchronize:
+    src: "{{ playbook_dir }}/tmp/mint/open-ai-server/dist/"
+    dest: "{{ ansible_env.HOME }}/build/mint-{{ mint_version }}/open-ai-server/dist/"
 
-# - name: Setup ai translate
-#   ansible.builtin.import_tasks: ai-translate.yml
+- name: Upload shell.sh
+  ansible.builtin.template:
+    src: shell.sh.j2
+    dest: "{{ ansible_env.HOME }}/build/mint-{{ mint_version }}/scripts/shell.sh"
+    mode: "0555"
 
 - name: Upload build.sh
   ansible.builtin.template:
@@ -42,22 +37,3 @@
   ansible.builtin.shell:
     cmd: "docker run --rm -it --hostname=mint --network host -v {{ ansible_env.HOME }}/build/mint-{{ mint_version }}:{{ app_deploy_target }}:z {{ app_docker_image_name }} {{ app_deploy_target }}/scripts/build.sh"
     creates: "{{ ansible_env.HOME }}/build/mint-{{ mint_version }}/tmp/{{ app_domain }}/mint-{{ mint_version }}.tar.xz"
-# - name: Create {{ ansible_env.HOME }}/tmp/{{ app_domain }}
-#   ansible.builtin.file:
-#     path: "{{ ansible_env.HOME }}/tmp/{{ app_domain }}"
-#     state: directory
-#     mode: "0755"
-
-# - name: Create mint-{{ mint_version }}.tar
-#   ansible.builtin.shell: "tar cf mint-{{ mint_version }}.tar -C {{ ansible_env.HOME }}/build/mint-{{ mint_version }} api-v12 api-v8 dashboard-v4/dashboard/dist ai-translate open-ai-server/dist"
-#   args:
-#     chdir: "{{ ansible_env.HOME }}/tmp/{{ app_domain }}"
-
-# - name: Create mint-{{ mint_version }}.tar.xz
-#   ansible.builtin.shell: "xz -z -F xz -C sha256 --best -T +1 mint-{{ mint_version }}.tar"
-#   args:
-#     chdir: "{{ ansible_env.HOME }}/tmp/{{ app_domain }}"
-# - name: Remove mint-{{ mint_version }}
-#   ansible.builtin.file:
-#     path: "{{ ansible_env.HOME }}/build/mint-{{ mint_version }}"
-#     state: absent

+ 0 - 9
deploy/roles/mint-release-build/tasks/openai-proxy.yml

@@ -1,9 +0,0 @@
-- name: Install openai-proxy nodejs dependencies
-  ansible.builtin.shell: npm install
-  args:
-    chdir: "{{ ansible_env.HOME }}/build/mint-{{ mint_version }}/open-ai-server"
-
-- name: Build openai-proxy target dist
-  ansible.builtin.shell: npm run build
-  args:
-    chdir: "{{ ansible_env.HOME }}/build/mint-{{ mint_version }}/open-ai-server"

+ 24 - 12
deploy/roles/mint-release-build/templates/build.sh.j2

@@ -2,8 +2,8 @@
 
 set -e
 
-. $HOME/.sdkman/bin/sdkman-init.sh
-. $HOME/.nvm/nvm.sh
+source $HOME/.sdkman/bin/sdkman-init.sh
+source $HOME/.nvm/nvm.sh
 
 # cd {{ app_deploy_target }}/dashboard-v4/dashboard/
 # if [ -d dist ]
@@ -13,6 +13,7 @@ set -e
 # https://github.com/iapt-platform/mint/blob/5e81587433455cbc4994da49db5b880cf79e3539/dashboard-v4/dashboard/.env.orig#L17
 # NODE_OPTIONS="--max_old_space_size=2048" \
 #     PUBLIC_URL="{{ app_dashboard_base_path }}" \
+#     BUILD_PATH: "dist-{{ app_domain }}-{{ mint_version }}"
 #     REACT_APP_DEFAULT_LOCALE="zh-Hans" \
 #     REACT_APP_LANGUAGES="en-US,zh-Hans,zh-Hant" \
 #     REACT_APP_ENABLE_LOCAL_TOKEN="true" \
@@ -28,15 +29,15 @@ set -e
 #     npm run build
 
 cd {{ app_deploy_target }}/api-v8/
-npm install
-php8.1 /usr/local/bin/composer install
+NO_COLOR=true npm install --quiet
+php8.1 /usr/local/bin/composer install --no-ansi --quiet
 cd {{ app_deploy_target }}/api-v8/public
-npm install
-php8.1 /usr/local/bin/composer install
+NO_COLOR=true npm install --quiet
+php8.1 /usr/local/bin/composer install --no-ansi --quiet
 
 cd {{ app_deploy_target }}/api-v12/
-npm install
-php8.4 /usr/local/bin/composer install
+NO_COLOR=true npm install --quiet
+php8.4 /usr/local/bin/composer install --no-ansi --quiet
 
 # cd {{ app_deploy_target }}/open-ai-server/
 # npm install
@@ -47,14 +48,25 @@ php8.4 /usr/local/bin/composer install
 # npm run build
 
 cd {{ app_deploy_target }}/ai-translate/
-python3 -m venv $PWD/python3
-. $PWD/python3/bin/activate
-python3 -m pip install -e .
+if [ ! -d python3 ]
+then
+    python3.13 -m venv $PWD/python3
+fi
+source $PWD/python3/bin/activate
+if [ ! -f get-pip.py ]
+then
+    wget -O get-pip.py https://bootstrap.pypa.io/get-pip.py
+fi
+python get-pip.py
+python -m pip install --quiet -e .
 deactivate
 
 mkdir -p {{ app_deploy_target }}/tmp/{{ app_domain }}
 cd {{ app_deploy_target }}/tmp/{{ app_domain }}/
-tar cf mint-{{ mint_version }}.tar -C {{ app_deploy_target }} api-v12 api-v8 dashboard-v4/dashboard/dist ai-translate open-ai-server/dist
+tar cf mint-{{ mint_version }}.tar -C {{ app_deploy_target }} \
+    api-v12 api-v8 \
+    dashboard-v4/dashboard/dist open-ai-server/dist \
+    ai-translate/ai_translate ai-translate/pyproject.toml ai-translate/python3
 xz -z -F xz -C sha256 --best -T +1 mint-{{ mint_version }}.tar
 
 exit 0

+ 3 - 0
deploy/roles/mint-release-build/templates/shell.sh.j2

@@ -0,0 +1,3 @@
+#!/bin/sh
+
+docker run --rm -it --hostname=mint --network host -v $HOME/build/mint-{{ mint_version }}:{{ app_deploy_target }}:z {{ app_docker_image_name }}