name: Linux Kernel Build #Запускаем только кнопкой "Run workflow" в Actions on: workflow_dispatch: push: branches: - main paths: - 'lib/**' jobs: build: runs-on: linux steps: - name: Checkout code uses: actions/checkout@v6 - name: Install Node.js uses: actions/setup-node@v6 with: node-version: '22' - name: Install npm dependencies run: npm install --no-audit --no-fund - name: Build the application run: npm run kernel:linux #Загружаем на удаленный сервер по SSH используя scp и пароль из секретов #Загружаем из двух папок dist/builds/darwin/x64 и dist/builds/darwin/arm64, так как electron-builder может создавать разные файлы для разных архитектур #Вызываем файл sshupload.sh и передаем ему параметры из секретов, чтобы не хранить пароль в открытом виде в workflow - name: Upload to SSH shell: bash run: | chmod +x "$GITHUB_WORKSPACE/.gitea/workflows/sshupload.sh" sh "$GITHUB_WORKSPACE/.gitea/workflows/sshupload.sh" \ -l "$GITHUB_WORKSPACE/dist/builds/linux/x64/Rosetta-*.AppImage" \ -r "${{ secrets.SDU_SSH_KERNEL }}/linux/x64" \ -s "${{ secrets.SDU_SSH_HOST }}" \ -u "${{ secrets.SDU_SSH_USERNAME }}" \ -p '${{ secrets.SDU_SSH_PASSWORD }}' sh "$GITHUB_WORKSPACE/.gitea/workflows/sshupload.sh" \ -l "$GITHUB_WORKSPACE/dist/builds/linux/arm64/Rosetta-*.AppImage" \ -r "${{ secrets.SDU_SSH_KERNEL }}/linux/arm64" \ -s "${{ secrets.SDU_SSH_HOST }}" \ -u "${{ secrets.SDU_SSH_USERNAME }}" \ -p '${{ secrets.SDU_SSH_PASSWORD }}'