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

Automate plugin translation process #6104

Open
engahmeds3ed opened this issue Aug 15, 2023 · 4 comments · May be fixed by #6538
Open

Automate plugin translation process #6104

engahmeds3ed opened this issue Aug 15, 2023 · 4 comments · May be fixed by #6538
Assignees

Comments

@engahmeds3ed
Copy link
Contributor

Is your feature request related to a problem? Please describe.
We have a process (mostly manual process) to handle WP Rocket translations as follows:-

  1. Starting from the develop branch when we finish the release development and start the alpha release.
  2. Merge develop branch into transifex branch.
  3. Checkout transifex branch.
  4. Update bot file with new translatable strings using poedit (or WP CLI, will mention that later).
  5. Wait till transifex finalize its work of translations.
  6. With the final release (PR to merge develop into trunk), call bin/makemo.sh script to generate mo files.
  7. Merge transifex branch into develop
  8. Everything is now on develop branch and available for the release.

Describe the solution you'd like
We need to create github workflow(s) to automate this part.

@WordPresseur
Copy link
Contributor

Transifex automatic translations are rarely accurate at the first shot and still need to be reviewed by a human, especially for our features' names.

@wordpressfan
Copy link
Contributor

Transifex automatic translations are rarely accurate at the first shot and still need to be reviewed by a human, especially for our features' names.

Sorry for the late reply here, we are trying to automate the process that we already do manually so you still can go to transifex and update the translation as u would like then with WPR release all of those translations will be grabbed as it's in transifex.

@wordpressfan
Copy link
Contributor

wordpressfan commented Mar 26, 2024

Grooming

Alpha release process

The Idea is to create a PR for the release from develop into trunk with the name Release/x.x.x and the changelog as a PR description then once we create it we will wait till tests pass and dynamic lists commit is added then we need to manually add the label release-alpha once we add this label we will do the following steps:

  1. Checkout transifex branch
  2. Merge develop into transifex
  3. Install NPM dependencies
  4. Call the command npm run makepot to update pot file
  5. Call the shell script bin/makemo.sh (this point needs to be validated to make sure that the msgfmt is there in the OS because we depend on it inside this shell script).
  6. Commit the changes and push into transifex
  7. Checkout develop
  8. Merge transifex into develop
  9. Create a new tag from develop branch and get the version info from the PR (we need to set naming convension for example Release/x.x.x)
  10. Then this will trigger our deployment workflow that we already have.

For this, we need to create a github workflow with the trigger of pull_request labeled

Final release process

The trigger for this process will be manual:

  1. Change the plugin version in the main WPR file and push this commit into develop.
  2. Merge the release PR that we created above.
  3. Create a release/tag from trunk
  4. This will trigger our deployment workflow that we already have.

Here I'll mostly use github cli commands inside the workflow.

@wordpressfan wordpressfan self-assigned this Mar 26, 2024
@wordpressfan wordpressfan linked a pull request Apr 2, 2024 that will close this issue
22 tasks
@MathieuLamiot
Copy link
Contributor

Pending next alpha to test & compare with the manual process.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants