Example usage for org.springframework.ide.eclipse.boot.dash.cloudfoundry.client.v2 CFPushArguments setEnv

List of usage examples for org.springframework.ide.eclipse.boot.dash.cloudfoundry.client.v2 CFPushArguments setEnv

Introduction

In this page you can find the example usage for org.springframework.ide.eclipse.boot.dash.cloudfoundry.client.v2 CFPushArguments setEnv.

Prototype

public void setEnv(Map<String, String> env) 

Source Link

Usage

From source file:org.springframework.ide.eclipse.boot.dash.test.CloudFoundryClientTest.java

@Test
public void testPushAndSetEnv() throws Exception {
    String appName = appHarness.randomAppName();

    CFPushArguments params = new CFPushArguments();
    params.setAppName(appName);/*from   w w w . j a  v  a2  s  .c om*/
    params.setRoutes(appName + "." + CFAPPS_IO());
    params.setApplicationData(getTestZip("testapp"));
    params.setBuildpack("staticfile_buildpack");
    params.setEnv(ImmutableMap.of("foo", "foo_value", "bar", "bar_value"));
    push(params);

    CFApplicationDetail app = client.getApplication(appName);
    assertNotNull("Expected application to exist after push: " + appName, app);
    ACondition.waitFor("app content to be availabe", 10_000, () -> {
        String content = IOUtils.toString(new URI("http://" + appName + '.' + CFAPPS_IO() + "/test.txt"));
        assertTrue(content.length() > 0);
        assertTrue(content.contains("content"));
    });

    {
        Map<String, String> env = client.getEnv(appName).block();
        assertEquals("foo_value", env.get("foo"));
        assertEquals("bar_value", env.get("bar"));
        assertEquals(2, env.size());
    }

    client.setEnvVars(appName, ImmutableMap.of("other", "value")).block();
    {
        Map<String, String> env = client.getEnv(appName).block();
        assertEquals("value", env.get("other"));
        assertEquals(1, env.size());
    }

    //This last piece is commented because it fails.
    //See: https://www.pivotaltracker.com/story/show/116804259

    // The last var doesn't get removed. Not sure how to fix it.
    // But eventually we won't even be using 'setEnvVars' it will be part of the push.
    // and its not going to be our problem to fix that.
    //      client.updateApplicationEnvironment(appName, ImmutableMap.of()).get();
    //      {
    //         Map<String, Object> env = client.getEnv(appName).get();
    //         assertEquals(0, env.size());
    //      }
}