mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-05-06 13:22:48 +00:00
Initial OpenShift integration test support. (#36207)
Based on integration tests from chouseknecht for openshift_raw.
This commit is contained in:
12
test/integration/cloud-config-openshift.kubeconfig.template
Normal file
12
test/integration/cloud-config-openshift.kubeconfig.template
Normal file
@@ -0,0 +1,12 @@
|
||||
# This is the configuration template for ansible-test OpenShift integration tests.
|
||||
#
|
||||
# You do not need this template if you are:
|
||||
#
|
||||
# 1) Running integration tests without using ansible-test.
|
||||
# 2) Using the automatically provisioned openshift-origin docker container in ansible-test.
|
||||
#
|
||||
# If you do not want to use the automatically provided OpenShift container,
|
||||
# place your kubeconfig file next to this file, with the same name, but without the .template extension.
|
||||
# This will cause ansible-test to use the given configuration and not launch the automatically provided container.
|
||||
#
|
||||
# It is recommended that you DO NOT use this template unless you cannot use the automatically provided container.
|
||||
2
test/integration/targets/openshift_raw/aliases
Normal file
2
test/integration/targets/openshift_raw/aliases
Normal file
@@ -0,0 +1,2 @@
|
||||
cloud/openshift
|
||||
posix/ci/cloud/group4/openshift
|
||||
132
test/integration/targets/openshift_raw/tasks/main.yml
Normal file
132
test/integration/targets/openshift_raw/tasks/main.yml
Normal file
@@ -0,0 +1,132 @@
|
||||
- name: Install requirements
|
||||
pip:
|
||||
name: openshift
|
||||
|
||||
- name: Create a project
|
||||
openshift_raw:
|
||||
name: testing
|
||||
kind: project
|
||||
description: My testing project
|
||||
display_name: Testing Project
|
||||
api_version: v1
|
||||
register: output
|
||||
|
||||
- name: show output
|
||||
debug:
|
||||
var: output
|
||||
|
||||
- name: Create a service
|
||||
openshift_raw:
|
||||
state: present
|
||||
resource_definition:
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: web
|
||||
namespace: testing
|
||||
labels:
|
||||
app: galaxy
|
||||
service: web
|
||||
spec:
|
||||
selector:
|
||||
app: galaxy
|
||||
service: web
|
||||
ports:
|
||||
- protocol: TCP
|
||||
targetPort: 8000
|
||||
name: port-8000-tcp
|
||||
port: 8000
|
||||
register: output
|
||||
|
||||
- name: show output
|
||||
debug:
|
||||
var: output
|
||||
|
||||
- name: Delete an existing PVC
|
||||
openshift_raw:
|
||||
name: web
|
||||
namespace: testing
|
||||
api: v1
|
||||
kind: persistent_volume_claim
|
||||
state: absent
|
||||
|
||||
- name: Create PVC
|
||||
openshift_raw:
|
||||
state: present
|
||||
inline: &pvc
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: elastic-volume
|
||||
namespace: testing
|
||||
spec:
|
||||
resources:
|
||||
requests:
|
||||
storage: 5Gi
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
|
||||
- name: Show output
|
||||
debug:
|
||||
var: output
|
||||
|
||||
- name: Create PVC
|
||||
openshift_raw:
|
||||
state: present
|
||||
inline: *pvc
|
||||
register: output
|
||||
|
||||
- name: Show output
|
||||
debug:
|
||||
var: output
|
||||
|
||||
- name: PVC should be idempotent
|
||||
assert:
|
||||
that: not output.changed
|
||||
|
||||
- name: Delete an existing deployment config
|
||||
openshift_raw:
|
||||
name: elastic
|
||||
namespace: testing
|
||||
api: v1
|
||||
kind: DeploymentConfig
|
||||
state: absent
|
||||
|
||||
- name: Create deployment config
|
||||
openshift_raw:
|
||||
state: present
|
||||
inline: &dc
|
||||
apiVersion: v1
|
||||
kind: DeploymentConfig
|
||||
metadata:
|
||||
name: elastic
|
||||
labels:
|
||||
app: galaxy
|
||||
service: elastic
|
||||
namespace: testing
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: galaxy
|
||||
service: elastic
|
||||
spec:
|
||||
containers:
|
||||
- name: elastic
|
||||
volumeMounts:
|
||||
- mountPath: /usr/share/elasticsearch/data
|
||||
name: elastic-volume
|
||||
command: ['elasticsearch']
|
||||
image: 'ansible/galaxy-elasticsearch:2.4.6'
|
||||
volumes:
|
||||
- name: elastic-volume
|
||||
persistentVolumeClaim:
|
||||
claimName: elastic-volume
|
||||
replicas: 1
|
||||
strategy:
|
||||
type: Rolling
|
||||
register: output
|
||||
|
||||
- name: Show output
|
||||
debug:
|
||||
var: output
|
||||
Reference in New Issue
Block a user