SwissDataScienceCenter / renku-project-template

A repository for default Renku project templates.
https://renkulab.io
4 stars 20 forks source link

Add template Workflow File #156

Closed lokijuhy closed 1 year ago

lokijuhy commented 1 year ago

To increase awareness and adoption of file-based workflows on Renku, we want to add a template Renku Workflow file to the base project, so that each new project has a workflow template file ready to go. Hopefully some users open this file out of curiosity and consider using it! For users that don't need workflows, this additional file shouldn't be any inconvenience.

File name: my-workflow.yaml

File contents:

# === Welcome to the template Renku Workflow file! ===
# You can use this file to encode in what order your data processing steps should be run,
# making it easier for you to run your workflow, and for others to understand it!

# === How to use this template ===
# Replace the script and data paths in the template below to match your analysis commands. 
# Then, run `renku run my-workflow.yaml` in a terminal to execute the workflow!
# If you are working in a notebook, run `! renku run my-workflow.yaml` in a notebook cell. 

# === Docs ===
# To learn much more about what you can do with the Renku Workflow File, see our docs:
# https://renku.readthedocs.io/en/stable/topic-guides/workflows/workflow-file.html

name: my-workflow
steps:
  step-one:
    command: python $n $my-script $input-data $output-data
    inputs:
      - my-script:
          path: src/script.py
      - input-data:
          path: data/input/sample_data.csv
    outputs:
      - output-data:
          path: data/output/results.csv
    parameters:
      - n:
        prefix: -n
        value: 10

  # === Adding more steps ===
  # You can add as many steps as you want to your workflow by copy and pasting the step template above
  # TIP: To run just one step from a workflow, simply add the step name to the command, like this:
  #   `renku run my-workflow.yaml make-plot`
  # make-plot:
    # command: python $another-script $output-data $my-plot
    # ...

FYI: To make sure the docs link works, this change should not going live until or at the same time as the 0.22.0 release.