debian_family.yml 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. - name: disable apt-daily update service
  2. shell: |
  3. systemctl mask apt-daily.service apt-daily-upgrade.service
  4. systemctl disable apt-daily.service apt-daily-upgrade.service
  5. systemctl disable apt-daily.timer apt-daily-upgrade.timer
  6. become: true
  7. - name: ensure gnupng installed
  8. shell: |
  9. apt-get update -y && apt-get install gnupg -y
  10. become: true
  11. - name: download SHA1 gpg public key for {{ansible_distribution}}
  12. get_url:
  13. url: https://iso.yunion.cn/apt/yunion.gpg-key.asc
  14. dest: /tmp/yunion.gpg-key.asc
  15. validate_certs: no
  16. become: true
  17. when:
  18. - ansible_distribution in ["Debian", "Ubuntu"]
  19. - ansible_distribution_major_version in ["10", "11", "12", "20", "22", "24"]
  20. - name: download SHA512 gpg public key for {{ansible_distribution}}
  21. get_url:
  22. url: https://iso.yunion.cn/apt/yunion2.gpg-key.asc
  23. dest: /tmp/yunion2.gpg-key.asc
  24. validate_certs: no
  25. become: true
  26. when:
  27. - ansible_distribution in ["Debian", "Ubuntu"]
  28. - ansible_distribution_major_version in ["13", "25"]
  29. - name: import SHA1 {{ansible_distribution}} sig key
  30. shell: |
  31. apt-key add /tmp/yunion.gpg-key.asc
  32. rm -fr /tmp/yunion.gpg-key.asc
  33. become: true
  34. args:
  35. executable: /bin/bash
  36. when:
  37. - ansible_distribution in ["Debian", "Ubuntu"]
  38. - ansible_distribution_major_version in ["10", "11", "12", "20", "22", "24"]
  39. - name: import SHA512 {{ansible_distribution}} sig key
  40. shell: |
  41. mv /tmp/yunion2.gpg-key.asc /etc/apt/keyrings/yunion2.gpg-key.asc
  42. become: true
  43. args:
  44. executable: /bin/bash
  45. when:
  46. - ansible_distribution in ["Debian", "Ubuntu"]
  47. - ansible_distribution_major_version in ["13", "25"]
  48. # https://iso.yunion.cn/debian/10/3.9/x86_64/
  49. - name: apply {{ansible_distribution}} sig key
  50. shell: |
  51. curl "https://iso.yunion.cn/apt/{{ansible_distribution | lower}}-{{ ansible_distribution_major_version }}/base/cloudpods-base.sources" -o /etc/apt/sources.list.d/cloudpods-base.sources
  52. curl "https://iso.yunion.cn/apt/{{ansible_distribution | lower}}-{{ ansible_distribution_major_version }}/updates/cloudpods-updates.sources" -o /etc/apt/sources.list.d/cloudpods-updates.sources
  53. apt-get update -y
  54. become: true
  55. args:
  56. executable: /bin/bash
  57. - name: Unified Cgroup Hierarchy
  58. include_tasks: utils/unified_cgroup_hierarchy.yml
  59. when:
  60. - ansible_distribution in ["Debian", "Ubuntu"]
  61. - ansible_distribution_major_version in ["11", "12", "13", "22", "24", "25"]
  62. - onecloud_version is defined
  63. - onecloud_version is version('v3.10', '<=')
  64. - upgrade_onecloud_version is not defined or upgrade_onecloud_version is version('v3.10', '<=')
  65. - name: Append ovs_packages to common_packages if ovs_packages is defined
  66. set_fact:
  67. common_packages: "{{ common_packages + ovs_packages }}"
  68. when:
  69. - ovs_packages is defined
  70. - common_packages is defined
  71. - onecloud_version is version('v4.0', '<')
  72. - upgrade_onecloud_version is not defined or upgrade_onecloud_version is version('v4.0', '<')
  73. - name: Append ceph_packages to common_packages if ceph_packages is defined
  74. set_fact:
  75. common_packages: "{{ common_packages + ceph_packages }}"
  76. when:
  77. - ceph_packages is defined
  78. - common_packages is defined
  79. - onecloud_version is version('v4.0', '<')
  80. - upgrade_onecloud_version is not defined or upgrade_onecloud_version is version('v4.0', '<')
  81. - name: Install common packages via loop for Debian Family
  82. package:
  83. name: "{{ package_item }}"
  84. become: true
  85. with_items:
  86. - "{{ common_packages }}"
  87. loop_control:
  88. index_var: item_index
  89. label: "[{{ item_index + 1 }}/{{ common_packages|length }}] {{ package_item }}"
  90. loop_var: package_item
  91. tags:
  92. - package
  93. - name: Install latest packages via loop for debian-based system
  94. package:
  95. name: "{{ package_item }}"
  96. become: true
  97. with_items:
  98. - "{{ latest_packages }}"
  99. when:
  100. - latest_packages is defined
  101. loop_control:
  102. index_var: item_index
  103. label: "[{{ '%02d'|format(item_index + 1) }}/{{ common_packages|length }}] {{ package_item }}"
  104. loop_var: package_item
  105. tags:
  106. - package
  107. - common_packages
  108. - name: Check that if selinux config exists
  109. stat:
  110. path: /etc/selinux/config
  111. register: selinux_conf_exists
  112. - name: Turn off selinux
  113. selinux:
  114. state: disabled
  115. become: true
  116. when:
  117. - selinux_conf_exists.stat.exists
  118. - name: Import task utils/config_iptables.yml
  119. include_tasks: utils/config_iptables.yml