• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java Marathon类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中mesosphere.marathon.client.Marathon的典型用法代码示例。如果您正苦于以下问题:Java Marathon类的具体用法?Java Marathon怎么用?Java Marathon使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



Marathon类属于mesosphere.marathon.client包,在下文中一共展示了Marathon类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: doUpdate

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
/**
 * Construct a Marathon client based on the provided credentialsId and execute an update for the configuration's
 * Marathon application.
 *
 * @param credentialsId A string ID for a credential within Jenkin's Credential store
 * @throws MarathonException thrown if the Marathon service has an error
 */
private void doUpdate(final String credentialsId) throws MarathonException {
    final Credentials credentials = MarathonBuilderUtils.getJenkinsCredentials(credentialsId, Credentials.class);

    Marathon client;

    if (credentials instanceof UsernamePasswordCredentials) {
        client = getMarathonClient((UsernamePasswordCredentials) credentials);
    } else if (credentials instanceof StringCredentials) {
        client = getMarathonClient((StringCredentials) credentials);
    } else {
        client = getMarathonClient();
    }

    if (client != null) {
        client.updateApp(getApp().getId(), getApp(), config.getForceUpdate());
    }
}
 
开发者ID:jenkinsci,项目名称:marathon-plugin,代码行数:25,代码来源:MarathonBuilderImpl.java


示例2: getMarathonClient

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
/**
 * Get a Marathon client with Authorization headers using the token within provided credentials. If the content of
 * credentials is JSON, this will use the "jenkins_token" field; if the content is just a string, that will be
 * used as the token value.
 *
 * @param credentials String credentials
 * @return Marathon client with token in auth header
 */
private Marathon getMarathonClient(StringCredentials credentials) {
    String token;

    try {
        final JSONObject json = JSONObject.fromObject(credentials.getSecret().getPlainText());
        if (json.has("jenkins_token")) {
            token = json.getString("jenkins_token");
        } else {
            token = "";
        }
    } catch (JSONException jse) {
        token = credentials.getSecret().getPlainText();
    }

    if (StringUtils.isNotEmpty(token)) {
        return MarathonClient
                .getInstanceWithTokenAuth(getURL(), token);
    }

    return getMarathonClient();
}
 
开发者ID:jenkinsci,项目名称:marathon-plugin,代码行数:30,代码来源:MarathonBuilderImpl.java


示例3: createTestEnvironment

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
public static MarathonTestEnvironment createTestEnvironment(Strategy strategy) throws ResourceConfigException, ResourceException, IOException, EnvironmentConfigException {
    Map<String, String> environmentVariables = TestEnvironmentUtil.loadEnvironmentVariables(
            MARATHON_TOKEN_ENV,
            MARATHON_URL_ENV
    );

    EnvironmentConfig environmentConfig = createEnvironmentConfig(environmentVariables, strategy);

    // Replace the token.
    TokenResource tokenResource = new TokenResource(environmentConfig);
    String apiToken = tokenResource.retrieveAuthenticationToken(environmentVariables.get(MARATHON_TOKEN_ENV));
    environmentConfig.getAuthConfig().setToken(apiToken);

    ClientFactory clientFactory = createClientFactory(environmentConfig);

    Marathon marathonClient = createMarathonClient(environmentConfig);
    return new MarathonTestEnvironment(clientFactory, environmentConfig, marathonClient);
}
 
开发者ID:qaware,项目名称:gradle-cloud-deployer,代码行数:19,代码来源:MarathonTestEnvironmentUtil.java


示例4: getAppTasks

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
private void getAppTasks(Marathon marathon, App app) throws MojoExecutionException {
    try {
        final GetAppTasksResponse getAppTasksResponse = marathon.getAppTasks(app.getId());
        int taskCount = 0;
        for (final Task task : getAppTasksResponse.getTasks()) {
            final String hostPropertyName = propertyPrefix + "host" + taskCount;
            project.getProperties().put(hostPropertyName, task.getHost());
            getLog().info("Setting " + hostPropertyName + " = " + task.getHost());
            int portCount = 0;
            for (final Integer port : task.getPorts()) {
                final String portPropertyName = propertyPrefix + "port"
                        + taskCount + "-" + portCount;
                project.getProperties().put(portPropertyName, String.valueOf(port));
                getLog().info("Setting " + portPropertyName + " = " + port);
                portCount++;
            }
            taskCount++;
        }
    } catch (Exception deleteAppException) {
        throw new MojoExecutionException("Failed to get tasks for Marathon instance "
                + marathonHost, deleteAppException);
    }
}
 
开发者ID:holidaycheck,项目名称:marathon-maven-plugin,代码行数:24,代码来源:AppTasksMojo.java


示例5: execute

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
@Override
public void execute() throws MojoExecutionException, MojoFailureException {
    final Marathon marathon = MarathonClient.getInstance(marathonHost);
    App app = readApp(finalMarathonConfigFile);
    getLog().info("deploying Marathon config for " + app.getId()
            + " from " + finalMarathonConfigFile + " to " + marathonHost);
    if (appExists(marathon, app.getId())) {
        getLog().info(app.getId() + " already exists - will be updated");
        updateApp(marathon, app);
    } else {
        getLog().info(app.getId() + " does not exist yet - will be created");
        app = createApp(marathon, app);
    }

    if (waitForDeploymentFinished) {
        try {
            waitForApp(marathon, app);
        } catch (MarathonException e) {
            throw new MojoExecutionException("error waiting for app", e);
        }
    }
}
 
开发者ID:holidaycheck,项目名称:marathon-maven-plugin,代码行数:23,代码来源:DeployMojo.java


示例6: build

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
/**
 * Generate a new Marathon client.
 * 
 * @param marathonProperties
 *          the properties containing the client information
 * @return the new client
 */
@Override
public Marathon build(MarathonProperties marathonProperties) {
  LOG.info("Generating Marathon client with parameters: {}", marathonProperties);

  return Feign
      .builder()
      .encoder(new GsonEncoder(ModelUtils.GSON))
      .decoder(new GsonDecoder(ModelUtils.GSON))
      .logger(new Slf4jLogger(Marathon.class))
      .logLevel(Level.FULL)
      .errorDecoder(new DeserializingMarathonErrorDecoder())
      .requestInterceptor(new BasicAuthRequestInterceptor(
          marathonProperties.getUsername(), marathonProperties.getPassword()))
      .requestInterceptor(template -> {
        template.header(HttpHeaders.ACCEPT, "application/json");
        template.header(HttpHeaders.CONTENT_TYPE, "application/json");
      })
      .target(Marathon.class, marathonProperties.getUrl().toString());
}
 
开发者ID:indigo-dc,项目名称:orchestrator,代码行数:27,代码来源:MarathonClientFactory.java


示例7: getPolulatedGroup

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
@Deprecated
// TODO remove it and use just getGroup with embed params (requires marathon client version >
// 6.0.0)
private Group getPolulatedGroup(Deployment deployment, String groupId) throws MarathonException {
  final Marathon client = getMarathonClient(deployment);
  Group group = client.getGroup(groupId);

  Collection<App> apps = Optional.ofNullable(group.getApps()).orElseGet(Collections::emptyList);

  List<App> completeInfoApps = new ArrayList<>();
  for (App app : apps) {
    completeInfoApps.add(client.getApp(app.getId()).getApp());
  }
  apps = completeInfoApps;

  group.setApps(apps);
  return group;
}
 
开发者ID:indigo-dc,项目名称:orchestrator,代码行数:19,代码来源:MarathonServiceImpl.java


示例8: getInstance

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
/**
 * The generalized version of the method that allows more in-depth customizations via
 * {@link RequestInterceptor}s.
 *
 * @param endpoint
 * 		URL of Marathon
 */
private static Marathon getInstance(String endpoint, RequestInterceptor... interceptors) {
	Builder b = Feign.builder()
			.encoder(new GsonEncoder(ModelUtils.GSON))
			.decoder(new GsonDecoder(ModelUtils.GSON))
			.errorDecoder(new MarathonErrorDecoder());

	if (interceptors!=null)
		b.requestInterceptors(asList(interceptors));

	b.requestInterceptor(new MarathonHeadersInterceptor());

	return b.target(Marathon.class, endpoint);
}
 
开发者ID:pikselpalette,项目名称:gocd-elastic-agent-marathon,代码行数:21,代码来源:MarathonClient.java


示例9: marathonClient

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
@Bean
@ConditionalOnMissingBean
public Marathon marathonClient(MarathonProperties properties) {
    return new RibbonMarathonClient.Builder(properties.getEndpoint())
            .withListOfServers(properties.getListOfServers())
            .withToken(properties.getToken())
            .withUsername(properties.getUsername())
            .withPassword(properties.getPassword())
            .build();
}
 
开发者ID:aatarasoff,项目名称:spring-cloud-marathon,代码行数:11,代码来源:MarathonAutoConfiguration.java


示例10: MarathonServerList

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
public MarathonServerList(Marathon client, MarathonDiscoveryProperties properties) {
    this.client = client;
    this.properties = properties;
    this.queryMap = new HashMap<>();
    this.ignoreServiceId = false;
    metaDataFilter = new HashMap<>();
}
 
开发者ID:aatarasoff,项目名称:spring-cloud-marathon,代码行数:8,代码来源:MarathonServerList.java


示例11: MarathonRibbonClientConfiguration

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
@Autowired
public MarathonRibbonClientConfiguration(Marathon client,
                                         IClientConfig clientConfig,
                                         MarathonDiscoveryProperties properties) {
    this.client = client;
    this.clientConfig = clientConfig;
    this.properties = properties;
}
 
开发者ID:aatarasoff,项目名称:spring-cloud-marathon,代码行数:9,代码来源:MarathonRibbonClientConfiguration.java


示例12: marathonClient

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
@Bean
public Marathon marathonClient(MarathonProperties properties) throws MarathonException {
    Marathon client = mock(Marathon.class);

    when(client.getServerInfo()).thenReturn(new GetServerInfoResponse());

    GetAppsResponse appsResponse = new GetAppsResponse();
    App app = new App();
    app.setId("test-app");
    appsResponse.setApps(Collections.singletonList(app));
    when(client.getApps()).thenReturn(appsResponse);

    return client;
}
 
开发者ID:aatarasoff,项目名称:spring-cloud-marathon,代码行数:15,代码来源:MarathonEndpointTests.java


示例13: marathon

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
@Bean
@RefreshScope
public Marathon marathon(MarathonAppDeployerProperties marathonProperties, DcosClusterProperties dcosClusterProperties) {
	if (StringUtils.hasText(dcosClusterProperties.getAuthorizationToken())) {
		return MarathonClient.getInstance(marathonProperties.getApiEndpoint(),
				new DcosHeadersInterceptor(dcosClusterProperties.getAuthorizationToken()));
	}
	else {
		return MarathonClient.getInstance(marathonProperties.getApiEndpoint());
	}
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-deployer-mesos,代码行数:12,代码来源:MesosAutoConfiguration.java


示例14: marathon

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
@Bean
public Marathon marathon(MarathonAppDeployerProperties marathonProperties,
                         DcosClusterProperties dcosClusterProperties) {
	if (StringUtils.hasText(dcosClusterProperties.getAuthorizationToken())) {
		return MarathonClient.getInstance(marathonProperties.getApiEndpoint(),
				new DcosHeadersInterceptor(dcosClusterProperties.getAuthorizationToken()));
	}
	else {
		return MarathonClient.getInstance(marathonProperties.getApiEndpoint());
	}
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-deployer-mesos,代码行数:12,代码来源:MarathonTestSupport.java


示例15: getInstance

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
private static Marathon getInstance(String endpoint, RequestInterceptor... interceptors) {
    Feign.Builder b = Feign.builder().client(LoginClient.getClientHostVerificationDisabled())
            .logger(new Logger.ErrorLogger())
            .logLevel(Logger.Level.BASIC)
            .encoder(new GsonEncoder(ModelUtils.GSON))
            .decoder(new GsonDecoder(ModelUtils.GSON))
            .errorDecoder(new MarathonErrorDecoder())
            //max wait period = 5 seconds ; max attempts = 5
            .retryer(new Retryer.Default(SECONDS.toMillis(1), SECONDS.toMillis(5), 5));
    if (interceptors != null) {
        b.requestInterceptors(asList(interceptors));
    }
    b.requestInterceptor(new MarathonHeadersInterceptor());
    return b.target(Marathon.class, endpoint);
}
 
开发者ID:pravega,项目名称:pravega,代码行数:16,代码来源:AuthEnabledMarathonClient.java


示例16: appExists

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
protected boolean appExists(Marathon marathon, String appId) throws MojoExecutionException {
    try {
        marathon.getApp(trimLeadingSlash(appId));
        return true;
    } catch (MarathonException getAppException) {
        if (getAppException.getStatus() == 404) {
            return false;
        } else {
            throw new MojoExecutionException("Failed to check if an app " + appId + "exists",
                    getAppException);
        }
    } catch (Exception e) {
        throw new MojoExecutionException("Failed to check if an app " + appId + "exists", e);
    }
}
 
开发者ID:holidaycheck,项目名称:marathon-maven-plugin,代码行数:16,代码来源:AbstractMarathonMojo.java


示例17: execute

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
@Override
public void execute() throws MojoExecutionException, MojoFailureException {
    final Marathon marathon = MarathonClient.getInstance(marathonHost);
    final App app = readApp(finalMarathonConfigFile);
    getLog().info("deleting Marathon instance for " + app.getId());
    if (appExists(marathon, app.getId())) {
        getLog().info(app.getId() + " already exists - will be updated");
        deleteApp(marathon, app);
    } else {
        getLog().warn(app.getId() + " does not exist - nothing to delete");
    }
}
 
开发者ID:holidaycheck,项目名称:marathon-maven-plugin,代码行数:13,代码来源:DeleteMojo.java


示例18: deleteApp

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
private void deleteApp(Marathon marathon, App app) throws MojoExecutionException {
    try {
        marathon.deleteApp(app.getId());
    } catch (Exception deleteAppException) {
        throw new MojoExecutionException("Failed to delete Marathon instance "
                + marathonHost, deleteAppException);
    }
}
 
开发者ID:holidaycheck,项目名称:marathon-maven-plugin,代码行数:9,代码来源:DeleteMojo.java


示例19: execute

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
@Override
public void execute() throws MojoExecutionException, MojoFailureException {
    final Marathon marathon = MarathonClient.getInstance(marathonHost);
    final App app = readApp(finalMarathonConfigFile);
    getLog().info("tasks in Marathon instance for " + app.getId());

    final ScheduledThreadPoolExecutor executor = new ScheduledThreadPoolExecutor(1);
    final Callable<Void> callable = () -> {
        try {
            if (appExists(marathon, app.getId())) {
                getLog().info(app.getId() + " exists - getting app tasks");
                getAppTasks(marathon, app);
            } else {
                getLog().warn(app.getId() + " does not exist");
            }
        } catch (final MojoExecutionException e) {
            getLog().error("Problem communicating with Marathon", e);
        }
        return null;
    };
    final ScheduledFuture<Void> future = executor.schedule(callable, delay, TimeUnit.SECONDS);
    while (!future.isDone() && !future.isCancelled()) {
        try {
            Thread.sleep(100);
        } catch (InterruptedException ignored) { }
    }
}
 
开发者ID:holidaycheck,项目名称:marathon-maven-plugin,代码行数:28,代码来源:AppTasksMojo.java


示例20: updateApp

import mesosphere.marathon.client.Marathon; //导入依赖的package包/类
private void updateApp(Marathon marathon, App app) throws MojoExecutionException {
    try {
        marathon.updateApp(trimLeadingSlash(app.getId()), app, false);
    } catch (Exception updateAppException) {
        throw new MojoExecutionException("Failed to update Marathon config file at "
                + marathonHost, updateAppException);
    }
}
 
开发者ID:holidaycheck,项目名称:marathon-maven-plugin,代码行数:9,代码来源:DeployMojo.java



注:本文中的mesosphere.marathon.client.Marathon类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java TestJobHistoryEntities类代码示例发布时间:2022-05-22
下一篇:
Java Javadoc类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap