Github Sync issue caused by .github/workflow parse failure

Strange issue with Rasa X.

Fresh Install of latest Rasa X, on a GCP instance.

All running fine, synced correctly with github instance, but during setup of some github action workflows syncing stopped despite the rasa X UI saying it was still in sync.

Managed to find the issue in the logs via:

$ kubectl --namespace rasa logs rasa-rasa-x-856ddd874c-r952g ... Job "run_background_synchronization (trigger: cron[minute='*'], next run at: 2021-01-22 18:33:00 UTC)" raised an exception Traceback (most recent call last): File "/usr/local/lib/python3.8/dist-packages/apscheduler/executors/base.py", line 125, in run_job retval = job.func(*job.args, **job.kwargs) File "/usr/local/lib/python3.8/dist-packages/rasax/community/services/integrated_version_control/git_service.py", line 131, in run_background_synchronization loop.run_until_complete(git_service.synchronize_project(force_data_injection)) File "uvloop/loop.pyx", line 1456, in uvloop.loop.Loop.run_until_complete File "/usr/local/lib/python3.8/dist-packages/rasax/community/services/integrated_version_control/git_service.py", line 1114, in synchronize_project return await self._force_inject_latest_remote_changes() File "/usr/local/lib/python3.8/dist-packages/rasax/community/services/integrated_version_control/git_service.py", line 1174, in _force_inject_latest_remote_changes await self._inject_data() File "/usr/local/lib/python3.8/dist-packages/rasax/community/services/integrated_version_control/git_service.py", line 1146, in _inject_data await rasax.community.initialise.inject_files_from_disk( File "/usr/local/lib/python3.8/dist-packages/rasax/community/initialise.py", line 350, in inject_files_from_disk inject_domain( File "/usr/local/lib/python3.8/dist-packages/rasax/community/initialise.py", line 185, in inject_domain if not rasa.shared.core.domain.Domain.is_domain_file( File "/usr/local/lib/python3.8/dist-packages/rasa/shared/core/domain.py", line 1582, in is_domain_file content = rasa.shared.utils.io.read_yaml_file(filename) File "/usr/local/lib/python3.8/dist-packages/rasa/shared/utils/io.py", line 368, in read_yaml_file return read_yaml(read_file(filename, DEFAULT_ENCODING)) File "/usr/local/lib/python3.8/dist-packages/rasa/shared/utils/io.py", line 349, in read_yaml return yaml_parser.load(content) or {} File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/main.py", line 343, in load return constructor.get_single_data() File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py", line 113, in get_single_data return self.construct_document(node) File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py", line 123, in construct_document for _dummy in generator: File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py", line 723, in construct_yaml_map value = self.construct_mapping(node) File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py", line 440, in construct_mapping return BaseConstructor.construct_mapping(self, node, deep=deep) File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py", line 255, in construct_mapping value = self.construct_object(value_node, deep=deep) File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py", line 146, in construct_object data = self.construct_non_recursive_object(node) File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py", line 181, in construct_non_recursive_object data = constructor(self, node) File "/usr/local/lib/python3.8/dist-packages/rasa/shared/utils/io.py", line 311, in env_var_constructor raise ValueError( ValueError: Error when trying to expand the environment variables in '${{ secrets.GITHUB_TOKEN }}'. Please make sure to also set these environment variables: '['${{']'

so not sure why the sync job / git_service module is picking up the .github/workflow yaml files and is trying to expand these variables. Is this a bug or something that I need to add to a .gitignore style file somewhere to make the rasa X VCS sync not include certain yaml files to sync. ??

I’ve confirmed this is the issue as I’ve removed all actions that use $ {{ }} and the sync works again.

Hey @tomolopolis

There was an issue in Rasa Open Source, we fixed in the latest 2.2.7 release here. Please upgrade and try again!

Hi @degiz - thanks for your response.

I followed the guide to explicitly specify the rasa version Customize Your Deployment

export RASA_VERSION="2.2.7" curl -s get-rasa-x.rasa.com | sudo -E bash

but when I login to new pod, I still see 2.2.5. Do I need to uninstall then re-install Rasa X to have the env var picked up?

I just tried uninstall / re-install via the quick-install script and see 2.2.5

Hi - @degiz any ideas on why the quick-install script isn’t picking up RASA_VERSION var?