Skip to content

Conversation

@vnoves
Copy link
Member

@vnoves vnoves commented Jul 9, 2025

Summary by CodeRabbit

  • Chores
    • Updated configuration management to use a unified settings file in the user profile, improving reliability and thread safety.
    • Removed legacy configuration files and related project references.
    • Adjusted installer to exclude obsolete configuration files.
    • Enhanced CI/CD workflows to update version and API key in the new settings file format.

@coderabbitai
Copy link

coderabbitai bot commented Jul 9, 2025

Walkthrough

The changes refactor configuration management by removing App.config and its references from the project, workflows, and installer. Configuration is now handled through SettingsConfig.cs, which introduces a unified, thread-safe approach using a user-profile-based config file. Workflow YAMLs are updated to modify SettingsConfig.cs instead of App.config, and .dll.config files are excluded from the installer.

Changes

File(s) Change Summary
.github/workflows/dev_actions.yml
.github/workflows/dev_pull_request.yml
.github/workflows/production_actions.yml
Workflow steps updated to modify version/API key in SettingsConfig.cs instead of App.config; steps for App.config removed.
Common_glTF_Exporter/App.config Deleted XML configuration file; all settings moved to code-based config management.
Common_glTF_Exporter/Common_glTF_Exporter.projitems Removed <None> item referencing App.config from project items.
Common_glTF_Exporter/Utils/SettingsConfig.cs Refactored to manage config via user-profile file, add thread safety, use .NET config APIs, and generate default config if missing.
GltfInstaller/Program.cs Removed references to .dll.config files from the installer file list for all Revit exporter versions.

Sequence Diagram(s)

sequenceDiagram
    participant Workflow
    participant SettingsConfig.cs
    participant UserProfileConfig

    Workflow->>SettingsConfig.cs: Replace '0.0.0' with FULL_VERSION
    Workflow->>SettingsConfig.cs: Replace 'PlaceHolderApiKey' with secret API key
    SettingsConfig.cs->>UserProfileConfig: Ensure config file exists (static constructor)
    SettingsConfig.cs->>UserProfileConfig: Update version/API key in config file
    UserProfileConfig-->>SettingsConfig.cs: Confirm update
Loading

Possibly related PRs

  • EverseDevelopment/revit-glTF-exporter#106: Both PRs modify the installer file list in GltfInstaller/Program.cs regarding .dll.config files, but in opposite directions—this PR removes them, while the related PR adds them.

Poem

A config file hops away,
Settings now in code will stay.
No more XML to chase or fear,
Just tidy C# living here.
The installer’s lighter, workflows neat—
This bunny finds these changes sweet!
🐇✨

✨ Finishing Touches
  • 📝 Generate Docstrings

🪧 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.
    • Explain this complex logic.
    • 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 explain this code block.
    • @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 explain its main purpose.
    • @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.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

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 generate sequence diagram to generate a sequence diagram of the changes in 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: 4

🧹 Nitpick comments (3)
.github/workflows/dev_actions.yml (1)

72-72: Remove trailing spaces

-          (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+          (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
.github/workflows/dev_pull_request.yml (1)

70-70: Remove trailing spaces

-          (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+          (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
.github/workflows/production_actions.yml (1)

101-101: Remove empty line with trailing spaces

Remove the empty line at line 101 that contains trailing spaces.

📜 Review details

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

📥 Commits

Reviewing files that changed from the base of the PR and between 60cd87b and 0d9e3a3.

📒 Files selected for processing (7)
  • .github/workflows/dev_actions.yml (1 hunks)
  • .github/workflows/dev_pull_request.yml (1 hunks)
  • .github/workflows/production_actions.yml (1 hunks)
  • Common_glTF_Exporter/App.config (0 hunks)
  • Common_glTF_Exporter/Common_glTF_Exporter.projitems (0 hunks)
  • Common_glTF_Exporter/Utils/SettingsConfig.cs (1 hunks)
  • GltfInstaller/Program.cs (1 hunks)
💤 Files with no reviewable changes (2)
  • Common_glTF_Exporter/Common_glTF_Exporter.projitems
  • Common_glTF_Exporter/App.config
🧰 Additional context used
🪛 YAMLlint (1.37.1)
.github/workflows/dev_actions.yml

[error] 72-72: trailing spaces

(trailing-spaces)

.github/workflows/production_actions.yml

[error] 97-97: trailing spaces

(trailing-spaces)

.github/workflows/dev_pull_request.yml

[error] 70-70: trailing spaces

(trailing-spaces)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: build
🔇 Additional comments (1)
GltfInstaller/Program.cs (1)

28-117: Clean removal of configuration files from installer

The removal of .dll.config files from the installer is consistent with the migration to the new SettingsConfig approach. The formatting improvements also enhance readability.

Comment on lines 69 to 75
- name: Setting new version to the config file
run: |
(Get-Content Common_glTF_Exporter/App.config) -replace 'key="version" value="[^"]+"', "key=`"version`" value=`"$env:FULL_VERSION`"" | Out-File -encoding ASCII Common_glTF_Exporter/App.config
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
- name: Configuring Key
run: |
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', ${{ secrets.EVERSE_GLTF_EXPORTER_APIKEY }} | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
Copy link

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Verify string replacement operations succeed

The string replacement approach could fail silently if the placeholder strings change in the source code.

Add verification to ensure the replacements actually occurred:

     - name: Setting new version to the config file
       run: |
         (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+        if (!(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs | Select-String -Pattern $env:FULL_VERSION -Quiet)) {
+          throw "Version replacement failed"
+        }
     
     - name: Configuring Key
       run: |
         (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', ${{ secrets.EVERSE_GLTF_EXPORTER_APIKEY }} | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+        if (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs | Select-String -Pattern 'PlaceHolderApiKey' -Quiet) {
+          throw "API key replacement failed"
+        }
🧰 Tools
🪛 YAMLlint (1.37.1)

[error] 72-72: trailing spaces

(trailing-spaces)

🤖 Prompt for AI Agents
In .github/workflows/dev_actions.yml around lines 69 to 75, the current string
replacement commands do not verify if the replacements succeeded, which could
lead to silent failures if the placeholders change. Modify the script to check
the content before and after replacement to confirm that the target strings were
found and replaced. If the replacement did not occur, fail the step or output an
error message to ensure the issue is caught early.

Comment on lines 67 to 73
- name: Setting new version to the config file
run: |
(Get-Content Common_glTF_Exporter/App.config) -replace 'key="version" value="[^"]+"', "key=`"version`" value=`"$env:FULL_VERSION`"" | Out-File -encoding ASCII Common_glTF_Exporter/App.config
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
- name: Configuring Key
run: |
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', ${{ secrets.EVERSE_GLTF_EXPORTER_APIKEY }} | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
Copy link

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Verify string replacement operations succeed

The string replacement approach could fail silently if the placeholder strings change in the source code.

Add verification to ensure the replacements actually occurred:

     - name: Setting new version to the config file
       run: |
         (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+        if (!(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs | Select-String -Pattern $env:FULL_VERSION -Quiet)) {
+          throw "Version replacement failed"
+        }
     
     - name: Configuring Key
       run: |
         (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', ${{ secrets.EVERSE_GLTF_EXPORTER_APIKEY }} | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+        if (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs | Select-String -Pattern 'PlaceHolderApiKey' -Quiet) {
+          throw "API key replacement failed"
+        }
📝 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: Setting new version to the config file
run: |
(Get-Content Common_glTF_Exporter/App.config) -replace 'key="version" value="[^"]+"', "key=`"version`" value=`"$env:FULL_VERSION`"" | Out-File -encoding ASCII Common_glTF_Exporter/App.config
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
- name: Configuring Key
run: |
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', ${{ secrets.EVERSE_GLTF_EXPORTER_APIKEY }} | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
- name: Setting new version to the config file
run: |
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
if (!(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs | Select-String -Pattern $env:FULL_VERSION -Quiet)) {
throw "Version replacement failed"
}
- name: Configuring Key
run: |
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', ${{ secrets.EVERSE_GLTF_EXPORTER_APIKEY }} | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
if (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs | Select-String -Pattern 'PlaceHolderApiKey' -Quiet) {
throw "API key replacement failed"
}
🧰 Tools
🪛 YAMLlint (1.37.1)

[error] 70-70: trailing spaces

(trailing-spaces)

🤖 Prompt for AI Agents
In .github/workflows/dev_pull_request.yml around lines 67 to 73, the string
replacement commands for updating version and API key in SettingsConfig.cs may
fail silently if the placeholders are missing. Modify the script to verify that
the replacements actually occurred by checking the output content for the
expected changes after each replacement. If the replacement did not happen, fail
the step or log an error to ensure the issue is caught early.

Comment on lines 94 to 100
- name: Setting new version to the config file
run: |
(Get-Content Common_glTF_Exporter/App.config) -replace 'key="version" value="[^"]+"', "key=`"version`" value=`"$env:FULL_VERSION`"" | Out-File -encoding ASCII Common_glTF_Exporter/App.config
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
- name: Configuring Key
run: |
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', ${{ secrets.EVERSE_GLTF_EXPORTER_APIKEY }} | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
Copy link

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Verify string replacement operations succeed in production workflow

The string replacement approach could fail silently if the placeholder strings change. This is especially critical for the production workflow.

Add verification to ensure the replacements actually occurred:

     - name: Setting new version to the config file
       run: |
         (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+        if (!(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs | Select-String -Pattern $env:FULL_VERSION -Quiet)) {
+          throw "Version replacement failed"
+        }
     
     - name: Configuring Key
       run: |
         (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', ${{ secrets.EVERSE_GLTF_EXPORTER_APIKEY }} | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+        if (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs | Select-String -Pattern 'PlaceHolderApiKey' -Quiet) {
+          throw "API key replacement failed"
+        }
📝 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: Setting new version to the config file
run: |
(Get-Content Common_glTF_Exporter/App.config) -replace 'key="version" value="[^"]+"', "key=`"version`" value=`"$env:FULL_VERSION`"" | Out-File -encoding ASCII Common_glTF_Exporter/App.config
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
- name: Configuring Key
run: |
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', ${{ secrets.EVERSE_GLTF_EXPORTER_APIKEY }} | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
- name: Setting new version to the config file
run: |
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
if (!(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs | Select-String -Pattern $env:FULL_VERSION -Quiet)) {
throw "Version replacement failed"
}
- name: Configuring Key
run: |
(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', ${{ secrets.EVERSE_GLTF_EXPORTER_APIKEY }} | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
if (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs | Select-String -Pattern 'PlaceHolderApiKey' -Quiet) {
throw "API key replacement failed"
}
🧰 Tools
🪛 YAMLlint (1.37.1)

[error] 97-97: trailing spaces

(trailing-spaces)

🤖 Prompt for AI Agents
In .github/workflows/production_actions.yml around lines 94 to 100, the current
string replacement commands do not verify if the replacements succeeded, risking
silent failures if placeholders change. Modify the workflow to check the output
after each replacement to confirm the placeholder strings were found and
replaced. If a replacement does not occur, the workflow should fail or log an
error to prevent silent issues in production.

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: 3

♻️ Duplicate comments (3)
.github/workflows/dev_pull_request.yml (1)

67-70: Replacement step still lacks verification

Previous feedback requested an assertion that the '0.0.0' token was actually replaced (to avoid silent failures). The step remains unchanged.

.github/workflows/dev_actions.yml (1)

69-72: No check that version string was replaced — identical concern already raised.

.github/workflows/production_actions.yml (1)

94-97: Still no post-replacement validation — prior comment not addressed.

🧹 Nitpick comments (3)
.github/workflows/dev_pull_request.yml (1)

70-70: Trim trailing whitespace – caught by YAML-lint.

.github/workflows/dev_actions.yml (1)

72-72: Trailing spaces flagged by YAML-lint.

.github/workflows/production_actions.yml (1)

97-97: Remove trailing whitespace to satisfy YAML-lint.

📜 Review details

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

📥 Commits

Reviewing files that changed from the base of the PR and between 0d9e3a3 and d9d82c4.

📒 Files selected for processing (3)
  • .github/workflows/dev_actions.yml (1 hunks)
  • .github/workflows/dev_pull_request.yml (1 hunks)
  • .github/workflows/production_actions.yml (1 hunks)
🧰 Additional context used
🪛 YAMLlint (1.37.1)
.github/workflows/dev_actions.yml

[error] 72-72: trailing spaces

(trailing-spaces)

.github/workflows/dev_pull_request.yml

[error] 70-70: trailing spaces

(trailing-spaces)

.github/workflows/production_actions.yml

[error] 97-97: trailing spaces

(trailing-spaces)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: build

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

♻️ Duplicate comments (6)
.github/workflows/dev_pull_request.yml (2)

73-75: Missing $ prevents API-key substitution – still unresolved
The variable apiUrlKey is passed as a literal string; PowerShell needs $apiUrlKey. The placeholder will never be replaced, breaking authentication at runtime.

-          (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', apiUrlKey | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+          (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', $apiUrlKey | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs

Tagging again because the same issue was highlighted in an earlier review but is still present.


67-70: Guard the replace-step with an assertion
If '0.0.0' disappears from SettingsConfig.cs, the replacement silently does nothing. Fail fast to avoid shipping a wrong version:

 (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION |
   Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+if (!(Select-String -Path Common_glTF_Exporter/Utils/SettingsConfig.cs -Pattern $env:FULL_VERSION -Quiet)) {
+  throw "Version replacement failed"
+}
.github/workflows/production_actions.yml (2)

100-102: API-key still not injected – $ sigil missing

Same defect as in dev workflow; the key never reaches SettingsConfig.cs.

-          (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', apiUrlKey | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+          (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', $apiUrlKey | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs

94-97: Add post-replace verification for version string – identical rationale as dev workflow.

.github/workflows/dev_actions.yml (2)

75-76: API-key placeholder not replaced – variable expansion is missing:

-          (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', apiUrlKey | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+          (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', $apiUrlKey | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs

69-72: Replicate the version-replacement guard here to detect silent failures.

🧹 Nitpick comments (3)
.github/workflows/dev_pull_request.yml (1)

69-70: Trim trailing whitespace – YAMLlint is red-flagging lines 70 & 76
Remove the extra spaces to keep the workflow YAML-lint clean.

Also applies to: 75-75

.github/workflows/production_actions.yml (1)

97-97: Trailing whitespace reported by YAMLlint – please strip.

Also applies to: 103-103

.github/workflows/dev_actions.yml (1)

71-71: Remove trailing spaces (lines 72 & 78 per YAMLlint).

Also applies to: 77-77

📜 Review details

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

📥 Commits

Reviewing files that changed from the base of the PR and between d9d82c4 and 4327b6b.

📒 Files selected for processing (3)
  • .github/workflows/dev_actions.yml (1 hunks)
  • .github/workflows/dev_pull_request.yml (1 hunks)
  • .github/workflows/production_actions.yml (1 hunks)
🧰 Additional context used
🪛 YAMLlint (1.37.1)
.github/workflows/dev_actions.yml

[error] 72-72: trailing spaces

(trailing-spaces)


[error] 78-78: trailing spaces

(trailing-spaces)

.github/workflows/dev_pull_request.yml

[error] 70-70: trailing spaces

(trailing-spaces)


[error] 76-76: trailing spaces

(trailing-spaces)

.github/workflows/production_actions.yml

[error] 97-97: trailing spaces

(trailing-spaces)


[error] 103-103: trailing spaces

(trailing-spaces)

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

♻️ Duplicate comments (6)
.github/workflows/dev_pull_request.yml (2)

67-70: Still no verification that the version string was actually replaced
Past reviews already highlighted that the script may succeed even when '0.0.0' is absent. Please fail fast by asserting the replacement occurred.

 (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace '0.0.0', $env:FULL_VERSION | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+if (!(Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs | Select-String -Pattern $env:FULL_VERSION -Quiet)) {
+  throw "Version replacement failed"
+}

71-75: Same silent-failure risk for the API-key replacement

Add a post-replacement check to guarantee the placeholder is gone, mirroring the approach above.

 (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs) -replace 'PlaceHolderApiKey', $apiUrlKey | Out-File -encoding ASCII Common_glTF_Exporter/Utils/SettingsConfig.cs
+if (Get-Content Common_glTF_Exporter/Utils/SettingsConfig.cs | Select-String -Pattern 'PlaceHolderApiKey' -Quiet) {
+  throw "API key replacement failed"
+}
.github/workflows/production_actions.yml (2)

94-97: Replacement verification still missing (production)

Production builds should be at least as strict as dev. Fail the job when the version token isn’t found.


98-102: Add check that the API key placeholder was removed

Same recommendation as dev workflow; avoid silently shipping a build with an empty API key.

.github/workflows/dev_actions.yml (2)

69-72: Guard the version substitution with an assertion

Replicate the quick sanity check pattern to ensure the version string is present after replacement.


73-77: Assert API-key placeholder removal

Prevent unnoticed failures by verifying PlaceHolderApiKey is no longer present.

🧹 Nitpick comments (3)
.github/workflows/dev_pull_request.yml (1)

70-70: Remove trailing space – YAML-lint error
Line 70 has trailing whitespace flagged by the linter. Delete it to keep the workflow lint-clean.

.github/workflows/production_actions.yml (1)

97-97: Trailing whitespace triggers YAML-lint
Strip the extra space on line 97.

.github/workflows/dev_actions.yml (1)

72-72: Trailing space detected
Remove the trailing whitespace on line 72 to satisfy YAML-lint.

📜 Review details

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

📥 Commits

Reviewing files that changed from the base of the PR and between 4327b6b and 0d20b9b.

📒 Files selected for processing (4)
  • .github/workflows/dev_actions.yml (1 hunks)
  • .github/workflows/dev_pull_request.yml (1 hunks)
  • .github/workflows/production_actions.yml (1 hunks)
  • Common_glTF_Exporter/Utils/SettingsConfig.cs (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • Common_glTF_Exporter/Utils/SettingsConfig.cs
🧰 Additional context used
🪛 YAMLlint (1.37.1)
.github/workflows/dev_actions.yml

[error] 72-72: trailing spaces

(trailing-spaces)

.github/workflows/dev_pull_request.yml

[error] 70-70: trailing spaces

(trailing-spaces)

.github/workflows/production_actions.yml

[error] 97-97: trailing spaces

(trailing-spaces)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: build

@vnoves vnoves merged commit 55f485e into develop Jul 9, 2025
2 checks passed
This was referenced Jul 10, 2025
@vnoves vnoves deleted the SetEnvironmentalVariableAsConfig branch July 24, 2025 14:47
@coderabbitai coderabbitai bot mentioned this pull request Sep 15, 2025
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