Search in sources :

Example 1 with KieServerConfig

use of org.kie.server.api.model.KieServerConfig in project droolsjbpm-integration by kiegroup.

the class KieControllerCrashIntegrationTest method testCrashAfterRegistered.

@Test
public void testCrashAfterRegistered() throws Exception {
    final String SERVER_TEMPLATE_ID = "template-id";
    final String SERVER_NAME = "server-name";
    KieServerEnvironment.setServerId(SERVER_TEMPLATE_ID);
    ServerTemplate serverTemplate = new ServerTemplate(SERVER_TEMPLATE_ID, SERVER_NAME);
    controllerClient.saveServerTemplate(serverTemplate);
    ServerTemplateList instanceList = controllerClient.listServerTemplates();
    assertEquals(1, instanceList.getServerTemplates().length);
    // Register kie server in controller.
    KieServerInfo kieServerInfo = new KieServerInfo(SERVER_TEMPLATE_ID, "1.0.0");
    kieServerInfo.setLocation("http://127.0.0.1:20000");
    kieServerInfo.setMode(KieServerMode.PRODUCTION);
    kieServerInfo.setName(SERVER_NAME);
    KieServerRegistry registry = new KieServerRegistryImpl();
    KieServerStateRepository dummyKieServerStateRepository = new KieServerStateRepository() {

        @Override
        public void store(String serverId, KieServerState kieServerState) {
        }

        @Override
        public KieServerState load(String serverId) {
            KieServerState kieServerState = new KieServerState();
            kieServerState.setControllers(Collections.singleton(TestConfig.getControllerHttpUrl()));
            kieServerState.setConfiguration(new KieServerConfig());
            if (TestConfig.isLocalServer()) {
                kieServerState.getConfiguration().addConfigItem(new KieServerConfigItem(KieServerConstants.CFG_KIE_CONTROLLER_USER, "", null));
                kieServerState.getConfiguration().addConfigItem(new KieServerConfigItem(KieServerConstants.CFG_KIE_CONTROLLER_PASSWORD, "", null));
            } else {
                kieServerState.getConfiguration().addConfigItem(new KieServerConfigItem(KieServerConstants.CFG_KIE_CONTROLLER_USER, TestConfig.getUsername(), null));
                kieServerState.getConfiguration().addConfigItem(new KieServerConfigItem(KieServerConstants.CFG_KIE_CONTROLLER_PASSWORD, TestConfig.getPassword(), null));
            }
            return kieServerState;
        }
    };
    registry.registerStateRepository(dummyKieServerStateRepository);
    KieServerController controller = new DefaultRestControllerImpl(registry);
    controller.connect(kieServerInfo);
    // Check that kie server is registered.
    serverUp.await(5, TimeUnit.SECONDS);
    ServerInstanceKeyList list = controllerClient.getServerInstances(instanceList.getServerTemplates()[0].getId());
    if (list.getServerInstanceKeys().length == 0) {
        // Race condition when health check deleted server instance sooner than we were able to check. Resubmitting server instance again.
        serverUp = new CountDownLatch(1);
        serverDown = new CountDownLatch(1);
        controller.connect(kieServerInfo);
        serverUp.await(5, TimeUnit.SECONDS);
        list = controllerClient.getServerInstances(instanceList.getServerTemplates()[0].getId());
    }
    assertNotNull(list.getServerInstanceKeys());
    assertEquals(1, list.getServerInstanceKeys().length);
    // Check that kie server is deregistered automatically.
    serverDown.await(5, TimeUnit.SECONDS);
    list = controllerClient.getServerInstances(instanceList.getServerTemplates()[0].getId());
    assertNotNull(list.getServerInstanceKeys());
    assertEquals(0, list.getServerInstanceKeys().length);
}
Also used : KieServerController(org.kie.server.controller.api.KieServerController) KieServerStateRepository(org.kie.server.services.impl.storage.KieServerStateRepository) ServerTemplateList(org.kie.server.controller.api.model.spec.ServerTemplateList) KieServerInfo(org.kie.server.api.model.KieServerInfo) KieServerConfig(org.kie.server.api.model.KieServerConfig) KieServerConfigItem(org.kie.server.api.model.KieServerConfigItem) CountDownLatch(java.util.concurrent.CountDownLatch) KieServerState(org.kie.server.services.impl.storage.KieServerState) ServerTemplate(org.kie.server.controller.api.model.spec.ServerTemplate) KieServerRegistry(org.kie.server.services.api.KieServerRegistry) ServerInstanceKeyList(org.kie.server.controller.api.model.runtime.ServerInstanceKeyList) DefaultRestControllerImpl(org.kie.server.services.impl.controller.DefaultRestControllerImpl) KieServerRegistryImpl(org.kie.server.services.impl.KieServerRegistryImpl) Test(org.junit.Test)

Example 2 with KieServerConfig

use of org.kie.server.api.model.KieServerConfig in project droolsjbpm-integration by kiegroup.

the class KieControllerValidationIntegrationTest method init.

@Before
public void init() {
    dummyKieServerStateRepository = new KieServerStateRepository() {

        @Override
        public void store(String serverId, KieServerState kieServerState) {
        }

        @Override
        public KieServerState load(String serverId) {
            KieServerState kieServerState = new KieServerState();
            kieServerState.setControllers(Collections.singleton(TestConfig.getControllerHttpUrl()));
            kieServerState.setConfiguration(new KieServerConfig());
            if (TestConfig.isLocalServer()) {
                kieServerState.getConfiguration().addConfigItem(new KieServerConfigItem(KieServerConstants.CFG_KIE_CONTROLLER_USER, "", null));
                kieServerState.getConfiguration().addConfigItem(new KieServerConfigItem(KieServerConstants.CFG_KIE_CONTROLLER_PASSWORD, "", null));
            } else {
                kieServerState.getConfiguration().addConfigItem(new KieServerConfigItem(KieServerConstants.CFG_KIE_CONTROLLER_USER, TestConfig.getUsername(), null));
                kieServerState.getConfiguration().addConfigItem(new KieServerConfigItem(KieServerConstants.CFG_KIE_CONTROLLER_PASSWORD, TestConfig.getPassword(), null));
            }
            return kieServerState;
        }
    };
    registry = new KieServerRegistryImpl();
    registry.registerStateRepository(dummyKieServerStateRepository);
}
Also used : KieServerState(org.kie.server.services.impl.storage.KieServerState) KieServerStateRepository(org.kie.server.services.impl.storage.KieServerStateRepository) KieServerConfig(org.kie.server.api.model.KieServerConfig) KieServerConfigItem(org.kie.server.api.model.KieServerConfigItem) KieServerRegistryImpl(org.kie.server.services.impl.KieServerRegistryImpl) Before(org.junit.Before)

Example 3 with KieServerConfig

use of org.kie.server.api.model.KieServerConfig in project droolsjbpm-integration by kiegroup.

the class KeyStoreHelperUtilTest method testConfigPassword.

@Test
public void testConfigPassword() {
    final KieServerConfig serverConfig = new KieServerConfig();
    final String defaultPassword = "default";
    serverConfig.addConfigItem(new KieServerConfigItem(KieServerConstants.CFG_KIE_CONTROLLER_PASSWORD, defaultPassword, null));
    final String password = loadControllerPassword(serverConfig);
    assertEquals(defaultPassword, password);
}
Also used : KieServerConfig(org.kie.server.api.model.KieServerConfig) KieServerConfigItem(org.kie.server.api.model.KieServerConfigItem) Test(org.junit.Test)

Example 4 with KieServerConfig

use of org.kie.server.api.model.KieServerConfig in project droolsjbpm-integration by kiegroup.

the class KeyStoreHelperUtilTest method testConfigDefaultPassword.

@Test
public void testConfigDefaultPassword() {
    final KieServerConfig serverConfig = new KieServerConfig();
    final String password = loadControllerPassword(serverConfig);
    assertEquals("kieserver1!", password);
}
Also used : KieServerConfig(org.kie.server.api.model.KieServerConfig) Test(org.junit.Test)

Example 5 with KieServerConfig

use of org.kie.server.api.model.KieServerConfig in project droolsjbpm-integration by kiegroup.

the class KieServerStateTest method testLoadKieServerState.

@Test
public void testLoadKieServerState() {
    KieServerStateRepository repository = new KieServerStateFileRepository(REPOSITORY_DIR);
    String serverId = UUID.randomUUID().toString();
    KieServerState state = repository.load(serverId);
    Assert.assertNotNull(state);
    KieServerConfig config = state.getConfiguration();
    Assert.assertNotNull(config);
    Assert.assertNull(config.getConfigItemValue(KieServerConstants.CFG_PERSISTANCE_DIALECT));
    Assert.assertNull(config.getConfigItemValue(KieServerConstants.CFG_PERSISTANCE_DS));
    Assert.assertNull(config.getConfigItemValue(KieServerConstants.CFG_PERSISTANCE_TM));
    System.setProperty(KieServerConstants.CFG_PERSISTANCE_DIALECT, "org.hibernate.dialect.PostgreSQLDialect");
    System.setProperty(KieServerConstants.CFG_PERSISTANCE_DS, "jdbc/jbpm");
    System.setProperty(KieServerConstants.CFG_PERSISTANCE_TM, "JBossTS");
    repository.store(serverId, state);
    repository = new KieServerStateFileRepository(REPOSITORY_DIR);
    state = repository.load(serverId);
    Assert.assertNotNull(state);
    config = state.getConfiguration();
    Assert.assertNotNull(config);
    Assert.assertEquals("org.hibernate.dialect.PostgreSQLDialect", config.getConfigItemValue(KieServerConstants.CFG_PERSISTANCE_DIALECT));
    Assert.assertEquals("jdbc/jbpm", config.getConfigItemValue(KieServerConstants.CFG_PERSISTANCE_DS));
    Assert.assertEquals("JBossTS", config.getConfigItemValue(KieServerConstants.CFG_PERSISTANCE_TM));
}
Also used : KieServerState(org.kie.server.services.impl.storage.KieServerState) KieServerStateFileRepository(org.kie.server.services.impl.storage.file.KieServerStateFileRepository) KieServerStateRepository(org.kie.server.services.impl.storage.KieServerStateRepository) KieServerConfig(org.kie.server.api.model.KieServerConfig) Test(org.junit.Test)

Aggregations

KieServerConfig (org.kie.server.api.model.KieServerConfig)25 KieServerState (org.kie.server.services.impl.storage.KieServerState)17 KieServerConfigItem (org.kie.server.api.model.KieServerConfigItem)9 KieContainerResource (org.kie.server.api.model.KieContainerResource)7 Test (org.junit.Test)6 KieServerStateRepository (org.kie.server.services.impl.storage.KieServerStateRepository)6 HashSet (java.util.HashSet)5 MarshallingException (org.kie.server.api.marshalling.MarshallingException)5 KieControllerNotConnectedException (org.kie.server.services.api.KieControllerNotConnectedException)4 KieControllerNotDefinedException (org.kie.server.services.api.KieControllerNotDefinedException)4 File (java.io.File)3 IOException (java.io.IOException)3 ArrayList (java.util.ArrayList)3 List (java.util.List)3 Map (java.util.Map)3 KieScannerResource (org.kie.server.api.model.KieScannerResource)3 KieServerSetup (org.kie.server.controller.api.model.KieServerSetup)3 ContainerConfig (org.kie.server.controller.api.model.spec.ContainerConfig)3 ContainerSpec (org.kie.server.controller.api.model.spec.ContainerSpec)3 ProcessConfig (org.kie.server.controller.api.model.spec.ProcessConfig)3