Thanks to visit codestin.com
Credit goes to github.com

Skip to content

feat: add CI workflow for install script testing and enhance installsh for cross-platform compatibility#1412

Merged
ya7010 merged 5 commits intomainfrom
fix_install_script
Dec 26, 2025
Merged

feat: add CI workflow for install script testing and enhance installsh for cross-platform compatibility#1412
ya7010 merged 5 commits intomainfrom
fix_install_script

Conversation

@ya7010
Copy link
Collaborator

@ya7010 ya7010 commented Dec 26, 2025

No description provided.

Copilot AI review requested due to automatic review settings December 26, 2025 07:18
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR enhances the install.sh script for cross-platform compatibility (particularly Windows support) and adds comprehensive CI testing via GitHub Actions to validate the installer across different operating systems.

Key Changes:

  • Added logic to handle Windows .exe extension in installation and verification flows
  • Introduced dynamic executable naming based on the detected operating system
  • Created a CI workflow to test the install script on Ubuntu, macOS, and Windows with both default and custom installation directories

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
docs/public/install.sh Enhanced to support Windows executables with .exe extension and dynamic binary naming throughout installation and verification
.github/workflows/ci_install_script.yml New CI workflow that tests the install script across multiple platforms with default and custom install directories
Comments suppressed due to low confidence (1)

docs/public/install.sh:1

  • Line 151 moves the file from ${TEMP_DIR}/tombi.exe to the same location ${TEMP_DIR}/tombi.exe, which is a no-op. This should move to ${BIN_DIR}/tombi.exe instead to install the binary to the correct destination directory.
#!/bin/sh

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +184 to +188
# Get the executable name based on OS
get_exe_name() {
OS="$(uname -s)"
case "${OS}" in
MINGW* | MSYS* | CYGWIN* | Windows_NT)
Copy link

Copilot AI Dec 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The get_exe_name() function duplicates OS detection logic already present in artifact_extension() and detect_os_arch(). Consider reusing the OS detection result or consolidating this logic to avoid redundancy.

Suggested change
# Get the executable name based on OS
get_exe_name() {
OS="$(uname -s)"
case "${OS}" in
MINGW* | MSYS* | CYGWIN* | Windows_NT)
# Get the executable name based on artifact extension (which is OS-dependent)
get_exe_name() {
case "${ARTIFACT_EXTENSION}" in
*.zip)

Copilot uses AI. Check for mistakes.
@ya7010 ya7010 merged commit 18bc15c into main Dec 26, 2025
13 checks passed
@ya7010 ya7010 deleted the fix_install_script branch December 26, 2025 07:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants