summaryrefslogtreecommitdiffstats
path: root/ansible_collections/community/okd/molecule/default/converge.yml
blob: 7fe9e82093f64b5797a7e6d4bb0c8cbf5b985c21 (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
---
- name: Converge
  hosts: localhost
  connection: local
  gather_facts: no
  vars:
    ansible_python_interpreter: '{{ virtualenv_interpreter }}'
  vars_files:
    - vars/main.yml
  tasks:
    # OpenShift Resources
    - name: Create a project
      community.okd.k8s:
        name: testing
        kind: Project
        api_version: project.openshift.io/v1
        apply: no
      register: output

    - name: show output
      debug:
        var: output

    - name: Create deployment config
      community.okd.k8s:
        state: present
        name: hello-world
        namespace: testing
        definition: '{{ okd_dc_template }}'
        wait: yes
        wait_condition:
          type: Available
          status: True
      vars:
        k8s_pod_name: hello-world
        k8s_pod_image: python
        k8s_pod_command:
          - python
          - '-m'
          - http.server
        k8s_pod_env:
          - name: TEST
            value: test
        okd_dc_triggers:
          - type: ConfigChange
      register: output

    - name: Show output
      debug:
        var: output

    - vars:
        image: docker.io/python
        image_name: python
        image_tag: latest
        k8s_pod_image: python
        k8s_pod_command:
          - python
          - '-m'
          - http.server
        namespace: idempotence-testing
      block:
        - name: Create a namespace
          community.okd.k8s:
            name: '{{ namespace }}'
            kind: Namespace
            api_version: v1

        - name: Create imagestream
          community.okd.k8s:
            namespace: '{{ namespace }}'
            definition: '{{ okd_imagestream_template }}'

        - name: Create DeploymentConfig to reference ImageStream
          community.okd.k8s:
            name: '{{ k8s_pod_name }}'
            namespace: '{{ namespace }}'
            definition: '{{ okd_dc_template }}'
          vars:
            k8s_pod_name: is-idempotent-dc

        - name: Create Deployment to reference ImageStream
          community.okd.k8s:
            name: '{{ k8s_pod_name }}'
            namespace: '{{ namespace }}'
            definition: '{{ k8s_deployment_template | combine(metadata)  }}'
          vars:
            k8s_pod_annotations:
              "alpha.image.policy.openshift.io/resolve-names": "*"
            k8s_pod_name: is-idempotent-deployment
            annotation:
              - from:
                  kind: ImageStreamTag
                  name: "{{ image_name }}:{{ image_tag}}}"
                fieldPath: 'spec.template.spec.containers[?(@.name=="{{ k8s_pod_name }}")].image}'
            metadata:
              metadata:
                annotations:
                  image.openshift.io/triggers: '{{ annotation | to_json }}'