Пример #1
0
    def test_main_composite_flow_added(self):
        ri, tkl = _index_tk()
        self.assertEqual(0, ri)
        r = op.main_composite(kind='app::MyMain', toolkits=[tkl])
        self.assertIsInstance(r, tuple)
        self.assertIsInstance(r[0], Topology)
        self.assertIsInstance(r[1], op.Invoke)

        # add another independent flow to the topology
        topology = r[0]
        ints = topology.source([1, 2, 3], name='Integers3')
        ints.as_string().print()

        cfg = {}
        if not 'STREAMS_INSTALL' in os.environ:
            cfg[streamsx.topology.context.ConfigParams.SSL_VERIFY] = False

        rc = streamsx.topology.context.submit('BUNDLE', topology, cfg)
        self.assertEqual(0, rc['return_code'])
        shutil.rmtree(tkl)
        self.assertEqual('app._spl.MyMain.sab',
                         os.path.basename(rc['bundlePath']))
        os.remove(rc['bundlePath'])
        if 'CP4D_URL' in os.environ or 'STREAMS_INSTALL' in os.environ or 'STREAMS_REST_URL' in os.environ:
            self.assertEqual('app._spl.MyMain_JobConfig.json',
                             os.path.basename(rc['jobConfigPath']))
            os.remove(rc['jobConfigPath'])
Пример #2
0
    def test_main_composite_wrapped(self):
        ri, tkl = _index_tk()
        self.assertEqual(0, ri)
        wrapper_name = 'Wrapper'
        r = op.main_composite(kind='app::MyMain',
                              toolkits=[tkl],
                              name=wrapper_name)
        self.assertIsInstance(r, tuple)
        self.assertIsInstance(r[0], Topology)
        self.assertIsInstance(r[1], op.Invoke)

        cfg = {}
        if not 'STREAMS_INSTALL' in os.environ:
            cfg[streamsx.topology.context.ConfigParams.SSL_VERIFY] = False

        rc = streamsx.topology.context.submit('BUNDLE', r[0], cfg)
        self.assertEqual(0, rc['return_code'])
        shutil.rmtree(tkl)
        self.assertEqual('app._spl.' + wrapper_name + '.sab',
                         os.path.basename(rc['bundlePath']))

        os.remove(rc['bundlePath'])
        if 'CP4D_URL' in os.environ or 'STREAMS_INSTALL' in os.environ or 'STREAMS_REST_URL' in os.environ:
            self.assertEqual('app._spl.' + wrapper_name + '_JobConfig.json',
                             os.path.basename(rc['jobConfigPath']))
            os.remove(rc['jobConfigPath'])
Пример #3
0
def failed_pe_service():
    topo = Topology('FailedPEService')
    add_toolkit(topo, monitoring_toolkit)
    r = op.main_composite(
        kind='com.ibm.streamsx.monitoring.jobs.services::FailedPEService',
        toolkits=[monitoring_toolkit])
    _launch(r[0])
Пример #4
0
def job_status_service():
    topo = Topology('JobStatusService')
    add_toolkit(topo, monitoring_toolkit)
    r = op.main_composite(
        kind='com.ibm.streamsx.monitoring.jobs.services::JobStatusService',
        toolkits=[monitoring_toolkit])
    _launch(r[0])
Пример #5
0
def metrics_ingest_service():
    topo = Topology('MetricsIngestService')
    add_toolkit(topo, monitoring_toolkit)
    r = op.main_composite(
        kind=
        'com.ibm.streamsx.monitoring.metrics.services::MetricsIngestService',
        toolkits=[monitoring_toolkit])
    _launch(r[0])
def sample_app():
    topo = Topology('SystemMonitorSample')
    add_toolkit(topo, monitoring_toolkit)
    add_toolkit(topo, sample_toolkit)
    r = op.main_composite(
        kind=
        'com.ibm.streamsx.monitoring.system.sample.SystemMonitorSource::Monitor',
        toolkits=[monitoring_toolkit, sample_toolkit])
    _launch(r[0])
Пример #7
0
def sample_app():
    topo = Topology('MetricsSample')
    add_toolkit(topo, monitoring_toolkit)
    add_toolkit(topo, sample_toolkit)
    r = op.main_composite(
        kind=
        'com.ibm.streamsx.monitoring.metrics.sample.MetricsSource::SampleJob',
        toolkits=[monitoring_toolkit, sample_toolkit])
    _launch(r[0])
def sample_app():
    topo = Topology('CrashSample')
    add_toolkit(topo, monitoring_toolkit)
    add_toolkit(topo, sample_toolkit)
    r = op.main_composite(
        kind=
        'com.ibm.streamsx.monitoring.jobs.sample.JobStatusMonitor::SampleJob',
        toolkits=[monitoring_toolkit, sample_toolkit])
    _launch(r[0])
Пример #9
0
def _get_spl_app(cmd_args):
    topo = op.main_composite(kind=cmd_args.main_composite,
        toolkits=cmd_args.toolkits)[0]
    if cmd_args.create_bundle:
        # Mimic what the build service does by indexing
        # any required toolkits including Python operator extraction
        # but only if we can write to it.
        for tk_path in cmd_args.toolkits:
            if os.access(tk_path, os.W_OK):
                streamsx.scripts.extract.main(['-i', tk_path, '--make-toolkit'])
    return _App(topo, {})
Пример #10
0
 def test_main_composite(self):
     ri,tkl = _index_tk()
     self.assertEqual(0, ri)
     r = op.main_composite(kind='app::MyMain', toolkits=[tkl])
     self.assertIsInstance(r, tuple)
     self.assertIsInstance(r[0], Topology)
     self.assertIsInstance(r[1], op.Invoke)
     rc = streamsx.topology.context.submit('BUNDLE', r[0])
     self.assertEqual(0, rc['return_code'])
     shutil.rmtree(tkl)
     os.remove(rc['bundlePath'])
     os.remove(rc['jobConfigPath'])
Пример #11
0
 def test_main_composite(self):
     ri, tkl = _index_tk()
     self.assertEqual(0, ri)
     r = op.main_composite(kind='app::MyMain', toolkits=[tkl])
     self.assertIsInstance(r, tuple)
     self.assertIsInstance(r[0], Topology)
     self.assertIsInstance(r[1], op.Invoke)
     rc = streamsx.topology.context.submit('BUNDLE', r[0])
     self.assertEqual(0, rc['return_code'])
     shutil.rmtree(tkl)
     os.remove(rc['bundlePath'])
     os.remove(rc['jobConfigPath'])
Пример #12
0
def _get_spl_app(cmd_args):
    topo = op.main_composite(kind=cmd_args.main_composite,
        toolkits=cmd_args.toolkits)[0]
    if cmd_args.create_bundle:
        # Mimic what the build service does by indexing
        # any required toolkits including Python operator extraction
        # but only if we can write to it.
        for tk_path in cmd_args.toolkits:
            if os.access(tk_path, os.W_OK):
                streamsx.scripts.extract.main(['-i', tk_path, '--make-toolkit'])
    cfg = {}
    cfg['originator'] = 'streamsxrunner-' + streamsx._streams._version.__version__ + ':spl'
    return _App(topo, cfg)
Пример #13
0
 def test_compile_time_error_checkpoint_operator_driven(self):
     print('\n---------' + str(self))
     if self.eventstore_toolkit_location is not None:
         test_toolkit = 'compile.test'
         self._index_tk(test_toolkit)
         # compile test only
         r = op.main_composite(
             kind=
             'com.ibm.streamsx.eventstore.test::Test_checkpoint_operatorDriven',
             toolkits=[self.eventstore_toolkit_location, test_toolkit])
         rc = streamsx.topology.context.submit('BUNDLE', r[0])
         #expect compile error
         self.assertEqual(1, rc['return_code'])
Пример #14
0
def _get_spl_app(cmd_args):
    topo = op.main_composite(kind=cmd_args.main_composite,
                             toolkits=cmd_args.toolkits)[0]
    if cmd_args.create_bundle and 'STREAMS_INSTALL' in os.environ:
        # Mimic what the build service does by indexing
        # any required toolkits including Python operator extraction
        # but only if we can write to it.
        for tk_path in cmd_args.toolkits:
            if os.access(tk_path, os.W_OK):
                streamsx.scripts.extract.main(
                    ['-i', tk_path, '--make-toolkit'])
    cfg = {}
    cfg['originator'] = 'streamsxrunner-' + streamsx._streams._version.__version__ + ':spl'
    return _App(topo, cfg)
Пример #15
0
def uima_service():
    json_toolkit_location = None # use remote toolkit from build-service
    streams_install = os.environ.get('STREAMS_INSTALL')
    if streams_install is not None:
        json_toolkit_location = streams_install+'/toolkits/com.ibm.streamsx.json'

    topo = Topology('UimaService')
    nlp_toolkit = '../../com.ibm.streamsx.nlp'
    streamsx.spl.toolkit.add_toolkit(topo, nlp_toolkit)
    if json_toolkit_location is not None:
        streamsx.spl.toolkit.add_toolkit(topo, json_toolkit_location)
        toolkits=[nlp_toolkit, json_toolkit_location]
    else:
        toolkits=[nlp_toolkit]
    r = op.main_composite(kind='com.ibm.streamsx.nlp.services::UimaService', toolkits=toolkits)
    _launch(r[0])
Пример #16
0
 def test_main_composite(self):
     si = os.environ['STREAMS_INSTALL']
     tkl = 'tkl_mc_' + str(uuid.uuid4().hex)
     this_dir = os.path.dirname(os.path.realpath(__file__))
     shutil.copytree(os.path.join(this_dir, 'spl_mc'), tkl)
     ri = subprocess.call(
         [os.path.join(si, 'bin', 'spl-make-toolkit'), '-i', tkl])
     self.assertEqual(0, ri)
     r = op.main_composite(kind='app::MyMain', toolkits=[tkl])
     self.assertIsInstance(r, tuple)
     self.assertIsInstance(r[0], Topology)
     self.assertIsInstance(r[1], op.Invoke)
     rc = streamsx.topology.context.submit('BUNDLE', r[0])
     self.assertEqual(0, rc['return_code'])
     shutil.rmtree(tkl)
     os.remove(rc['bundlePath'])
     os.remove(rc['jobConfigPath'])
Пример #17
0
def _create_topo(cmd_args):
    topo,invoke = main_composite(kind=cmd_args.main_composite)
    return topo