Skip to content
This repository has been archived by the owner on Feb 2, 2018. It is now read-only.

OpenShift v1.1.4-215 -> Kubernetes v1.2.0-0.6.alpha1 Failed #52

Open
kadel opened this issue Mar 24, 2016 · 4 comments
Open

OpenShift v1.1.4-215 -> Kubernetes v1.2.0-0.6.alpha1 Failed #52

kadel opened this issue Mar 24, 2016 · 4 comments

Comments

@kadel
Copy link
Collaborator

kadel commented Mar 24, 2016

When exporting from newer version of OpenShift to Kubernetes (version that is in ADB 1.2.0-0.6.alpha1.git8632732.el7)

[INFO] - kubernetes.py - Deploying to Kubernetes
[ERROR] - main.py - cmd: ['/host/usr/bin/kubectl', 'create', '-f', u'/host/var/lib/atomicapp/10.1.2.1-5000-mlbparks-mlbparks1-7b82edcaa7fb/artifacts/kubernetes/.mlbparks-1-ReplicationController.json', '--namespace=default'] failed: 
error validating "/host/var/lib/atomicapp/10.1.2.1-5000-mlbparks-mlbparks1-7b82edcaa7fb/artifacts/kubernetes/.mlbparks-1-ReplicationController.json": error validating data: [found invalid field successThreshold for v1.Probe, found invalid field periodSeconds for v1.Probe, found invalid field failureThreshold for v1.Probe]; if you choose to ignore these errors, turn validation off with --validate=false
Traceback (most recent call last):
  File "/opt/atomicapp/atomicapp/cli/main.py", line 101, in cli_run
    nm.run(**argdict)
  File "/opt/atomicapp/atomicapp/nulecule/main.py", line 233, in run
    self.nulecule.run(cli_provider, dryrun)
  File "/opt/atomicapp/atomicapp/nulecule/base.py", line 191, in run
    component.run(provider_key, dryrun)
  File "/opt/atomicapp/atomicapp/nulecule/base.py", line 326, in run
    provider.run()
  File "/opt/atomicapp/atomicapp/providers/kubernetes.py", line 189, in run
    self._call(cmd)
  File "/opt/atomicapp/atomicapp/providers/kubernetes.py", line 114, in _call
    ec, stdout, stderr = Utils.run_cmd(cmd, checkexitcode=True)
  File "/opt/atomicapp/atomicapp/utils.py", line 266, in run_cmd
    "cmd: %s failed: \n%s" % (str(cmd), stderr))
AtomicAppUtilsException: cmd: ['/host/usr/bin/kubectl', 'create', '-f', u'/host/var/lib/atomicapp/10.1.2.1-5000-mlbparks-mlbparks1-7b82edcaa7fb/artifacts/kubernetes/.mlbparks-1-ReplicationController.json', '--namespace=default'] failed: 
error validating "/host/var/lib/atomicapp/10.1.2.1-5000-mlbparks-mlbparks1-7b82edcaa7fb/artifacts/kubernetes/.mlbparks-1-ReplicationController.json": error validating data: [found invalid field successThreshold for v1.Probe, found invalid field periodSeconds for v1.Probe, found invalid field failureThreshold for v1.Probe]; if you choose to ignore these errors, turn validation off with --validate=false

This breaks because Kubernetes 1.2 added new configuration parameters for Probe (periodSeconds, successThreshold, failureThreshold) that didn't exist in 1.2.0-alpha1 that is used in ADB.
Validation that kubectl does on client side fails because it checks for unknown fields. But if --validate=false is used, object is created successfully on server, because it simply skips unknown fields.

OpenShift (exported from)

$ oc version
oc v1.1.4-215-gb62dcc2
kubernetes v1.2.0-36-g4a3f9c5

Kubernetes (imported to)

$ yum list installed | grep kube
kubernetes.x86_64               1.2.0-0.6.alpha1.git8632732.el7 @koji-override-0
kubernetes-client.x86_64        1.2.0-0.6.alpha1.git8632732.el7 @koji-override-0
kubernetes-master.x86_64        1.2.0-0.6.alpha1.git8632732.el7 @koji-override-0
kubernetes-node.x86_64          1.2.0-0.6.alpha1.git8632732.el7 @koji-override-0
$ kubectl version
Client Version: version.Info{Major:"1", Minor:"2", GitVersion:"v1.2.0", GitCommit:"86327329213fed4af2661c5ae1e92f9956b24f55", GitTreeState:"clean"}
Server Version: version.Info{Major:"1", Minor:"2", GitVersion:"v1.2.0", GitCommit:"86327329213fed4af2661c5ae1e92f9956b24f55", GitTreeState:"clean"}
@surajssd
Copy link
Collaborator

Deployed mlbparks following the tutorial from https://github.com/gshipley/openshift3mlbparks

[vagrant@centos7-adb ~]$ oc start-build mlbparks
Error from server: imagestreams "jboss-eap64-openshift" not found
[vagrant@centos7-adb ~]$ oc status -v
In project mlbparks on server https://localhost:8443

http://mlbparks-mlbparks.centos7-adb.10.1.2.2.xip.io (svc/mlbparks)
  dc/mlbparks deploys istag/mlbparks:latest <-
    bc/mlbparks builds https://github.com/gshipley/openshift3mlbparks#master with openshift/jboss-eap64-openshift:1.1 
      not built yet
    deployment #1 waiting on image or update

svc/mongodb - 172.30.142.247:27017
  dc/mongodb deploys openshift/mongodb:latest 
    deployment #1 running for 3 minutes - 1 pod

Warnings:
  * istag/mlbparks:latest needs to be imported or created by a build.
    try: oc start-build bc/mlbparks
  * The image trigger for dc/mlbparks will have no effect until istag/mlbparks:latest is imported or created by a build.
  * dc/mongodb has no readiness probe to verify pods are ready to accept traffic or ensure deployment is successful.
    try: oc set probe dc/mongodb --readiness ...

View details with 'oc describe <resource>/<name>' or list everything with 'oc get all'.

I am running ADB 1.7.2 and with "latest" image in Vagrantfile set

# The name of the OpenShift image.
IMAGE_NAME="openshift/origin"
IMAGE_TAG="latest"

oc version

[vagrant@centos7-adb ~]$ oc version
oc v1.1.4-296-g8e98dcc
kubernetes v1.2.0-36-g4a3f9c5

I am not able to even start the build process of app! :(

I got it built by adding oc create -f jboss-image-streams.json in https://github.com/jboss-openshift/application-templates

@kadel
Copy link
Collaborator Author

kadel commented Mar 29, 2016

@surajssd what you are describing is complete another issue.
It look like they removed it or forgot about that image stream in ADB.

@surajssd
Copy link
Collaborator

@kadel sure

@kadel
Copy link
Collaborator Author

kadel commented Apr 7, 2016

Opened related issue for Atomic App projectatomic/atomicapp#674

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants