Новый .iss файл для сборки установщика Windows#1690
Conversation
📝 WalkthroughWalkthroughThis PR introduces a complete Inno Setup installer script for OneScript that handles versioned deployments with optional OVM binary management. The installer supports both x86 and x64 architectures, presents a custom checkbox to enable OVM installation, manages directory junctions for version switching, and updates the user's ChangesOneScript Installer with OVM Management
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
install/install.iss (1)
197-209: 💤 Low valueConsider using the existing
PrependUserPathhelper.Lines 197-209 duplicate the logic already implemented in
PrependUserPath. This could be simplified while maintaining the same behavior.♻️ Suggested simplification
- if RegQueryStringValue(HKEY_CURRENT_USER, 'Environment', 'Path', OldPath) then - begin - if not PathContains(OldPath, '%OVM_OSCRIPTBIN%') then - begin - if OldPath = '' then - NewPath := '%OVM_OSCRIPTBIN%' - else - NewPath := '%OVM_OSCRIPTBIN%;' + OldPath; - RegWriteExpandStringValue(HKEY_CURRENT_USER, 'Environment', 'Path', NewPath); - end; - end - else - RegWriteExpandStringValue(HKEY_CURRENT_USER, 'Environment', 'Path', '%OVM_OSCRIPTBIN%'); + PrependUserPath('%OVM_OSCRIPTBIN%');🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@install/install.iss` around lines 197 - 209, The block manually querying and writing the current user's PATH duplicates the existing helper; replace the RegQueryStringValue/RegWriteExpandStringValue logic with a single call to PrependUserPath passing '%OVM_OSCRIPTBIN%'. Locate the duplicated block (the if RegQueryStringValue... else ... end) and remove it, then invoke PrependUserPath('%OVM_OSCRIPTBIN%') so the same behavior is retained via the helper.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In `@install/install.iss`:
- Around line 197-209: The block manually querying and writing the current
user's PATH duplicates the existing helper; replace the
RegQueryStringValue/RegWriteExpandStringValue logic with a single call to
PrependUserPath passing '%OVM_OSCRIPTBIN%'. Locate the duplicated block (the if
RegQueryStringValue... else ... end) and remove it, then invoke
PrependUserPath('%OVM_OSCRIPTBIN%') so the same behavior is retained via the
helper.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: c4028607-41bf-42d7-a1f4-a33fbf084bdb
⛔ Files ignored due to path filters (1)
install/WizardImage.bmpis excluded by!**/*.bmp
📒 Files selected for processing (1)
install/install.iss
|
Я не понял, откуда берется ovm.exe при сборке? Это в смысле не сделано, т.к. не найден пайплайн? Пайплайн лежит в Jenkinsfile |
В пайплайне надо доработать скачивание ovm.exe из репы OVM. А пайплайн я не нашел в том смысле, что в lts есть iss файл, но в Jenkinsfile я не нашел место его сборки |
Новый скрипт сборки установщика. Сделан на основе iss файла из lts
https://github.com/EvilBeaver/OneScript/blob/release/lts/install/install.iss
Пока есть две проблемы:
ovm.exeСейчас в установщик включен сам oscript (bin и lib), а также ovm.exe (при установке можно включить/выключить через флажок). TestApp, СП и доп. установщики пока не включал
Есть видео процесса установки:
3XkBKxtkss.mp4