List of usage examples for org.springframework.ide.eclipse.boot.dash.cloudfoundry CloudFoundryBootDashModel getRunTarget
@Override
public CloudFoundryRunTarget getRunTarget()
From source file:org.springframework.ide.eclipse.boot.dash.cloudfoundry.CloudAppDashElement.java
protected void doRestartWithRemoteClient(RunState runningOrDebugging, UserInteractions ui, CancelationToken cancelationToken, IProgressMonitor monitor) throws Exception { CloudFoundryBootDashModel model = getCloudModel(); Map<String, String> envVars = model.getRunTarget().getClient().getApplicationEnvironment(getName()); if (getProject() == null) { ExceptionUtil.coreException(new Status(IStatus.ERROR, BootDashActivator.PLUGIN_ID, "Local project not associated to CF app '" + getName() + "'")); }/* ww w . j av a 2 s .co m*/ new SetHealthCheckOperation(this, HealthChecks.HC_NONE, ui, /* confirmChange */true, cancelationToken) .run(monitor); if (!DevtoolsUtil.isEnvVarSetupForRemoteClient(envVars, DevtoolsUtil.getSecret(getProject()))) { // Let the push and debug operation resolve default properties CloudApplicationDeploymentProperties deploymentProperties = null; pushAndDebug(deploymentProperties, runningOrDebugging, ui, cancelationToken, monitor); /* * Restart and push op resets console anyway, no need to reset it * again */ } else if (getRunState() == RunState.INACTIVE) { restartOnly(ui, cancelationToken, monitor); } new RemoteDevClientStartOperation(model, getName(), runningOrDebugging, cancelationToken).run(monitor); }
From source file:org.springframework.ide.eclipse.boot.dash.cloudfoundry.CloudAppDashElement.java
public CloudAppDashElement(CloudFoundryBootDashModel model, String appName, IPropertyStore modelStore) { super(model, new CloudAppIdentity(appName, model.getRunTarget())); this.cancelationTokens = new CancelationTokens(); this.cloudTarget = model.getRunTarget(); this.cloudModel = model; IPropertyStore backingStore = PropertyStoreFactory.createSubStore("A" + getName(), modelStore); this.persistentProperties = PropertyStoreFactory.createApi(backingStore); addElementNotifier(baseRunState);/* w w w . j a va2 s . c om*/ addElementNotifier(appData); addElementNotifier(healthCheckOverride); this.addDisposableChild(baseRunState); }
From source file:org.springframework.ide.eclipse.boot.dash.cloudfoundry.CloudAppDashElement.java
@Override public void delete(UserInteractions ui) { CloudFoundryBootDashModel model = getCloudModel(); CloudAppDashElement cloudElement = this; cloudElement.cancelOperations();/* w w w. j a v a2 s . co m*/ CancelationToken cancelToken = cloudElement.createCancelationToken(); CloudApplicationOperation operation = new CloudApplicationOperation("Deleting: " + cloudElement.getName(), model, cloudElement.getName(), cancelToken) { @Override protected void doCloudOp(IProgressMonitor monitor) throws Exception, OperationCanceledException { // Delete from CF first. Do it outside of synch block to avoid // deadlock model.getRunTarget().getClient().deleteApplication(appName); model.getElementConsoleManager().terminateConsole(cloudElement.getName()); model.removeApplication(cloudElement.getName()); cloudElement.setProject(null); } }; // Allow deletions to occur concurrently with any other application // operation operation.setSchedulingRule(null); getCloudModel().runAsynch(operation, ui); }
From source file:org.springframework.ide.eclipse.boot.dash.test.CloudFoundryBootDashModelIntegrationTest.java
@Test public void testCreateCfTarget() throws Exception { CloudFoundryBootDashModel target = harness.createCfTarget(CfTestTargetParams.fromEnv()); assertNotNull(target);//from ww w. ja v a 2 s . co m assertNotNull(target.getRunTarget().getTargetProperties().getCredentials().getPassword()); assertEquals(1, harness.getCfRunTargetModels().size()); }
From source file:org.springframework.ide.eclipse.boot.dash.test.CloudFoundryBootDashModelIntegrationTest.java
@Test public void testCreateCfTargetAndStoreToken() throws Exception { CFClientParams targetParams = CfTestTargetParams.fromEnv(); CloudFoundryBootDashModel target = harness.createCfTarget(targetParams, StoreCredentialsMode.STORE_TOKEN); assertNotNull(target);//from w w w .ja va2 s. c o m assertTrue(target.isConnected()); assertNotNull(target.getRunTarget().getTargetProperties().getCredentials().getRefreshToken()); assertEquals(1, harness.getCfRunTargetModels().size()); }
From source file:org.springframework.ide.eclipse.boot.dash.test.CloudFoundryBootDashModelMockingTest.java
@Test public void testCreateCfTarget() throws Exception { CFClientParams targetParams = CfTestTargetParams.fromEnv(); clientFactory.defSpace(targetParams.getOrgName(), targetParams.getSpaceName()); CloudFoundryBootDashModel target = harness.createCfTarget(targetParams, StoreCredentialsMode.STORE_PASSWORD); assertNotNull(target);/*from w w w .j a va 2 s .c o m*/ assertNotNull(target.getRunTarget().getTargetProperties().getCredentials().getPassword()); assertEquals(1, harness.getCfRunTargetModels().size()); }
From source file:org.springframework.ide.eclipse.boot.dash.test.CloudFoundryBootDashModelMockingTest.java
@Test public void testCreateCfTargetAndStorePassword() throws Exception { CFClientParams targetParams = CfTestTargetParams.fromEnv(); {/*from w w w . j av a 2 s . co m*/ clientFactory.defSpace(targetParams.getOrgName(), targetParams.getSpaceName()); CloudFoundryBootDashModel target = harness.createCfTarget(targetParams, StoreCredentialsMode.STORE_PASSWORD); assertNotNull(target); assertNotNull(target.getRunTarget().getTargetProperties().getCredentials().getPassword()); assertEquals(1, harness.getCfRunTargetModels().size()); SecuredCredentialsStore store = harness.getCredentialsStore(); assertTrue(store.isUnlocked()); } harness.reload(); { CloudFoundryBootDashModel target = harness.getCfTargetModel(); String expectedPass = targetParams.getCredentials().getPassword(); assertNotNull(target); String password = target.getRunTarget().getTargetProperties().getCredentials().getPassword(); assertEquals(expectedPass, password); assertEquals(StoreCredentialsMode.STORE_PASSWORD, target.getRunTarget().getTargetProperties().getStoreCredentials()); waitForJobsToComplete(); assertTrue(target.isConnected()); //should auto connect. verifyZeroInteractions(ui); //should not prompt for password (but used stored pass). { SecuredCredentialsStore store = harness.getCredentialsStore(); assertTrue(store.isUnlocked()); String key = harness.secureStoreKey(target); String storedCred = store.getCredentials(key); assertEquals(expectedPass, storedCred); } { IPropertyStore store = harness.getPrivateStore(); String key = harness.privateStoreKey(target); String storedCred = store.get(key); assertNull(storedCred); } } }
From source file:org.springframework.ide.eclipse.boot.dash.test.CloudFoundryBootDashModelMockingTest.java
@Test public void testCreateCfTargetAndForgetPassword() throws Exception { CFClientParams targetParams = CfTestTargetParams.fromEnv(); clientFactory.defSpace(targetParams.getOrgName(), targetParams.getSpaceName()); {//from w w w . java2 s .c om CloudFoundryBootDashModel target = harness.createCfTarget(targetParams, StoreCredentialsMode.STORE_NOTHING); assertNotNull(target); assertNotNull(target.getRunTarget().getTargetProperties().getCredentials().getPassword()); assertEquals(1, harness.getCfRunTargetModels().size()); SecuredCredentialsStore store = harness.getCredentialsStore(); assertFalse(store.isUnlocked()); // should not have gotten unlocked. } harness.reload(); { CloudFoundryBootDashModel target = harness.getCfTargetModel(); waitForJobsToComplete(); assertEquals(StoreCredentialsMode.STORE_NOTHING, target.getRunTarget().getTargetProperties().getStoreCredentials()); assertNotNull(target); assertNull(target.getRunTarget().getTargetProperties().getCredentials()); assertFalse(target.isConnected()); // no auto connect if no creds are stored. { //check secure store is clean SecuredCredentialsStore store = harness.getCredentialsStore(); assertFalse(store.isUnlocked()); // should not have gotten unlocked. String storedCred = store.getCredentials(harness.secureStoreKey(target)); assertNull(storedCred); } { //check private store is clean IPropertyStore store = harness.getPrivateStore(); String storedCred = store.get(harness.privateStoreKey(target)); assertNull(storedCred); } verifyZeroInteractions(ui); //When we connect... the user should get prompted for password harness.answerPasswordPrompt(ui, (d) -> { d.getPasswordVar().setValue(targetParams.getCredentials().getPassword()); d.performOk(); }); harness.sectionSelection.setValue(target); IAction connectAction = actions.getToggleTargetConnectionAction(); connectAction.run(); ACondition.waitFor("connected to target", 5_000, () -> { assertTrue(target.isConnected()); }); verify(ui).openPasswordDialog(any()); verifyNoMoreInteractions(ui); } }
From source file:org.springframework.ide.eclipse.boot.dash.test.CloudFoundryBootDashModelMockingTest.java
@Test public void testCreateCfTargetAndStoreToken() throws Exception { {//from www. j a v a 2s .com CFClientParams targetParams = CfTestTargetParams.fromEnv(); MockCFSpace space = clientFactory.defSpace(targetParams.getOrgName(), targetParams.getSpaceName()); space.defApp("foo"); clientFactory.defSpace(targetParams.getOrgName(), targetParams.getSpaceName()); CloudFoundryBootDashModel target = harness.createCfTarget(targetParams, StoreCredentialsMode.STORE_TOKEN); assertNotNull(target); assertTrue(target.isConnected()); assertEquals(MockCloudFoundryClientFactory.FAKE_REFRESH_TOKEN, target.getRunTarget().getTargetProperties().getCredentials().getRefreshToken()); assertEquals(1, harness.getCfRunTargetModels().size()); } harness.reload(); { CloudFoundryBootDashModel target = harness.getCfTargetModel(); { //secure store shouldn't have been accessed (i.e. avoid opening it and popping password) SecuredCredentialsStore store = harness.getCredentialsStore(); assertFalse(store.isUnlocked()); String key = harness.secureStoreKey(target); String storedCred = store.getCredentials(key); assertNull(storedCred); } { IPropertyStore store = harness.getPrivateStore(); String key = harness.privateStoreKey(target); String storedCred = store.get(key); assertEquals(MockCloudFoundryClientFactory.FAKE_REFRESH_TOKEN, storedCred); } assertNotNull(target); assertEquals(MockCloudFoundryClientFactory.FAKE_REFRESH_TOKEN, target.getRunTarget().getTargetProperties().getCredentials().getRefreshToken()); assertEquals(StoreCredentialsMode.STORE_TOKEN, target.getRunTarget().getTargetProperties().getStoreCredentials()); waitForJobsToComplete(); assertTrue(target.isConnected()); //should auto connect. verifyZeroInteractions(ui); //should not prompt for password (but used stored token). } }
From source file:org.springframework.ide.eclipse.boot.dash.test.CloudFoundryBootDashModelMockingTest.java
@Test public void appsManagerDefaultHost() throws Exception { MockCFSpace space = clientFactory.defSpace("my-org", "foo"); String apiUrl = "http://api.some-cloud.com"; String username = "freddy"; String password = "whocares"; CloudFoundryBootDashModel cfModel = harness.createCfTarget(new CFClientParams(apiUrl, username, CFCredentials.fromPassword(password), false, "my-org", "foo", false)); assertEquals("http://console.some-cloud.com", cfModel.getRunTarget().getAppsManagerHost()); assertEquals("http://console.some-cloud.com", cfModel.getRunTarget().getAppsManagerHostDefault()); assertEquals("http://console.some-cloud.com/organizations/" + space.getOrganization().getGuid() + "/spaces/" + space.getGuid(), cfModel.getRunTarget().getAppsManagerURL()); }