Skip to content

Instantly share code, notes, and snippets.

@MatthewRalston
Created March 1, 2023 21:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save MatthewRalston/b6049e34812d36cfa554036f05ae1d3b to your computer and use it in GitHub Desktop.
Save MatthewRalston/b6049e34812d36cfa554036f05ae1d3b to your computer and use it in GitHub Desktop.
Troubleshooting v1.8 - v2.0 kfp syntax, specifying a gzip decompression schema
#!/bin/env python
import os
import sys
import argparse
from pathlib import Path
import gzip
import kfp.dsl as dsl
import kfp.components as comp
import kfp
import logging
global logger
logger = None
def get_root_logger(level):
levels=[logging.WARNING, logging.INFO, logging.DEBUG]
if level < 0 or level > 2:
raise TypeError("{0}.get_root_logger expects a verbosity between 0-2".format(__file__))
logging.basicConfig(level=levels[level], format="%(levelname)s: %(asctime)s %(funcName)s L%(lineno)s| %(message)s", datefmt="%Y/%m/%d %I:%M:%S")
root_logger = logging.getLogger()
return root_logger
components_dir = os.path.join(os.path.dirname(__file__), "components")
gunzip = comp.load_component_from_file(os.path.join(components_dir, "gunzip.yaml"))
echo = comp.load_component_from_file(os.path.join(components_dir, "echo.yaml"))
is_unzip_needed = comp.load_component_from_file(os.path.join(components_dir, "is_unzip_needed.yaml"))
@dsl.pipeline(
name='kubeflow-barebone-demo',
description='kubeflow demo with minimal setup'
)
def rnaseq_pipeline(fastq1:str):
# Step 1: training component
#echo1 = echo(infile=fastq1).set_cpu_request('1').set_cpu_limit('1').set_memory_request('512Mi').set_memory_limit('512Mi')
#Path(str(decompressed_fastq1)).parent.mkdir(parents=True, exist_ok=True)
gunzip1 = gunzip(infile=fastq1).set_cpu_request('1').set_cpu_limit('1').set_memory_request('512Mi').set_memory_limit('512Mi')
if __name__ == "__main__":
logger = get_root_logger(2)
kfp.compiler.Compiler().compile(rnaseq_pipeline, 'pipeline.yaml')
# parser = argparse.ArgumentParser()
# parser.add_argument('--fastq1', help="Input Fastq 1",required=True)
# parser.add_argument('--decompressed-fastq1', help="Decompressed Fastq 1",required=True)
# parser.add_argument('-v, --verbose', help="Prints warnings to console by default",default=0, action="count")
# args = parser.parse_args()
# # Set up the root logger
# # Main routine
# rnaseq_pipeline(args.fastq1, args.decompressed_fastq1)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment