diff --git a/inventory/cloud b/inventory/cloud index a75dc486c1..213b625a43 100644 --- a/inventory/cloud +++ b/inventory/cloud @@ -33,6 +33,8 @@ copr-keygen.aws.fedoraproject.org copr-keygen-dev.aws.fedoraproject.org #copr-be-dev.cloud.fedoraproject.org copr-dist-git-dev.fedorainfracloud.org +copr-pulp.aws.fedoraproject.org +copr-pulp-dev.aws.fedoraproject.org f36-test.fedorainfracloud.org f37-test.fedorainfracloud.org rawhide-test.fedorainfracloud.org diff --git a/inventory/group_vars/copr_pulp_aws b/inventory/group_vars/copr_pulp_aws new file mode 100644 index 0000000000..c43c55a9ef --- /dev/null +++ b/inventory/group_vars/copr_pulp_aws @@ -0,0 +1,3 @@ +--- +services_disabled: false +aws_ipv6_addr: "" diff --git a/inventory/group_vars/copr_pulp_dev_aws b/inventory/group_vars/copr_pulp_dev_aws new file mode 100644 index 0000000000..e25b1f72e5 --- /dev/null +++ b/inventory/group_vars/copr_pulp_dev_aws @@ -0,0 +1,3 @@ +--- +services_disabled: false +aws_ipv6_addr: "2600:1f18:8ee:ae00:c4b7:de1a:4d13:e5a4" diff --git a/inventory/host_vars/copr-pulp-dev.aws.fedoraproject.org b/inventory/host_vars/copr-pulp-dev.aws.fedoraproject.org new file mode 100644 index 0000000000..276fda227c --- /dev/null +++ b/inventory/host_vars/copr-pulp-dev.aws.fedoraproject.org @@ -0,0 +1,14 @@ +hostbase: copr-pulp-dev- +nagios_Check_Services: + dhcpd: false + httpd: true + mail: false + named: false + nrpe: true + ping: false + raid: false + sshd: false + swap: false +public_ip: 44.206.10.188 +swap_file_path: /swap +swap_file_size_mb: 16384 diff --git a/inventory/host_vars/copr-pulp.aws.fedoraproject.org b/inventory/host_vars/copr-pulp.aws.fedoraproject.org new file mode 100644 index 0000000000..18835b28eb --- /dev/null +++ b/inventory/host_vars/copr-pulp.aws.fedoraproject.org @@ -0,0 +1,14 @@ +hostbase: copr-pulp- +nagios_Check_Services: + dhcpd: false + httpd: true + mail: false + named: false + nrpe: true + ping: false + raid: false + sshd: false + swap: false +public_ip: TODO +swap_file_path: /swap +swap_file_size_mb: 16384 diff --git a/inventory/inventory b/inventory/inventory index 10d974e8dc..511a99f56a 100644 --- a/inventory/inventory +++ b/inventory/inventory @@ -650,6 +650,7 @@ copr-db-stg.aws.fedoraproject.org copr-dist-git-dev.aws.fedoraproject.org copr-fe-dev.aws.fedoraproject.org copr-keygen-dev.aws.fedoraproject.org +copr-pulp-dev.aws.fedoraproject.org db-datanommer01.stg.iad2.fedoraproject.org db-fas01.stg.iad2.fedoraproject.org db-koji01.stg.iad2.fedoraproject.org @@ -964,11 +965,18 @@ copr-keygen-dev.aws.fedoraproject.org [copr_dist_git_dev_aws] copr-dist-git-dev.aws.fedoraproject.org +[copr_pulp_aws] +copr-pulp.aws.fedoraproject.org + +[copr_pulp_dev_aws] +copr-pulp-dev.aws.fedoraproject.org + [copr_aws:children] copr_front_aws copr_back_aws copr_dist_git_aws copr_keygen_aws +copr_pulp_aws [copr_dev_aws:children] copr_front_dev_aws @@ -976,6 +984,7 @@ copr_back_dev_aws copr_dist_git_dev_aws copr_keygen_dev_aws copr_db_stg +copr_pulp_dev_aws [copr_all_instances_aws:children] copr_aws diff --git a/main.yml b/main.yml index c85755033d..598e151e7c 100644 --- a/main.yml +++ b/main.yml @@ -28,6 +28,7 @@ - import_playbook: /srv/web/infra/ansible/playbooks/groups/copr-frontend.yml - import_playbook: /srv/web/infra/ansible/playbooks/groups/copr-hypervisor.yml - import_playbook: /srv/web/infra/ansible/playbooks/groups/copr-keygen.yml +- import_playbook: /srv/web/infra/ansible/playbooks/groups/copr-pulp.yml - import_playbook: /srv/web/infra/ansible/playbooks/groups/debuginfod.yml - import_playbook: /srv/web/infra/ansible/playbooks/groups/dns.yml - import_playbook: /srv/web/infra/ansible/playbooks/groups/download.yml diff --git a/playbooks/groups/copr-pulp.yml b/playbooks/groups/copr-pulp.yml new file mode 100644 index 0000000000..5ad98c97ec --- /dev/null +++ b/playbooks/groups/copr-pulp.yml @@ -0,0 +1,59 @@ +- name: check/create instance + hosts: copr_pulp_dev_aws:copr_pulp_aws + gather_facts: False + + vars_files: + - /srv/web/infra/ansible/vars/global.yml + - "/srv/private/ansible/vars.yml" + - /srv/private/ansible/files/openstack/passwords.yml + + handlers: + - import_tasks: "{{ handlers_path }}/restart_services.yml" + + tasks: + # - import_tasks: "{{ tasks_path }}/persistent_cloud.yml" + # when: datacenter != 'aws' + + - import_tasks: "{{ tasks_path }}/aws_cloud.yml" + when: datacenter == 'aws' + + + - name: gather facts + setup: + check_mode: no + ignore_errors: True + register: facts + - name: install python2 and dnf stuff + raw: dnf -y install python-dnf libselinux-python yum + when: facts is failed + +- name: cloud basic setup + hosts: copr_pulp_dev_aws:copr_pulp_aws + gather_facts: True + vars_files: + - /srv/web/infra/ansible/vars/global.yml + - "/srv/private/ansible/vars.yml" + + pre_tasks: + - import_tasks: "{{ tasks_path }}/yumrepos.yml" + + tasks: + - import_tasks: "{{ tasks_path }}/cloud_setup_basic.yml" + - name: set hostname (required by some services, at least postfix need it) + hostname: name="{{copr_hostbase}}.cloud.fedoraproject.org" + when: datacenter != "aws" + +- name: provision instance + hosts: copr_pulp_dev_aws:copr_pulp_aws + gather_facts: True + + vars_files: + - /srv/web/infra/ansible/vars/global.yml + - "/srv/private/ansible/vars.yml" + - /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml + + roles: + - base + - nagios_client + - copr/copr-devel-server + - copr/pulp diff --git a/playbooks/manual/copr/copr-pulp-upgrade.yml b/playbooks/manual/copr/copr-pulp-upgrade.yml new file mode 100644 index 0000000000..10a0639ac5 --- /dev/null +++ b/playbooks/manual/copr/copr-pulp-upgrade.yml @@ -0,0 +1,27 @@ +--- +- name: upgrade copr pulp + hosts: copr_pulp_dev_aws:copr_pulp_aws + user: root + gather_facts: True + + vars_files: + - /srv/web/infra/ansible/vars/global.yml + - "/srv/private/ansible/vars.yml" + - /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml + + tasks: + - name: Generic upgrade tasks for copr servers + import_tasks: _generic_tasks.yml + + - name: Upgrade copr-pulp packages + dnf: + state: latest + name: + - copr-selinux + - python3-copr-common + update_cache: true + notify: + - restart haveged + + handlers: + - import_tasks: "{{ handlers_path }}/restart_services.yml" diff --git a/roles/copr/pulp/meta/main.yml b/roles/copr/pulp/meta/main.yml new file mode 100644 index 0000000000..a774579b1d --- /dev/null +++ b/roles/copr/pulp/meta/main.yml @@ -0,0 +1,3 @@ +--- +dependencies: + - { role: copr/base } diff --git a/roles/copr/pulp/tasks/main.yml b/roles/copr/pulp/tasks/main.yml new file mode 100644 index 0000000000..d23d54b8c1 --- /dev/null +++ b/roles/copr/pulp/tasks/main.yml @@ -0,0 +1,9 @@ +--- +- name: install copr packages + dnf: + state: present + name: + - python3-copr-common + - copr-selinux + tags: + - packages