apache / apache/dolphinscheduler-sdk-python
[impv] Auto create resource when set resource in task if there are exist files in local system
- Langage dominant
- Python
- Étoiles
- 71
- Forks
- 26
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
```python
# [start workflow]
from pydolphinscheduler.core import Workflow
from pydolphinscheduler.core.resource import Resource
from pydolphinscheduler.tasks import Shell
dependence = "dependence.py"
main = "main.py"
with Workflow(
name="multi_resources_example",
# [start create_new_resources]
resource_list=[
Resource(
name=dependence,
content="from datetime import datetime\nnow = datetime.now()",
),
Resource(name=main, content="from dependence import now\nprint(now)"),
],
# [end create_new_resources]
) as workflow:
# [start use_exists_resources]
task_use_resource = Shell(
name="use-resource",
command=f"python {main}",
resource_list=[
dependence,
main,
],
)
# [end use_exists_resources]
workflow.run()
# [end workflow]
```
Change the above usage to the following usage
```python
# [start workflow]
from pydolphinscheduler.core import Workflow
from pydolphinscheduler.core.resource import Resource, LocalResource
from pydolphinscheduler.tasks import Shell
dependence = "dependence.py"
main = "main.py"
with Workflow(
name="multi_resources_example",
) as workflow:
# [start use_exists_resources]
task_use_resource = Shell(
name="use-resource",
command=f"python {main}",
resource_list=[
LocalResource('dependence.py'),
LocalResource('main.py'),
LocalResource('*.py'),
],
)
# [end use_exists_resources]
workflow.run()
# [end workflow]
```
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par les points d’entrée Resource et LocalResource ainsi que par l’utilisation de Shell resource_list présentée dans l’issue. Suivez la manière dont les noms de ressources locales et les motifs glob sont traités lors de la création d’une tâche. Le travail est considéré comme terminé lorsque des fichiers locaux peuvent être fournis via LocalResource, y compris '*.py', sans définir au préalable une ressource Workflow resource_list.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- api
- Type d'issue
- Fonctionnalité
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100