com.openshift.restclient.model.build.IBuildConfigBuilder Maven / Gradle / Ivy
The newest version!
/*******************************************************************************
* Copyright (c) 2016-2018 Red Hat, Inc.
* Distributed under license by Red Hat, Inc. All rights reserved.
* This program is made available under the terms of the
* Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Red Hat, Inc. - initial API and implementation
******************************************************************************/
package com.openshift.restclient.model.build;
import java.util.List;
import com.openshift.restclient.capability.ICapability;
import com.openshift.restclient.model.IBuildConfig;
import com.openshift.restclient.model.IEnvironmentVariable;
import com.openshift.restclient.model.IResourceBuilder;
public interface IBuildConfigBuilder extends IResourceBuilder, ICapability {
ISourceStrategyBuilder usingSourceStrategy();
IJenkinsPipelineStrategyBuilder usingJenkinsPipelineStrategy();
IGitSourceBuilder fromGitSource();
IBinarySourceBuilder fromBinarySource();
IBuildConfigBuilder toImageStreamTag(String tag);
IBuildConfigBuilder buildOnSourceChange(boolean onSourceChange);
IBuildConfigBuilder buildOnImageChange(boolean onImageChange);
IBuildConfigBuilder buildOnConfigChange(boolean onConfigChange);
interface ISourceBuilder extends Endable {
IBuildConfigBuilder end();
T inContextDir(String contextDir);
}
interface IGitSourceBuilder extends ISourceBuilder {
IGitSourceBuilder fromGitUrl(String url);
IGitSourceBuilder usingGitReference(String ref);
}
interface IBinarySourceBuilder extends ISourceBuilder {
IBinarySourceBuilder fromAsFile(String asFile);
}
interface ISourceStrategyBuilder extends Endable {
IBuildConfigBuilder end();
/**
* The imagestream tag in form of 'name:tag"
*
* @param tag
* 'name:tag'
*/
ISourceStrategyBuilder fromImageStreamTag(String tag);
ISourceStrategyBuilder inNamespace(String namespace);
ISourceStrategyBuilder withEnvVars(List envVars);
/**
* @param tag
* docker pullspec
*/
ISourceStrategyBuilder fromDockerImage(String tag);
}
interface IJenkinsPipelineStrategyBuilder extends Endable {
IBuildConfigBuilder end();
IJenkinsPipelineStrategyBuilder usingFile(String file);
IJenkinsPipelineStrategyBuilder usingFilePath(String filePath);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy