The GitHub Connector's Scheduled Tasks feature allows you to automate actions that would otherwise need to be triggered manually. This feature lets you schedule routine tasks like synchronizing updated translations to GitHub.
Currently, this feature only supports Translation Export tasks. Support for additional task types is planned for a future release.
Scheduled Translation Export
When translations for new content are completed, the GitHub Connector automatically delivers that content back to GitHub. However, updates to published translations are not pushed back to GitHub without further action. Scheduled Tasks are handy here, providing automated translation delivery outside the regular connector flow.
Instead of logging in and manually triggering a push from our dashboard, you can push translated files on a predefined schedule, ensuring that translations in Smartling are synchronized with those in GitHub.
Example scenarios:
- Ensuring that nightly test builds always have the latest translations
- Capturing adjustments made during QA activities
- Preparing for a new application release
In the typical flow, the connector sends completed translations back to GitHub once a job is completed in Smartling.
- In Pull Request or Single Branch mode, translation delivery occurs whenever a Smartling job is completed.
-
In On-Demand mode, translation delivery occurs when you trigger an export of translated files to your repository.
- Using Scheduled Tasks, you can set up a translation export task to automate translation delivery outside the normal connector flow.
How to create a scheduled translation export
- In Smartling, go to your GitHub Connector project.
- Click the GitHub Activity tab. Within this tab select Scheduled Tasks.
- Click the Add Schedule button at the top right.
- Insert the following:
- Schedule Action Type (Translation Export is selected by default)
- Schedule Name
- Configuration Set
‣ The configuration set must be enabled to be selectable from the dropdown menu. - Source Branch
‣ This is the branch used to sync the translated files. -
Language
‣ Select the target languages for export. - Source File Pattern
‣ By default, all files usually captured by your configuration set are included in the translation export.
‣ This pattern can be used to target a subset of files that should be included in the export. The syntax is the same as what is used to define paths in a configuration set.
‣ Note that this pattern is only applied to files captured by the configuration set you selected.
Example:
If your include files path for your configuration set is**/loc_files/en/*.json
and you input**/en/*.resx
as the Source File Pattern, nothing will happen as the pattern can't be applied to the include files path. -
Translation State
‣ Select Current or Published.
- Under Repeat every select which days you'd like the export to run.
- Under Time choose the time you'd like the export to run.
‣ Options include: exact time, every 2 hours, every 3 hours, every 6 hours, or every 12 hours - Once finished, click Save Schedule.
View Scheduled Tasks
You can view all your Scheduled Tasks in the GitHub Activity tab, including the status of each task, the most recent run time, and the next scheduled run time.
Clicking on the source or translated file links for the most recent run will give you detailed results for that run.
Using the "View History" action on the schedule shows you the full history of runs for that schedule.
The connector can't deliver any new files if GitHub already has the latest translations.
The schedule will show as Completed, but the same schedule will show an Error state on the View History page.
Scheduled Tasks Actions
Click the ellipsis menu next to a scheduled task to run, edit, disable, delete, or view its history.
Disabling a configuration set will also disable any scheduled tasks connected to it.
View History
This page shows you the result every time a schedule runs. If needed, you can clear the default filters and view the results for every schedule.
You can quickly see the following information:
- The overall outcome (e.g., Delivered, Error)
- The target branch were translations were delivered
- A link to the delivery pull request
- A list of the source and translated files that were delivered and their individual statuses