180 lines
5.3 KiB
YAML
180 lines
5.3 KiB
YAML
|
# Copyright 2019 Google Inc.
|
||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
# you may not use this file except in compliance with the License.
|
||
|
# You may obtain a copy of the License at
|
||
|
#
|
||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||
|
#
|
||
|
# Unless required by applicable law or agreed to in writing, software
|
||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
# 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.
|
||
|
|
||
|
---
|
||
|
# ----------------------------------------------------------------------------
|
||
|
#
|
||
|
# *** AUTO GENERATED CODE *** AUTO GENERATED CODE ***
|
||
|
#
|
||
|
# ----------------------------------------------------------------------------
|
||
|
#
|
||
|
# This file is automatically generated by Magic Modules and manual
|
||
|
# changes will be clobbered when the file is regenerated.
|
||
|
#
|
||
|
# Please read more about how to change this file at
|
||
|
# https://www.github.com/GoogleCloudPlatform/magic-modules
|
||
|
#
|
||
|
# ----------------------------------------------------------------------------
|
||
|
# Pre-test setup
|
||
|
- name: delete a firewall
|
||
|
google.cloud.gcp_compute_firewall:
|
||
|
name: "{{ resource_name }}"
|
||
|
allowed:
|
||
|
- ip_protocol: tcp
|
||
|
ports:
|
||
|
- '22'
|
||
|
target_tags:
|
||
|
- test-ssh-server
|
||
|
- staging-ssh-server
|
||
|
source_tags:
|
||
|
- test-ssh-clients
|
||
|
project: "{{ gcp_project }}"
|
||
|
auth_kind: "{{ gcp_cred_kind }}"
|
||
|
service_account_file: "{{ gcp_cred_file }}"
|
||
|
state: absent
|
||
|
#----------------------------------------------------------
|
||
|
- name: create a firewall
|
||
|
google.cloud.gcp_compute_firewall:
|
||
|
name: "{{ resource_name }}"
|
||
|
allowed:
|
||
|
- ip_protocol: tcp
|
||
|
ports:
|
||
|
- '22'
|
||
|
target_tags:
|
||
|
- test-ssh-server
|
||
|
- staging-ssh-server
|
||
|
source_tags:
|
||
|
- test-ssh-clients
|
||
|
project: "{{ gcp_project }}"
|
||
|
auth_kind: "{{ gcp_cred_kind }}"
|
||
|
service_account_file: "{{ gcp_cred_file }}"
|
||
|
state: present
|
||
|
register: result
|
||
|
- name: assert changed is true
|
||
|
assert:
|
||
|
that:
|
||
|
- result.changed == true
|
||
|
- name: verify that firewall was created
|
||
|
google.cloud.gcp_compute_firewall_info:
|
||
|
filters:
|
||
|
- name = {{ resource_name }}
|
||
|
project: "{{ gcp_project }}"
|
||
|
auth_kind: "{{ gcp_cred_kind }}"
|
||
|
service_account_file: "{{ gcp_cred_file }}"
|
||
|
scopes:
|
||
|
- https://www.googleapis.com/auth/compute
|
||
|
register: results
|
||
|
- name: verify that command succeeded
|
||
|
assert:
|
||
|
that:
|
||
|
- results['resources'] | length == 1
|
||
|
# ----------------------------------------------------------------------------
|
||
|
- name: update the firewall
|
||
|
google.cloud.gcp_compute_firewall:
|
||
|
name: "{{ resource_name }}"
|
||
|
allowed:
|
||
|
- ip_protocol: tcp
|
||
|
ports:
|
||
|
- '55'
|
||
|
target_tags:
|
||
|
- test-ssh-server
|
||
|
- staging-ssh-server
|
||
|
source_tags:
|
||
|
- test-ssh-clients
|
||
|
project: "{{ gcp_project }}"
|
||
|
auth_kind: "{{ gcp_cred_kind }}"
|
||
|
service_account_file: "{{ gcp_cred_file }}"
|
||
|
state: present
|
||
|
register: result
|
||
|
- name: assert changed is true
|
||
|
assert:
|
||
|
that:
|
||
|
- result.changed == true
|
||
|
# ----------------------------------------------------------------------------
|
||
|
- name: check firewall was updated.
|
||
|
google.cloud.gcp_compute_firewall_info:
|
||
|
filters:
|
||
|
- name = {{ resource_name }}
|
||
|
project: "{{ gcp_project }}"
|
||
|
auth_kind: "{{ gcp_cred_kind }}"
|
||
|
service_account_file: "{{ gcp_cred_file }}"
|
||
|
scopes:
|
||
|
- https://www.googleapis.com/auth/compute
|
||
|
register: results
|
||
|
- name: verify that command succeeded
|
||
|
assert:
|
||
|
that:
|
||
|
- results['resources'] | length == 1
|
||
|
- name: verify that update succeeded
|
||
|
assert:
|
||
|
that:
|
||
|
- results['resources'][0]['allowed'][0]['ports'][0] == '55'
|
||
|
#----------------------------------------------------------
|
||
|
- name: delete a firewall
|
||
|
google.cloud.gcp_compute_firewall:
|
||
|
name: "{{ resource_name }}"
|
||
|
allowed:
|
||
|
- ip_protocol: tcp
|
||
|
ports:
|
||
|
- '22'
|
||
|
target_tags:
|
||
|
- test-ssh-server
|
||
|
- staging-ssh-server
|
||
|
source_tags:
|
||
|
- test-ssh-clients
|
||
|
project: "{{ gcp_project }}"
|
||
|
auth_kind: "{{ gcp_cred_kind }}"
|
||
|
service_account_file: "{{ gcp_cred_file }}"
|
||
|
state: absent
|
||
|
register: result
|
||
|
- name: assert changed is true
|
||
|
assert:
|
||
|
that:
|
||
|
- result.changed == true
|
||
|
- name: verify that firewall was deleted
|
||
|
google.cloud.gcp_compute_firewall_info:
|
||
|
filters:
|
||
|
- name = {{ resource_name }}
|
||
|
project: "{{ gcp_project }}"
|
||
|
auth_kind: "{{ gcp_cred_kind }}"
|
||
|
service_account_file: "{{ gcp_cred_file }}"
|
||
|
scopes:
|
||
|
- https://www.googleapis.com/auth/compute
|
||
|
register: results
|
||
|
- name: verify that command succeeded
|
||
|
assert:
|
||
|
that:
|
||
|
- results['resources'] | length == 0
|
||
|
# ----------------------------------------------------------------------------
|
||
|
- name: delete a firewall that does not exist
|
||
|
google.cloud.gcp_compute_firewall:
|
||
|
name: "{{ resource_name }}"
|
||
|
allowed:
|
||
|
- ip_protocol: tcp
|
||
|
ports:
|
||
|
- '22'
|
||
|
target_tags:
|
||
|
- test-ssh-server
|
||
|
- staging-ssh-server
|
||
|
source_tags:
|
||
|
- test-ssh-clients
|
||
|
project: "{{ gcp_project }}"
|
||
|
auth_kind: "{{ gcp_cred_kind }}"
|
||
|
service_account_file: "{{ gcp_cred_file }}"
|
||
|
state: absent
|
||
|
register: result
|
||
|
- name: assert changed is false
|
||
|
assert:
|
||
|
that:
|
||
|
- result.changed == false
|