summaryrefslogtreecommitdiffstats
path: root/test/integration/targets/scaleway_compute/tasks/security_group.yml
blob: a0e273c2ca156c186a78e5c9487e263c84c68383 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
- name: Create a scaleway security_group
  scaleway_security_group:
    state: present
    region: '{{ scaleway_region }}'
    name: test_compute
    description: test_compute
    organization: '{{ scaleway_organization }}'
    stateful: true
    inbound_default_policy: accept
    outbound_default_policy: accept
    organization_default: false
  register: security_group

- debug: var=security_group

- block:
  - name: Create a server with security_group (Check)
    check_mode: yes
    scaleway_compute:
      name: '{{ scaleway_name }}'
      state: present
      image: '{{ scaleway_image_id }}'
      organization: '{{ scaleway_organization }}'
      region: '{{ scaleway_region }}'
      commercial_type: '{{ scaleway_commerial_type }}'
      security_group: '{{ security_group.scaleway_security_group.id }}'

    register: server_creation_check_task

  - debug: var=server_creation_check_task

  - assert:
      that:
        - server_creation_check_task is success
        - server_creation_check_task is changed

  - name: Create a server
    scaleway_compute:
      name: '{{ scaleway_name }}'
      state: present
      image: '{{ scaleway_image_id }}'
      organization: '{{ scaleway_organization }}'
      region: '{{ scaleway_region }}'
      commercial_type: '{{ scaleway_commerial_type }}'
      security_group: '{{ security_group.scaleway_security_group.id }}'
      wait: true

    register: server_creation_task

  - debug: var=server_creation_task

  - assert:
      that:
        - server_creation_task is success
        - server_creation_task is changed

  - name: Create a server with security_group (Confirmation)
    scaleway_compute:
      name: '{{ scaleway_name }}'
      state: present
      image: '{{ scaleway_image_id }}'
      organization: '{{ scaleway_organization }}'
      region: '{{ scaleway_region }}'
      commercial_type: '{{ scaleway_commerial_type }}'
      security_group: '{{ security_group.scaleway_security_group.id }}'
      wait: true

    register: server_creation_confirmation_task

  - debug: var=server_creation_confirmation_task

  - assert:
      that:
        - server_creation_confirmation_task is success
        - server_creation_confirmation_task is not changed

  - name: Keep current security_group (Check)
    check_mode: yes
    scaleway_compute:
      name: '{{ scaleway_name }}'
      state: present
      image: '{{ scaleway_image_id }}'
      organization: '{{ scaleway_organization }}'
      region: '{{ scaleway_region }}'
      commercial_type: '{{ scaleway_commerial_type }}'
      security_group: '{{ security_group.scaleway_security_group.id }}'
      wait: true

    register: server_creation_confirmation_task

  - debug: var=server_creation_confirmation_task

  - assert:
      that:
        - server_creation_confirmation_task is success
        - server_creation_confirmation_task is not changed

  - name: Keep current security_group
    scaleway_compute:
      name: '{{ scaleway_name }}'
      state: present
      image: '{{ scaleway_image_id }}'
      organization: '{{ scaleway_organization }}'
      region: '{{ scaleway_region }}'
      commercial_type: '{{ scaleway_commerial_type }}'
      wait: true

    register: server_creation_confirmation_task

  - debug: var=server_creation_confirmation_task

  - assert:
      that:
        - server_creation_confirmation_task is success
        - server_creation_confirmation_task is not changed

  always:
    - name: Destroy it
      scaleway_compute:
        name: '{{ scaleway_name }}'
        state: absent
        image: '{{ scaleway_image_id }}'
        organization: '{{ scaleway_organization }}'
        region: '{{ scaleway_region }}'
        commercial_type: '{{ scaleway_commerial_type }}'
        wait: true

      register: server_destroy_task

    - debug: var=server_destroy_task

    - assert:
        that:
          - server_destroy_task is success
          - server_destroy_task is changed

    - name: Create a scaleway security_group
      scaleway_security_group:
        state: absent
        region: '{{ scaleway_region }}'
        name: test_compute
        description: test_compute
        organization: '{{ scaleway_organization }}'
        stateful: true
        inbound_default_policy: accept
        outbound_default_policy: accept
        organization_default: false