Issue #30: Test with Molecule 3.0 alpha.

This commit is contained in:
Jeff Geerling
2020-02-19 11:03:14 -06:00
parent 6d49ef700a
commit eb81891577
21 changed files with 268 additions and 246 deletions

View File

@@ -14,7 +14,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python_version: ["3.6"]
python_version: ['3.6']
steps:
- name: Check out code
uses: actions/checkout@v1
@@ -36,7 +36,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python_version: ["3.6"]
python_version: ['3.6']
steps:
- name: Check out code
uses: actions/checkout@v1
@@ -76,8 +76,9 @@ jobs:
with:
python-version: ${{ matrix.python_version }}
# TODO: Remove molecule version constraint after 3.0 is released.
- name: Install molecule and openshift dependencies
run: pip install molecule openshift
run: pip install molecule===3.0a9 yamllint openshift
- name: Install ansible-base
run: pip install git+https://github.com/ansible-collection-migration/ansible-base.git --disable-pip-version-check

12
.yamllint Normal file
View File

@@ -0,0 +1,12 @@
---
extends: default
rules:
braces:
max-spaces-inside: 1
level: error
brackets:
max-spaces-inside: 1
level: error
line-length: disable
truthy: disable

View File

@@ -6,12 +6,8 @@ driver:
login_cmd_template: 'docker exec -ti {instance} bash'
ansible_connection_options:
ansible_connection: docker
lint:
name: yamllint
options:
config-data:
line-length:
max: 160
lint: |
yamllint .
platforms:
- name: instance-kind
provisioner:
@@ -27,6 +23,7 @@ provisioner:
scenario:
name: default
test_sequence:
- lint
- syntax
- converge
- verify

View File

@@ -1,3 +1,4 @@
---
- block:
- name: Ensure that append_hash namespace exists
k8s:

View File

@@ -1,5 +1,4 @@
---
- name: Ensure testing1 namespace exists
k8s:
api_version: v1

View File

@@ -1,3 +1,4 @@
---
apiVersion: certmanager.k8s.io/v1alpha1
kind: Certificate
metadata:

View File

@@ -1,3 +1,4 @@
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:

View File

@@ -1,3 +1,4 @@
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:

View File

@@ -1,3 +1,4 @@
---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:

View File

@@ -1,3 +1,4 @@
---
- name: delete temporary directory
file:
path: "{{ remote_tmp_dir }}"

View File

@@ -1 +1,2 @@
---
dependencies: []

View File

@@ -1,3 +1,4 @@
---
- include_tasks: setup_remote_tmp_dir.yml
- set_fact:

View File

@@ -1,11 +1,12 @@
# TODO: Not available in ansible-base
# - python_requirements_info:
# dependencies:
# - openshift==0.6.0
# - kubernetes==6.0.0
---
# TODO: Not available in ansible-base
# - python_requirements_info:
# dependencies:
# - openshift==0.6.0
# - kubernetes==6.0.0
# append_hash
- name: use append_hash with ConfigMap
# append_hash
- name: use append_hash with ConfigMap
k8s:
definition:
metadata:
@@ -19,15 +20,15 @@
ignore_errors: yes
register: k8s_append_hash
- name: assert that append_hash fails gracefully
- name: assert that append_hash fails gracefully
assert:
that:
- k8s_append_hash is failed
- "'Failed to import the required Python library (openshift >= 0.7.2)' in k8s_append_hash.msg"
- "'. This is required for append_hash.' in k8s_append_hash.msg"
# validate
- name: attempt to use validate with older openshift
# validate
- name: attempt to use validate with older openshift
k8s:
definition:
metadata:
@@ -42,14 +43,14 @@
ignore_errors: yes
register: k8s_validate
- name: assert that validate fails gracefully
- name: assert that validate fails gracefully
assert:
that:
- k8s_validate is failed
- "k8s_validate.msg == 'openshift >= 0.8.0 is required for validate'"
# apply
- name: attempt to use apply with older openshift
# apply
- name: attempt to use apply with older openshift
k8s:
definition:
metadata:
@@ -63,7 +64,7 @@
ignore_errors: yes
register: k8s_apply
- name: assert that apply fails gracefully
- name: assert that apply fails gracefully
assert:
that:
- k8s_apply is failed

View File

@@ -1,3 +1,4 @@
---
# OpenShift Resources
- name: Create a project
k8s:

View File

@@ -1,3 +1,4 @@
---
- name: create temporary directory
test_tempfile:
state: directory

View File

@@ -1,3 +1,4 @@
---
- block:
- name: Create a namespace
k8s:

View File

@@ -1,11 +1,12 @@
# TODO: Not available in ansible-base
# - python_requirements_info:
# dependencies:
# - openshift
# - kubernetes
# - kubernetes-validate
---
# TODO: Not available in ansible-base
# - python_requirements_info:
# dependencies:
# - openshift
# - kubernetes
# - kubernetes-validate
- k8s:
- k8s:
definition:
apiVersion: v1
kind: ConfigMap
@@ -17,7 +18,7 @@
ignore_errors: yes
register: k8s_no_validate
- name: assert that k8s_no_validate fails gracefully
- name: assert that k8s_no_validate fails gracefully
assert:
that:
- k8s_no_validate is failed