Job Scheduling (shipyard-jmtask) Error Message: "ModuleNotFoundError: No module named 'ruamel'"
See original GitHub issueI’m looking to create a scheduled job and have had no problem with the configuration in the past. Recently, I’ve had a problem with ‘shipyard-jmtask’ with nearly the same script (changes in environmental variables). The error associated with the task is:
2019-08-19 23:28:03,087Z DEBUG __main__:_create_credentials:109 creating batch client for account url: https://oippltanabatch410q.eastus2.batch.azure.com/
2019-08-19 23:28:03,098Z DEBUG __main__:main:245 loading pickled task map
Traceback (most recent call last):
File "/opt/batch-shipyard/recurrent_job_manager.py", line 273, in <module>
main()
File "/opt/batch-shipyard/recurrent_job_manager.py", line 247, in main
task_map = pickle.load(f, fix_imports=True)
ModuleNotFoundError: No module named 'ruamel'
Here is my configuration scripts for the scheduled job. Actual names are changed for security reasons.
config.yaml:
batch_shipyard:
storage_account_settings: myBlobStorage
storage_entity_prefix: shipyard
generated_sas_expiry_days: null
autogenerated_task_id:
prefix: qa-task-
zfill_width: 5
delay_docker_image_preload: false
global_resources:
docker_images:
- repository.io/ETL_image:v1
- repository.io/Modeling_image:v1
credentials.yaml
credentials:
batch:
account_key: ALl************************************************************
account_service_url: https://**************.eastus2.batch.azure.com
storage:
MyBlobStorage:
account: MyBlobStorage
account_key: tM*************************************************************
endpoint: core.windows.net
docker_registry:
repo.azurecr.io:
username: oip************
password: rO*********************
job.yaml
job_specifications:
- id: myJobId
auto_complete: true
environment_variables:
version: version 2019.08.21.12:00-2.0
logging_level: INFO
jobName: Myjob
store_name: oip***********
vault_uri: https://**********.vault.azure.net/
app_id: b65**********************
app_secret: Kw+**********************
tenant_ID: c1e**********************
parquet_filename: Release1_
max_task_retries: 1
max_wall_time: 24:00:00
retention_time: 24:00:00
priority: 100
user_identity:
default_pool_admin: false
auto_pool:
keep_alive: false
pool_lifetime: job
recurrence:
schedule:
do_not_run_after: null
do_not_run_until: null
recurrence_interval: 24:00:00
start_window: null
job_manager:
allow_low_priority_node: true
monitor_task_completion: true
run_exclusive: false
allow_run_on_missing_image: true
remove_container_after_exit: true
tasks:
- id: etl_task
docker_image: repository.io/ETL_image:v1
environment_variables:
server_address: oip******************.database.windows.net
database_name: DatabaseName
sql_secret_name: DatabaseAuthenticationSecret
api_client_id: 62************************
api_client_secret: d************************
api_tenant_id: c************************
api_authority_url: https://login.microsoftonline.com/c************************
api_url: https://************************
output_path: wsi/Release1/Input/
input_path: /IOT/Measurement/
prp_log_path: /PRP20/etl_logs/
number_of_days_back: 7
number_of_days_back_temperature: 60
end_date_override: ''
csv_header: '[...]'
result_design: '[...]'
max_task_retries: 1
max_wall_time: 10:00:00
retention_time: 24:00:00
output_data:
azure_storage:
- storage_account_settings: MyBlobStorage
remote_path: output/dir
local_path: null
is_file_share: false
blobxfer_extra_options: null
remove_container_after_exit: true
additional_docker_run_options: [-w=/app]
default_working_dir: container
- id: modeling_task
docker_image: repository.io/Modeling_image:v1
environment_variables:
input_path: wsi/Release1/Input/Release1_
output_path: wsi/Release1/Output
file_name: RiskModelResult_
threshold: 0.4
pickle_path: wsi/*
client_secret: Kw+****************************
client_ID: b65*****************
max_task_retries: 1
max_wall_time: 02:00:00
retention_time: 24:00:00
depends_on:
- etl_task
pool.yaml
pool_specification:
id: qa-pool
vm_configuration:
platform_image:
publisher: microsoft-azure-batch
offer: ubuntu-server-container
sku: 16-04-lts
version: latest
native: false
license_type: null
vm_size: Standard_E2s_v3
vm_count:
dedicated: 1
low_priority: 0
resize_timeout: 00:15:00
inter_node_communication_enabled: false
reboot_on_start_task_failed: false
attempt_recovery_on_unusable: false
upload_diagnostics_logs_on_unusable: true
block_until_all_global_resources_loaded: true
transfer_files_on_pool_creation: false
Any help with this is greatly appreciated!
Issue Analytics
- State:
- Created 4 years ago
- Comments:7
Top Results From Across the Web
[Fixed] ModuleNotFoundError: No module named 'ruamel-yaml'
Quick Fix: Python raises the ImportError: No module named 'ruamel-yaml' when it cannot find the library ruamel-yaml . The most frequent source of...
Read more >ModuleNotFoundError: No module named 'ruamel' · Issue #106
With certain new versions of pip and conda the ruamel.yaml installation fails. This is a problem with conda: conda/conda#10178.
Read more >ModuleNotFoundError: No module named 'ruamel'
In my case, I was installing this with pip3 install ruamel.yaml , and it was puting the package in /usr/local/lib/python3.9/site-packages/ ...
Read more >Fix ModuleNotFoundError: No module named 'ruamel' When ...
Upon seeing that seemingly innocuous code, you (at some point) install azureml.core from pypi using pip install like you're supposed to.
Read more >1842439 – No module named 'ruamel' - Red Hat Bugzilla
Bug 1842439 - No module named 'ruamel' ... in <module> from ruamel import yaml ModuleNotFoundError: No module named 'ruamel' Usage: curator [OPTIONS] ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Thanks @alfpark for the heads up about the sensitive info, I changed the secret out. I did try the environment variables with the strings and that seemed to work! The shipyard-jmtask completed and the other two task have begun. Thank you so much for your help!
Ok, I was able to repro this.
To mitigate this before a hotfix, please ensure all of your environment variable values are strings (in yaml). For example, the
threshold
env var: