Browse Source

Merge "Specify the runtime image version explicitly"

changes/63/572263/2
Zuul 3 years ago
committed by Gerrit Code Review
parent
commit
97481bf291
  1. 2
      devstack/plugin.sh
  2. 5
      devstack/settings
  3. 5
      qinling/config.py
  4. 1
      qinling/orchestrator/kubernetes/manager.py
  5. 2
      qinling/orchestrator/kubernetes/templates/deployment.j2
  6. 3
      qinling/tests/unit/orchestrator/kubernetes/test_manager.py
  7. 6
      qinling_tempest_plugin/config.py
  8. 5
      qinling_tempest_plugin/tests/api/test_executions_nodejs.py
  9. 2
      qinling_tempest_plugin/tests/base.py

2
devstack/plugin.sh

@ -29,7 +29,7 @@ function install_k8s {
# test.
sudo docker pull $QINLING_PYTHON_RUNTIME_IMAGE
sudo docker pull $QINLING_NODEJS_RUNTIME_IMAGE
sudo docker pull openstackqinling/sidecar
sudo docker pull $QINLING_SIDECAR_IMAGE
sudo docker pull openstackqinling/alpine-test
}

5
devstack/settings

@ -22,7 +22,8 @@ QINLING_CONF_FILE=${QINLING_CONF_DIR}/qinling.conf
QINLING_POLICY_FILE=${QINLING_CONF_DIR}/policy.json
QINLING_AUTH_CACHE_DIR=${QINLING_AUTH_CACHE_DIR:-/var/cache/qinling}
QINLING_FUNCTION_STORAGE_DIR=${QINLING_FUNCTION_STORAGE_DIR:-/opt/qinling/funtion/packages}
QINLING_PYTHON_RUNTIME_IMAGE=${QINLING_PYTHON_RUNTIME_IMAGE:-openstackqinling/python-runtime}
QINLING_NODEJS_RUNTIME_IMAGE=${QINLING_NODEJS_RUNTIME_IMAGE:-openstackqinling/nodejs-runtime}
QINLING_PYTHON_RUNTIME_IMAGE=${QINLING_PYTHON_RUNTIME_IMAGE:-openstackqinling/python-runtime:0.0.2}
QINLING_NODEJS_RUNTIME_IMAGE=${QINLING_NODEJS_RUNTIME_IMAGE:-openstackqinling/nodejs-runtime:0.0.1}
QINLING_SIDECAR_IMAGE=${QINLING_SIDECAR_IMAGE:-openstackqinling/sidecar:0.0.1}
QINLING_K8S_APISERVER_TLS=${QINLING_K8S_APISERVER_TLS:-True}

5
qinling/config.py

@ -112,6 +112,11 @@ engine_opts = [
default=3,
help='Maximum number of concurrent executions per function.'
),
cfg.StrOpt(
'sidecar_image',
default='openstackqinling/sidecar:0.0.1',
help='The sidecar image being used in the worker.'
),
]
STORAGE_GROUP = 'storage'

1
qinling/orchestrator/kubernetes/manager.py

@ -111,6 +111,7 @@ class KubernetesManager(base.OrchestratorBase):
"replicas": self.conf.kubernetes.replicas,
"container_name": 'worker',
"image": image,
"sidecar_image": self.conf.engine.sidecar_image
}
)

2
qinling/orchestrator/kubernetes/templates/deployment.j2

@ -35,7 +35,7 @@ spec:
- name: package-folder
mountPath: /var/qinling/packages
- name: sidecar
image: openstackqinling/sidecar
image: {{ sidecar_image }}
imagePullPolicy: IfNotPresent
ports:
- containerPort: 9091

3
qinling/tests/unit/orchestrator/kubernetes/test_manager.py

@ -152,7 +152,8 @@ class TestKubernetesManager(base.DbTestCase):
'labels': {'runtime_id': fake_deployment_name},
'replicas': fake_replicas,
'container_name': 'worker',
'image': fake_image
'image': fake_image,
'sidecar_image': CONF.engine.sidecar_image
}
)
self.k8s_v1_ext.create_namespaced_deployment.assert_called_once_with(

6
qinling_tempest_plugin/config.py

@ -40,4 +40,10 @@ QinlingGroup = [
choices=['public', 'admin', 'internal',
'publicURL', 'adminURL', 'internalURL'],
help="The endpoint type to use for the qinling service."),
cfg.StrOpt("python_runtime_image",
default="openstackqinling/python-runtime:0.0.2",
help="The Python runtime being used in the tests."),
cfg.StrOpt("nodejs_runtime_image",
default="openstackqinling/nodejs-runtime:0.0.1",
help="The NodeJS runtime being used in the tests."),
]

5
qinling_tempest_plugin/tests/api/test_executions_nodejs.py

@ -11,14 +11,17 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from tempest import config
from tempest.lib import decorators
from qinling_tempest_plugin.tests import base
CONF = config.CONF
class NodeJSExecutionsTest(base.BaseQinlingTest):
name_prefix = 'NodeJSExecutionsTest'
image = 'openstackqinling/nodejs-runtime'
image = CONF.qinling.nodejs_runtime_image
def setUp(self):
super(NodeJSExecutionsTest, self).setUp()

2
qinling_tempest_plugin/tests/base.py

@ -27,7 +27,7 @@ CONF = config.CONF
class BaseQinlingTest(test.BaseTestCase):
credentials = ('admin', 'primary', 'alt')
create_runtime = True
image = 'openstackqinling/python-runtime'
image = CONF.qinling.python_runtime_image
@classmethod
def skip_checks(cls):

Loading…
Cancel
Save