@Mojo(name="json",
defaultPhase=GENERATE_RESOURCES)
public class JsonMojo
extends AbstractFabric8Mojo
| Modifier and Type | Field and Description |
|---|---|
protected Boolean |
containerPrivileged |
static String |
FABRIC8_CONTAINER_PORT_SERVICE |
static String |
FABRIC8_ICON_URL_ANNOTATION |
static String |
FABRIC8_METRICS_PORT |
static String |
FABRIC8_METRICS_PORT_ANNOTATION |
static String |
FABRIC8_METRICS_PREFIX |
static String |
FABRIC8_METRICS_SCHEME |
static String |
FABRIC8_METRICS_SCHEME_ANNOTATION |
static String |
FABRIC8_METRICS_SCRAPE |
static String |
FABRIC8_METRICS_SCRAPE_ANNOTATION |
static String |
FABRIC8_NODE_PORT_SERVICE |
static String |
FABRIC8_PORT_CONTAINER_PREFIX |
static String |
FABRIC8_PORT_HOST_PREFIX |
static String |
FABRIC8_PORT_SERVICE |
static String |
FABRIC8_PROTOCOL_SERVICE |
protected org.apache.maven.artifact.repository.ArtifactRepository |
localRepository |
protected File |
podSpecAnnotationsFile
The properties file used to specify the annotations to be added to the generated PodSpec
|
protected File |
rcAnnotationsFile
The properties file used to specify the annotations to be added to the generated ReplicationController
|
protected List |
remoteRepositories |
protected org.apache.maven.artifact.resolver.ArtifactResolver |
resolver |
protected String |
serviceAccount |
protected File |
serviceAnnotationsFile
The properties file used to specify the annotations to be added to the generated Service
|
protected File |
templateAnnotationsFile
The properties file used to specify the annotations to be added to the generated Template
|
protected File |
templateParametersPropertiesFile
The properties file used to specify the OpenShift Template parameter values and descriptions.
|
appConfigDir, combineDependencies, environmentVariableToAnnotationsFile, envPropertiesFile, ICON_EXTENSIONS, iconRef, kubernetesSourceJson, pureKubernetes, zipFilefailOnError, recreate, routeDomain| Constructor and Description |
|---|
JsonMojo() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addDocumentationAnnotations(io.fabric8.openshift.api.model.Template template,
Map<String,String> annotations) |
protected static void |
addIfNotDefined(Map<String,Object> variables,
String key,
String value) |
protected boolean |
addLabelIfNotExist(io.fabric8.kubernetes.api.model.HasMetadata object,
String label,
String value) |
protected void |
addLabelIntoObjects(List<io.fabric8.kubernetes.api.model.HasMetadata> objects,
String label,
String value) |
protected void |
addPersistentVolumeClaims(io.fabric8.kubernetes.api.model.KubernetesListBuilder builder,
List<io.fabric8.kubernetes.api.model.Volume> volumes) |
protected boolean |
addServiceAccountIfIUsingSecretAnnotations(io.fabric8.kubernetes.api.model.KubernetesListBuilder builder,
Map<String,String> annotations) |
protected void |
addServiceConstraints(io.fabric8.kubernetes.api.model.KubernetesListBuilder builder,
List<io.fabric8.kubernetes.api.model.Volume> volumes,
boolean containerPrivileged) |
protected Object |
applyTemplates(io.fabric8.openshift.api.model.Template template) |
protected void |
combineDependentJsonFiles(File json) |
protected void |
combineJsonFiles(File json,
File kubernetesExtraJson) |
protected void |
configureTemplateDescriptionAndIcon(io.fabric8.openshift.api.model.Template template,
String iconUrl) |
protected String |
convertIconFileToURL(File iconFile) |
protected String |
embeddedIconsInConsole(String iconRef,
String prefix)
To use embedded icons provided by the fabric8-console
|
void |
execute() |
protected Object |
filterPureKubernetes(Object dto) |
protected void |
generateKubernetesJson(File kubernetesJson) |
String |
getCombineProjectName() |
List<io.fabric8.kubernetes.api.model.ContainerPort> |
getContainerPorts() |
Boolean |
getContainerPrivileged() |
Map<String,Integer> |
getDefaultContainerPortMap() |
List<io.fabric8.kubernetes.api.model.EnvVar> |
getEnvironmentVariables() |
Map<String,String> |
getExportedEnvironmentVariables() |
String |
getGroupName() |
protected String |
getIconUrl()
Generate a URL for the icon.
|
String |
getImagePullPolicy() |
String |
getKubernetesContainerName() |
Map<String,String> |
getLabels() |
protected io.fabric8.kubernetes.api.model.Probe |
getLivenessProbe() |
protected io.fabric8.openshift.api.model.ImageStream |
getOrAddImageStream(List<io.fabric8.kubernetes.api.model.HasMetadata> list,
String imageStreamName,
Map<String,String> labels) |
protected static io.fabric8.kubernetes.api.model.EnvVar |
getOrCreateEnv(Map<String,io.fabric8.kubernetes.api.model.EnvVar> envMap,
String name) |
protected static io.fabric8.kubernetes.api.model.ContainerPort |
getOrCreatePort(Map<String,io.fabric8.kubernetes.api.model.ContainerPort> portMap,
String name) |
Map<String,String> |
getPodSpecAnnotations() |
protected io.fabric8.kubernetes.api.model.Probe |
getProbe(String prefix) |
String |
getProjectName() |
Map<String,String> |
getRCAnnotations() |
protected io.fabric8.kubernetes.api.model.Probe |
getReadinessProbe() |
Map<String,String> |
getServiceAnnotations() |
io.fabric8.openshift.api.model.Template |
getTemplate() |
Map<String,String> |
getTemplateAnnotations() |
protected String |
getTemplateKey(io.fabric8.openshift.api.model.Template template,
String key) |
List<io.fabric8.kubernetes.api.model.VolumeMount> |
getVolumeMounts() |
List<io.fabric8.kubernetes.api.model.Volume> |
getVolumes() |
protected boolean |
hasHostVolume(List<io.fabric8.kubernetes.api.model.Volume> volumes) |
protected Map<String,String> |
loadAnnotations(File annotationsFile,
String propertiesPrefix,
String annotationsName) |
protected void |
loadParametersFromProperties(Properties properties,
List<io.fabric8.openshift.api.model.Parameter> parameters,
Set<String> paramNames) |
protected Integer |
parsePort(String portText,
String propertyName) |
static List<String> |
parseSecretNames(String value) |
protected Set<org.apache.maven.artifact.Artifact> |
resolveArtifacts(org.apache.maven.artifact.Artifact artifact) |
void |
setCombineProjectName(String combineProjectName) |
void |
setContainerPorts(List<io.fabric8.kubernetes.api.model.ContainerPort> ports) |
void |
setDefaultContainerPortMap(Map<String,Integer> defaultContainerPortMap) |
void |
setGroupName(String groupName) |
void |
setKubernetesContainerName(String kubernetesContainerName) |
void |
setLabels(Map<String,String> labels) |
void |
setProjectName(String projectName) |
void |
setServicePorts(List<io.fabric8.kubernetes.api.model.ServicePort> ports) |
protected boolean |
shouldGenerateForThisProject() |
protected void |
wrapInDeploymentConfigs(File json) |
protected List<io.fabric8.kubernetes.api.model.HasMetadata> |
wrapInDeploymentConfigs(List<io.fabric8.kubernetes.api.model.HasMetadata> items) |
protected void |
wrapInDeploymentConfigs(List<io.fabric8.kubernetes.api.model.HasMetadata> list,
io.fabric8.kubernetes.api.model.ReplicationController replicationController)
Wraps the given
ReplicationController in a DeploymentConfig and adds it to the given list
along with any other required entities |
addEnvironmentAnnotations, addEnvironmentAnnotations, addEnvironmentAnnotations, addPropertiesFileToMap, addPropertiesFileToMap, copyAppConfigFiles, copyIconToFolder, copyReadMe, copyReadMe, copyReadMe, copySummaryText, createClassLoader, createExceptionIterable, createURLClassLoader, findDocumentationUrl, findProjectDistributionManagement, getCompileClassLoader, getDockerImage, getEnvironmentVariableJsonSchema, getEnvironmentVariableProperties, getGitCommitId, getGitRepository, getKubernetesCombineJson, getKubernetesJson, getProject, getProjectAndFabric8Properties, getReplicas, getTestClassLoader, getZipFile, hasConfigDir, isIgnoreProject, isInCDBuild, isPom, isPomProject, loadJsonFile, loadPluginResource, overrideTemplateParameters, printSummary, replaceProperties, toBeExclude, tryDefaultAnnotationEnvVar, unquoteTemplateExpression, warnIfInCDBuild, warnIfInCDBuildcreateController, findProjectConfig, getKubernetes, getNamespace, getNamespaceForEnvironment, getRootProject, getRootProjectFolder, getRouteDomain, isFailOnError, isRecreate, setFailOnError, setNamespace, setRecreate, setRouteDomainpublic static final String FABRIC8_PORT_HOST_PREFIX
public static final String FABRIC8_PORT_CONTAINER_PREFIX
public static final String FABRIC8_PORT_SERVICE
public static final String FABRIC8_CONTAINER_PORT_SERVICE
public static final String FABRIC8_NODE_PORT_SERVICE
public static final String FABRIC8_PROTOCOL_SERVICE
public static final String FABRIC8_METRICS_PREFIX
public static final String FABRIC8_METRICS_SCRAPE
public static final String FABRIC8_METRICS_SCRAPE_ANNOTATION
public static final String FABRIC8_METRICS_PORT
public static final String FABRIC8_METRICS_PORT_ANNOTATION
public static final String FABRIC8_METRICS_SCHEME
public static final String FABRIC8_METRICS_SCHEME_ANNOTATION
public static final String FABRIC8_ICON_URL_ANNOTATION
@Parameter(property="fabric8.containerPrivileged") protected Boolean containerPrivileged
@Parameter(property="fabric8.serviceAccount") protected String serviceAccount
@Parameter(property="fabric8.templateParametersFile",
defaultValue="${basedir}/src/main/fabric8/templateParameters.properties")
protected File templateParametersPropertiesFile
FOO.value = ABC
FOO.description = this is the description of FOO
@Parameter(property="fabric8.podSpecAnnotationsFile",
defaultValue="${basedir}/src/main/fabric8/podSpecAnnotations.properties")
protected File podSpecAnnotationsFile
acme.com/cheese = SOMETHING
@Parameter(property="fabric8.rcAnnotationsFile",
defaultValue="${basedir}/src/main/fabric8/rcAnnotations.properties")
protected File rcAnnotationsFile
acme.com/cheese = SOMETHING
@Parameter(property="fabric8.templateAnnotationsFile",
defaultValue="${basedir}/src/main/fabric8/templateAnnotations.properties")
protected File templateAnnotationsFile
acme.com/cheese = SOMETHING
@Parameter(property="fabric8.serviceAnnotationsFile",
defaultValue="${basedir}/src/main/fabric8/serviceAnnotations.properties")
protected File serviceAnnotationsFile
acme.com/cheese = SOMETHING
@Component protected org.apache.maven.artifact.resolver.ArtifactResolver resolver
@Parameter(property="localRepository",
readonly=true,
required=true)
protected org.apache.maven.artifact.repository.ArtifactRepository localRepository
@Parameter(property="project.remoteArtifactRepositories") protected List remoteRepositories
public void execute()
throws org.apache.maven.plugin.MojoExecutionException,
org.apache.maven.plugin.MojoFailureException
org.apache.maven.plugin.MojoExecutionExceptionorg.apache.maven.plugin.MojoFailureExceptionprotected boolean shouldGenerateForThisProject()
shouldGenerateForThisProject in class AbstractFabric8Mojoprotected void combineDependentJsonFiles(File json) throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionprotected void addLabelIntoObjects(List<io.fabric8.kubernetes.api.model.HasMetadata> objects, String label, String value)
protected boolean addLabelIfNotExist(io.fabric8.kubernetes.api.model.HasMetadata object,
String label,
String value)
protected Object applyTemplates(io.fabric8.openshift.api.model.Template template) throws IOException
IOExceptionprotected Object filterPureKubernetes(Object dto) throws IOException
IOExceptionprotected Set<org.apache.maven.artifact.Artifact> resolveArtifacts(org.apache.maven.artifact.Artifact artifact)
protected void combineJsonFiles(File json, File kubernetesExtraJson) throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionprotected void wrapInDeploymentConfigs(File json) throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionprotected List<io.fabric8.kubernetes.api.model.HasMetadata> wrapInDeploymentConfigs(List<io.fabric8.kubernetes.api.model.HasMetadata> items)
protected void wrapInDeploymentConfigs(List<io.fabric8.kubernetes.api.model.HasMetadata> list, io.fabric8.kubernetes.api.model.ReplicationController replicationController)
ReplicationController in a DeploymentConfig and adds it to the given list
along with any other required entitiesprotected io.fabric8.openshift.api.model.ImageStream getOrAddImageStream(List<io.fabric8.kubernetes.api.model.HasMetadata> list, String imageStreamName, Map<String,String> labels)
protected void generateKubernetesJson(File kubernetesJson) throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionprotected void addPersistentVolumeClaims(io.fabric8.kubernetes.api.model.KubernetesListBuilder builder,
List<io.fabric8.kubernetes.api.model.Volume> volumes)
protected boolean addServiceAccountIfIUsingSecretAnnotations(io.fabric8.kubernetes.api.model.KubernetesListBuilder builder,
Map<String,String> annotations)
protected void addServiceConstraints(io.fabric8.kubernetes.api.model.KubernetesListBuilder builder,
List<io.fabric8.kubernetes.api.model.Volume> volumes,
boolean containerPrivileged)
protected boolean hasHostVolume(List<io.fabric8.kubernetes.api.model.Volume> volumes)
protected void configureTemplateDescriptionAndIcon(io.fabric8.openshift.api.model.Template template,
String iconUrl)
protected String getTemplateKey(io.fabric8.openshift.api.model.Template template, String key)
protected void addDocumentationAnnotations(io.fabric8.openshift.api.model.Template template,
Map<String,String> annotations)
protected String getIconUrl()
protected String convertIconFileToURL(File iconFile) throws IOException
IOExceptionprotected String embeddedIconsInConsole(String iconRef, String prefix)
iconRef - name of icon fileprefix - prefix location for the icons in the fabric8-consoleprotected io.fabric8.kubernetes.api.model.Probe getLivenessProbe()
protected io.fabric8.kubernetes.api.model.Probe getReadinessProbe()
protected io.fabric8.kubernetes.api.model.Probe getProbe(String prefix)
public Boolean getContainerPrivileged()
public String getImagePullPolicy()
public String getKubernetesContainerName()
public void setKubernetesContainerName(String kubernetesContainerName)
public String getProjectName()
public void setProjectName(String projectName)
public String getCombineProjectName()
public void setCombineProjectName(String combineProjectName)
public String getGroupName()
public void setGroupName(String groupName)
public void setDefaultContainerPortMap(Map<String,Integer> defaultContainerPortMap)
public List<io.fabric8.kubernetes.api.model.ContainerPort> getContainerPorts()
protected static io.fabric8.kubernetes.api.model.ContainerPort getOrCreatePort(Map<String,io.fabric8.kubernetes.api.model.ContainerPort> portMap, String name)
protected static io.fabric8.kubernetes.api.model.EnvVar getOrCreateEnv(Map<String,io.fabric8.kubernetes.api.model.EnvVar> envMap, String name)
public void setContainerPorts(List<io.fabric8.kubernetes.api.model.ContainerPort> ports)
public void setServicePorts(List<io.fabric8.kubernetes.api.model.ServicePort> ports)
public Map<String,String> getPodSpecAnnotations() throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionpublic Map<String,String> getRCAnnotations() throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionpublic Map<String,String> getTemplateAnnotations() throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionpublic Map<String,String> getServiceAnnotations() throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionprotected Map<String,String> loadAnnotations(File annotationsFile, String propertiesPrefix, String annotationsName) throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionpublic List<io.fabric8.kubernetes.api.model.EnvVar> getEnvironmentVariables() throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionpublic Map<String,String> getExportedEnvironmentVariables() throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionpublic List<io.fabric8.kubernetes.api.model.VolumeMount> getVolumeMounts()
public List<io.fabric8.kubernetes.api.model.Volume> getVolumes()
public io.fabric8.openshift.api.model.Template getTemplate()
throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionprotected void loadParametersFromProperties(Properties properties, List<io.fabric8.openshift.api.model.Parameter> parameters, Set<String> paramNames)
Copyright © 2011–2016 Red Hat. All rights reserved.