openshiftio / booster-common Goto Github PK
View Code? Open in Web Editor NEWCommon booster utilities
License: Apache License 2.0
Common booster utilities
License: Apache License 2.0
Do we still consume this as a library? If not we might archive this project.
/cc @gastaldi @cescoffier
Maybe someone can help me understand what it stands for in all of the boosters, but at least for wfswarm-rest-http it just sets env variable for the tests.
I would like to propose to either make it enabled by default or not rely on env variable for the tests (just hardcode the app name). Thoughts?
OpenShiftTestAssistant#cleanup
fails when the OpenShift instance is remote and bad timing occurs. It happens during deletion of DeploymentConfig because I suppose that it tries to delete ReplicationController as well, and replicas are scaled down before deletion. Tests failure contains this message:
io.fabric8.kubernetes.client.KubernetesClientException: Failure executing: PATCH at:
https://api.devel.xpaas:8443/api/v1/namespaces/skrupa/replicationcontrollers/crud-vertx-1.
Message: Unable to remove nonexistant key: availableReplicas.
Received status: Status(apiVersion=v1, code=500, details=null, kind=Status, message=Unable to remove nonexistant key: availableReplicas, metadata=ListMeta(resourceVersion=null, selfLink=null, additionalProperties={}), reason=null, status=Failure, additionalProperties={}).
at io.openshift.booster.OpenShiftIT.cleanup(OpenShiftIT.java:58)
The important part is: Unable to remove nonexistent key: availableReplicas. It indicates that cleanup procedure is trying to scale down availableReplicas
which were already deleted. This fails the tests and whole build process.
Reproduce steps:
mvn clean verify -Popenshift
As the class https://github.com/openshiftio/booster-common/blob/master/openshift-test-utils/src/main/java/io/openshift/booster/test/OpenShiftTestAssistant.java
is not specific to booster but serves a more general purpose, we should probably rename it from
package io.openshift.booster.test;
to
package io.openshift.test;
Is it possible to have a new version suffix configurable? At the moment it's set to be a {number}-SNAPSHOT (https://github.com/openshiftio/booster-common/blob/master/release-script/booster-release.sh#L35). We're going to name prod tags as v1-redhat and next version should be 2-redhat-SNAPSHOT.
OpenShiftTestAssistant
doesn't work on kubernetes; nor can it run on OpenShift.io in another namespace (on OpenShift.io we need to run the integration tests in a different namespace to the default, jenkins, namespace due to quota issues) - since it doesn't grok installing ImageStream/ImageStream tags like fabric8-arquillian + Arquillian's openshift support.
Also the arquililan equivalent has lots of nice things; like catching apps that retry a few times on startup due to issues; or capturing the logs of failed pods etc.
I understand OpenShiftTestAssistant
was a temporary approach until the strategic solution was found.
We maybe wanna try make Arquillian's Kubernetes/OpenShfit a little more flexible in terms of dependencies & classloaders - as we've seen some issues in the past with mixed versions of things like kubernetes-client and things like spring-cloud; though hopefully we can try align versions much more closely really.
CC @ALRubinger we mentioned this on the last call
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.