Skip to content

Automate Translation/Localization Building #58

@gbakeman

Description

@gbakeman

WinNUT currently relies on the Multilingual App Toolkit for localization. .RESX and .XLIFF files are synchronized and cross-compiled during the build process. MAT processing is only required if strings are added or modified in Form elements, or translations have been modified.

Process

  • Only run this workflow when changes on a branch are proposed
  • Install the MAT extension for VS2022
  • Run build
  • Commit resulting changes back to branch

It was originally thought that the extension installation required an administrator's approval of a UAC prompt to continue. The GitHub-hosted runner runs commands under a pseudo-administrator account, which seemed to be causing the install process to halt and require acknowledgement of the UAC prompt. I couldn't find any combination of switches at the time for VSIXInstaller to make this work in the build environment. I opened a VS Developer Community issue hoping to mitigate this (it was promptly closed.) I also have requested that GitHub add the extension to the runner images (also closed.) Later on, it appeared that the extension does end up installing, but it takes about 20 minutes to do so.

I attempted to setup an Azure free tier VM, but used the wrong image and found out that it was incompatible with the toolkit extension (Windows Server Core does not have UI components and other libraries necessary to install Visual Studio, which is required by the MAT.) Azure still remains an option but required a lot of effort to get off the ground last time.

Work continues to understand why the toolkit takes a long time to install on GitHub runners.

  • Find some way to elevate permissions of the runner process (like How to give extra privileges to the runner over the self-hosted Windows server? actions/runner#408, although the suggestion solution doesn't seem to work in the current environment)
    • Not actually the issue
  • Find a fix for the long extension installation issue
  • Attempt to install the VS2017+ edition of the extension, which may not require admin rights (needs verification)
    • Likely not going to work, but may be worth testing if only to speed up the installation.
  • Complete research in understanding why MAT extension installation takes a long time in GitHub runners
  • Setup another Azure build environment with the correct image (last ditch effort)

References

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request🤖CI/CDIssues and PRs that concern continuous integration and deployment.

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions