Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add installer to release asset issue - #139 #149

Merged
merged 10 commits into from
Mar 7, 2025

Conversation

Srajald
Copy link
Contributor

@Srajald Srajald commented Mar 4, 2025

Summary by CodeRabbit

  • New Features

    • Enhanced the build process to trigger on release events, ensuring the application version aligns with the latest release tag.
    • Introduced steps to upload the built application as a release asset.
  • Chores

    • Streamlined the deployment workflow to directly download the Windows executable from official release assets.
    • Ensured proper formatting by adding a newline at the end of the settings file.

Copy link

coderabbitai bot commented Mar 4, 2025

Walkthrough

The pull request introduces a trigger for release events in the GitHub Actions workflow and adds a step to update the version in settings.json based on the release tag. Both Dockerfile variants have been modified to download the Windows executable directly from GitHub Releases using gh release download. Additionally, a newline character has been added to the end of the settings.json file, and a step to upload the built artifact as a release asset has been included in the workflow.

Changes

File(s) Change Summary
.github/.../build-windows-executable-app.yaml, .github/.../build-windows-executable-app-with-pyinstaller.yaml Added release event trigger and new steps ("Set Version in settings.json" and "Upload Artifact as Release Asset") in the build-executable job to update the version and upload the artifact.
Dockerfile, Dockerfile_simple Replaced gh run download with gh release download to fetch "OpenMS-App.zip" from GitHub Releases, simplifying the download process.
settings.json Added a newline character at the end of the file.

Sequence Diagram(s)

sequenceDiagram
    participant R as Release Event
    participant W as GitHub Workflow
    participant S as Set Version Step
    participant F as settings.json
    participant U as Upload Artifact Step
    R->>W: Release created (tag available)
    W->>S: Initiate build-executable job
    S->>F: Update version with tag value
    W->>U: Upload OpenMS-App.zip as release asset
Loading
sequenceDiagram
    participant D as Docker Build Process
    participant G as GitHub Releases
    D->>G: Execute 'gh release download OpenMS-App.zip'
    G-->>D: Provide the release asset
    D->>D: Unzip asset to /app/OpenMS-App
    D->>D: Remove zip file after extraction
Loading

Suggested reviewers

  • jcharkow

Poem

I'm a rabbit with a coding hop,
Releasing versions, I just can't stop.
New triggers ring and settings update,
In the land of code, it's time to celebrate.
With a skip and a jump, my joy won't drop! 🥕
Happy changes dance like bunnies on top!


🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Nitpick comments (1)
.github/workflows/build-windows-executable-app.yaml (1)

180-186: Implement error handling for version processing.

The PowerShell script effectively updates the version in settings.json using the release tag, but it lacks error handling if $VERSION is null or empty (which could happen if the workflow is triggered by an event other than a release).

Consider adding validation:

-    - name: Set Version in settings.json
-      run: |
-        $VERSION="${{ github.event.release.tag_name }}"
-        $content = Get-Content -Raw settings.json | ConvertFrom-Json
-        $content.version = $VERSION
-        $content | ConvertTo-Json -Depth 100 | Set-Content settings.json
+    - name: Set Version in settings.json
+      run: |
+        $VERSION="${{ github.event.release.tag_name }}"
+        if ([string]::IsNullOrEmpty($VERSION)) {
+          Write-Host "No release tag found. Using default version."
+          $VERSION="0.0.0"
+        } else {
+          Write-Host "Setting version to $VERSION from release tag"
+        }
+        $content = Get-Content -Raw settings.json | ConvertFrom-Json
+        $content.version = $VERSION
+        $content | ConvertTo-Json -Depth 100 | Set-Content settings.json
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 1a630bf and 76b5d2d.

📒 Files selected for processing (4)
  • .github/workflows/build-windows-executable-app.yaml (2 hunks)
  • Dockerfile (1 hunks)
  • Dockerfile_simple (1 hunks)
  • settings.json (1 hunks)
🔇 Additional comments (2)
.github/workflows/build-windows-executable-app.yaml (1)

7-8: Good addition of release event trigger.

Adding release event handling is appropriate for automating the deployment process when new releases are created. This will enable automatic building of the executable when a release is created.

settings.json (1)

15-16: Good addition of version field.

Adding the version field to settings.json is necessary for tracking the application version and works well with the GitHub workflow that now updates this field based on release tags.

Dockerfile Outdated
Comment on lines 154 to 160
# Download latest OpenMS App executable for Windows from GitHub Releases
RUN if [ -n "$GH_TOKEN" ]; then \
echo "GH_TOKEN is set, proceeding to download the release asset..."; \
gh run download -R ${GITHUB_USER}/${GITHUB_REPO} $(gh run list -R ${GITHUB_USER}/${GITHUB_REPO} -b main -e push -s completed -w "Build executable for Windows" --json databaseId -q '.[0].databaseId') -n OpenMS-App --dir /app; \
gh release download -R ${GITHUB_USER}/${GITHUB_REPO} -p "OpenMS-App.zip" -D /app; \
unzip /app/OpenMS-App.zip -d /app/OpenMS-App && \
rm /app/OpenMS-App.zip; \
else \
Copy link

Choose a reason for hiding this comment

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

💡 Verification agent

🧩 Analysis chain

Improved release asset handling.

The update to use gh release download instead of the previous approach is more efficient and follows GitHub CLI best practices for fetching release assets.

Let's confirm the GitHub CLI command is correctly formatted:


🏁 Script executed:

#!/bin/bash
# Verify the `gh release download` command syntax
gh release download --help | grep -E "(-p|--pattern)"

# Check if unzip is available in the base image
apt list --installed | grep unzip || echo "unzip might not be installed in the base image"

Length of output: 525


Release Asset Handling Verified; Ensure 'unzip' is Present
The update using gh release download -p is correctly implemented and aligns with GitHub CLI best practices. However, our verification indicates that the Docker image may not have the unzip utility installed. Please confirm that the base image includes unzip or add an installation step (e.g., via apt-get update && apt-get install -y unzip or an equivalent command) to ensure the asset extraction doesn’t fail at runtime.

Comment on lines 100 to 106
# Download latest OpenMS App executable for Windows from GitHub Releases
RUN if [ -n "$GH_TOKEN" ]; then \
echo "GH_TOKEN is set, proceeding to download the release asset..."; \
gh run download -R ${GITHUB_USER}/${GITHUB_REPO} $(gh run list -R ${GITHUB_USER}/${GITHUB_REPO} -b main -e push -s completed -w "Build executable for Windows" --json databaseId -q '.[0].databaseId') -n OpenMS-App --dir /app; \
gh release download -R ${GITHUB_USER}/${GITHUB_REPO} -p "OpenMS-App.zip" -D /app; \
unzip /app/OpenMS-App.zip -d /app/OpenMS-App && \
rm /app/OpenMS-App.zip; \
else \
Copy link

Choose a reason for hiding this comment

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

💡 Verification agent

🧩 Analysis chain

Improved release asset handling.

The updated approach to download release assets using gh release download improves efficiency and reliability. Unzipping the asset directly in the Dockerfile is also a good practice.

Checking for missing dependencies that might be needed for the unzip operation:


🏁 Script executed:

#!/bin/bash
# Check if unzip is installed in the base image
grep -E "apt-get install.*unzip" Dockerfile_simple || echo "unzip might not be explicitly installed"

# Check the base image for unzip
docker run --rm ubuntu:22.04 which unzip || echo "unzip is not available in the base image by default"

Length of output: 445


Missing unzip Dependency in Base Image

The updated asset download approach using gh release download is efficient and streamlines the process. However, our checks indicate that the unzip utility is not available in the base image by default. To prevent build failures during the asset extraction step, please add an installation step for unzip before the download and unzip operations.

  • Location: Dockerfile_simple (Lines 100-106)
  • Suggestion: Add a command (e.g., for an Ubuntu-based image):
    + RUN apt-get update && apt-get install -y unzip
    before the asset download step.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
# Download latest OpenMS App executable for Windows from GitHub Releases
RUN if [ -n "$GH_TOKEN" ]; then \
echo "GH_TOKEN is set, proceeding to download the release asset..."; \
gh run download -R ${GITHUB_USER}/${GITHUB_REPO} $(gh run list -R ${GITHUB_USER}/${GITHUB_REPO} -b main -e push -s completed -w "Build executable for Windows" --json databaseId -q '.[0].databaseId') -n OpenMS-App --dir /app; \
gh release download -R ${GITHUB_USER}/${GITHUB_REPO} -p "OpenMS-App.zip" -D /app; \
unzip /app/OpenMS-App.zip -d /app/OpenMS-App && \
rm /app/OpenMS-App.zip; \
else \
# Download latest OpenMS App executable for Windows from GitHub Releases
RUN apt-get update && apt-get install -y unzip
RUN if [ -n "$GH_TOKEN" ]; then \
echo "GH_TOKEN is set, proceeding to download the release asset..."; \
gh release download -R ${GITHUB_USER}/${GITHUB_REPO} -p "OpenMS-App.zip" -D /app; \
unzip /app/OpenMS-App.zip -d /app/OpenMS-App && \
rm /app/OpenMS-App.zip; \
else \

@t0mdavid-m t0mdavid-m self-requested a review March 5, 2025 09:26
Copy link
Member

@t0mdavid-m t0mdavid-m left a comment

Choose a reason for hiding this comment

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

Thank you for your contribution. The artifact still needs to be updated as a release asset. You can take a look here as a reference: https://github.com/t0mdavid-m/FLASHViewer/blob/develop/.github/workflows/build-windows-executable-app.yaml

Dockerfile Outdated
RUN if [ -n "$GH_TOKEN" ]; then \
echo "GH_TOKEN is set, proceeding to download the release asset..."; \
gh run download -R ${GITHUB_USER}/${GITHUB_REPO} $(gh run list -R ${GITHUB_USER}/${GITHUB_REPO} -b main -e push -s completed -w "Build executable for Windows" --json databaseId -q '.[0].databaseId') -n OpenMS-App --dir /app; \
gh release download -R ${GITHUB_USER}/${GITHUB_REPO} -p "OpenMS-App.zip" -D /app; \
unzip /app/OpenMS-App.zip -d /app/OpenMS-App && \
Copy link
Member

Choose a reason for hiding this comment

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

This should be removed as the download button expects the zipped asset.

RUN if [ -n "$GH_TOKEN" ]; then \
echo "GH_TOKEN is set, proceeding to download the release asset..."; \
gh run download -R ${GITHUB_USER}/${GITHUB_REPO} $(gh run list -R ${GITHUB_USER}/${GITHUB_REPO} -b main -e push -s completed -w "Build executable for Windows" --json databaseId -q '.[0].databaseId') -n OpenMS-App --dir /app; \
gh release download -R ${GITHUB_USER}/${GITHUB_REPO} -p "OpenMS-App.zip" -D /app; \
unzip /app/OpenMS-App.zip -d /app/OpenMS-App && \
Copy link
Member

Choose a reason for hiding this comment

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

See Dockerfile

Copy link
Member

@t0mdavid-m t0mdavid-m left a comment

Choose a reason for hiding this comment

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

Also could you merge with the main branch and resolve the conflicts?

@t0mdavid-m t0mdavid-m linked an issue Mar 5, 2025 that may be closed by this pull request
@Srajald
Copy link
Contributor Author

Srajald commented Mar 6, 2025

@t0mdavid-m
yeah sure sir I will do the changes and update it ...

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Nitpick comments (1)
.github/workflows/build-windows-executable-app.yaml (1)

180-186: Explicitly Specify the Shell for the Version Update Step
The "Set Version in settings.json" step uses PowerShell commands (e.g., Get-Content and ConvertFrom-Json). To prevent any ambiguity or potential shell mismatches on Windows runners, explicitly setting the shell (for example, shell: pwsh) is recommended.

-    - name: Set Version in settings.json
-      run: |
-        $VERSION="${{ github.event.release.tag_name }}"
-        $content = Get-Content -Raw settings.json | ConvertFrom-Json
-        $content.version = $VERSION
-        $content | ConvertTo-Json -Depth 100 | Set-Content settings.json
+    - name: Set Version in settings.json
+      shell: pwsh
+      run: |
+        $VERSION = "${{ github.event.release.tag_name }}"
+        $content = Get-Content -Raw settings.json | ConvertFrom-Json
+        $content.version = $VERSION
+        $content | ConvertTo-Json -Depth 100 | Set-Content settings.json
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 76b5d2d and f3cd0d8.

📒 Files selected for processing (4)
  • .github/workflows/build-windows-executable-app-with-pyinstaller.yaml (1 hunks)
  • .github/workflows/build-windows-executable-app.yaml (3 hunks)
  • Dockerfile (1 hunks)
  • Dockerfile_simple (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (2)
  • Dockerfile
  • Dockerfile_simple
🧰 Additional context used
🪛 actionlint (1.7.4)
.github/workflows/build-windows-executable-app-with-pyinstaller.yaml

276-276: the runner of "softprops/action-gh-release@v1" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)

.github/workflows/build-windows-executable-app.yaml

424-424: the runner of "softprops/action-gh-release@v1" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)

🪛 YAMLlint (1.35.1)
.github/workflows/build-windows-executable-app-with-pyinstaller.yaml

[error] 273-273: trailing spaces

(trailing-spaces)


[error] 280-280: no new line character at the end of file

(new-line-at-end-of-file)

🔇 Additional comments (1)
.github/workflows/build-windows-executable-app.yaml (1)

7-8: Introduce Release Event Trigger
The addition of the release trigger (with types: [created]) allows the workflow to execute on release events. This aligns well with the PR objective of handling installer release assets.

Comment on lines 273 to 280

- name: Upload Artifact as Release Asset
if: github.event_name == 'release'
uses: softprops/action-gh-release@v1
with:
files: OpenMS-App.zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Copy link

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Update the Release Asset Upload Step for Compatibility and Formatting

  • The new "Upload Artifact as Release Asset" step uses softprops/action-gh-release@v1, which is flagged by static analysis as outdated. Consider updating it to a newer version (for example, softprops/action-gh-release@v2) to ensure compatibility with current GitHub Actions runners.
  • Additionally, remove any trailing spaces (noted at line 273) and ensure the file ends with a newline (as flagged at line 280).
-      uses: softprops/action-gh-release@v1
+      uses: softprops/action-gh-release@v2
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- name: Upload Artifact as Release Asset
if: github.event_name == 'release'
uses: softprops/action-gh-release@v1
with:
files: OpenMS-App.zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload Artifact as Release Asset
if: github.event_name == 'release'
uses: softprops/action-gh-release@v2
with:
files: OpenMS-App.zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
🧰 Tools
🪛 actionlint (1.7.4)

276-276: the runner of "softprops/action-gh-release@v1" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)

🪛 YAMLlint (1.35.1)

[error] 273-273: trailing spaces

(trailing-spaces)


[error] 280-280: no new line character at the end of file

(new-line-at-end-of-file)

Comment on lines 421 to 427

- name: Upload Artifact as Release Asset
if: github.event_name == 'release'
uses: softprops/action-gh-release@v1
with:
files: OpenMS-App.zip
env:
Copy link

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Update the Release Asset Upload Step for Consistency
Similar to the PyInstaller workflow, the "Upload Artifact as Release Asset" step here also uses softprops/action-gh-release@v1. Update this to a newer version (e.g., softprops/action-gh-release@v2) to avoid potential runtime issues, as noted by static analysis.

-      uses: softprops/action-gh-release@v1
+      uses: softprops/action-gh-release@v2
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- name: Upload Artifact as Release Asset
if: github.event_name == 'release'
uses: softprops/action-gh-release@v1
with:
files: OpenMS-App.zip
env:
- name: Upload Artifact as Release Asset
if: github.event_name == 'release'
- uses: softprops/action-gh-release@v1
+ uses: softprops/action-gh-release@v2
with:
files: OpenMS-App.zip
env:
🧰 Tools
🪛 actionlint (1.7.4)

424-424: the runner of "softprops/action-gh-release@v1" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (2)
.github/workflows/build-windows-executable-app-with-pyinstaller.yaml (1)

273-273: YAML Formatting Fixes

Static analysis flagged a trailing whitespace on line 273 and a missing newline at the end of the file (line 280). Please remove the extra space and add a newline at the end to ensure the file complies with YAML style guidelines.

Also applies to: 280-280

🧰 Tools
🪛 YAMLlint (1.35.1)

[error] 273-273: trailing spaces

(trailing-spaces)

.github/workflows/build-windows-executable-app.yaml (1)

180-185: Update Version in settings.json

A new step updates settings.json by setting its version field to the release tag (${{ github.event.release.tag_name }}). This ensures that the version information remains current with each release. Consider adding error handling in case the JSON file is missing or malformed.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between f3cd0d8 and a6d8ba7.

📒 Files selected for processing (2)
  • .github/workflows/build-windows-executable-app-with-pyinstaller.yaml (1 hunks)
  • .github/workflows/build-windows-executable-app.yaml (3 hunks)
🧰 Additional context used
🪛 YAMLlint (1.35.1)
.github/workflows/build-windows-executable-app-with-pyinstaller.yaml

[error] 273-273: trailing spaces

(trailing-spaces)


[error] 280-280: no new line character at the end of file

(new-line-at-end-of-file)

🔇 Additional comments (3)
.github/workflows/build-windows-executable-app-with-pyinstaller.yaml (1)

274-280: Release Asset Upload Step Added

The newly introduced "Upload Artifact as Release Asset" step is well configured. It correctly restricts execution to release events (if: github.event_name == 'release') and uses softprops/action-gh-release@v2 to upload the artifact file OpenMS-App.zip. Ensure that the artifact is successfully generated during the build process so that the upload step functions as expected.

🧰 Tools
🪛 YAMLlint (1.35.1)

[error] 280-280: no new line character at the end of file

(new-line-at-end-of-file)

.github/workflows/build-windows-executable-app.yaml (2)

7-8: Release Event Trigger Added

The workflow has been updated to include a release event trigger:

release:
  types: [created]

This change enables the workflow to run when a new release is created, aligning well with the updated deployment process.


422-429: Release Asset Upload Configuration Confirmed

The step that uploads the built artifact OpenMS-App.zip using softprops/action-gh-release@v2 is correctly conditioned to run only on release events. Please verify that the artifact is properly generated in earlier steps to prevent any upload failures.

@Srajald
Copy link
Contributor Author

Srajald commented Mar 6, 2025

@t0mdavid-m
Sir, please review this ..
workflow ran successfully at my github..
you can tell me for any other changes required in this PR..
thanks

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (1)
.github/workflows/build-windows-executable-app-with-pyinstaller.yaml (1)

284-291: Ensure Consistent Release Asset Upload Configuration and YAML Formatting
The new step to upload the built artifact as a release asset using softprops/action-gh-release@v2 is correctly configured to trigger only on release events. However, YAMLlint has flagged trailing spaces at line 284 and a missing newline character at the end of the file (line 291). Removing extra whitespace and ensuring the file ends with a newline will help maintain formatting quality and prevent potential issues in downstream tooling.

Below is a suggested diff improvement for formatting:

...
-    (EOF with no newline)
+ 

(Ensure a newline at the end of the file.)

🧰 Tools
🪛 YAMLlint (1.35.1)

[error] 284-284: trailing spaces

(trailing-spaces)


[error] 291-291: no new line character at the end of file

(new-line-at-end-of-file)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between e8c14e7 and c03f4e6.

📒 Files selected for processing (2)
  • .github/workflows/build-windows-executable-app-with-pyinstaller.yaml (1 hunks)
  • .github/workflows/build-windows-executable-app.yaml (3 hunks)
🧰 Additional context used
🪛 YAMLlint (1.35.1)
.github/workflows/build-windows-executable-app-with-pyinstaller.yaml

[error] 284-284: trailing spaces

(trailing-spaces)


[error] 291-291: no new line character at the end of file

(new-line-at-end-of-file)

⏰ Context from checks skipped due to timeout of 90000ms (4)
  • GitHub Check: build
  • GitHub Check: build-full-app
  • GitHub Check: build-simple-app
  • GitHub Check: build-openms
🔇 Additional comments (3)
.github/workflows/build-windows-executable-app.yaml (3)

7-8: Addition of Release Event Trigger
A new trigger for release events (with types: [created]) has been added alongside push, pull_request, and workflow_dispatch. This change correctly enables the workflow to run upon a new release and aligns with the PR goals of handling installer release assets.


191-197: Set Version in settings.json Step
The newly added step that updates the version field in settings.json using the release tag (${{ github.event.release.tag_name }}) is a useful addition to automate version management. Ensure that the file exists and that appropriate error handling is in place (if needed) for cases where settings.json might be missing or improperly formatted.


433-440: Consistent Release Asset Upload Configuration
This step mirrors the upload configuration in the PyInstaller workflow and uses softprops/action-gh-release@v2 to upload OpenMS-App.zip as a release asset when a release event occurs. It adheres to the improvements suggested in previous reviews. Just as in the other workflow, please review for any trailing whitespace or formatting inconsistencies.

@t0mdavid-m t0mdavid-m merged commit 75fa783 into OpenMS:main Mar 7, 2025
7 of 8 checks passed
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.

Add installer as a release asset
2 participants