In [ ]:
import luigi

import requests

# This is your service IP address.  You need to modify this!
BASE = 'http://192.168.99.100:5000/'

class Build(luigi.WrapperTask):

    def run(self):
        print("Finished----------------------")

    def requires(self):
        for i in range(10):
            yield GenerateImage(i)


class GenerateImage(luigi.Task):
    
    num = luigi.IntParameter()
 
    def requires(self):
        return []
 
    def output(self):
        return luigi.LocalTarget("graph_image_" + str(self.num) + ".svg")
    
    # Helper function to POST a local CX file
    def post_file(self, url, file_name):
        with open(file_name, 'r') as f:
            return requests.post(url, data=f)
 
    def run(self):
        with self.output().open('w') as f:
            svg_image_url = BASE + 'image/svg'
            res = self.post_file(svg_image_url, 'gal_filtered_2.json')
            f.write(res.content.decode('utf-8'))

if __name__ == '__main__':
    luigi.run(['Build', '--workers', '10', '--local-scheduler'])