Hi guys,
I have a template that can be successfully processed and the objects created
using oc from the command-line. The template is supposed to run in one
namespace (let’s call it Y) but it creates secrets that are placed in another
namespace/project (let’s call that X). The namespaces are managed the same
user. Both namespaces exist and the following command when run on the
command-line is valid and is successful:
oc process -f <template-file> | oc create -f -
The act of processing and creating templates works in the Jenkins pipeline
except when the template creates objects in different namespaces. When I try
and reproduce these actions from within a Jenkins pipeline job that is using
the OpenShift Jenkins Pipeline (DSL) Plugin, i.e. when I do something like this…
openshift.withCluster("${CLUSTER}") {
openshift.withProject(“${Y}") {
def objs =
openshift.process('—filename=<template-file>’)
openshift.create(objs)
}
}
I get the following error reported in the Jenkins Job output:
err=error: the namespace from the provided object “X" does not match
the namespace “Y". You must pass '—namespace=X' to perform this operation.,
verb=create
How do replicate the actions that appear to be legitimate from the command-line
but using the Pipeline Plugin? Its error does not make sense. Instead the
plugin appears to assume that the objects created form the template must reside
in the namespace in which I am running and therefore insists on it.
Should I raise an issue on the Plugin project?
https://github.com/openshift/jenkins-client-plugin
Thank you in advance of any help but, in the meantime I will continue to search
for a solution.
Alan Christie
Informatics Matters
_______________________________________________
dev mailing list
[email protected]
http://lists.openshift.redhat.com/openshiftmm/listinfo/dev