Skip to content

Commit c1452a1

Browse files
committed
Add all database variables for Foreman, Candlepin and Pulp
Signed-off-by: Eric D. Helms <ericdhelms@gmail.com>
1 parent e17cb39 commit c1452a1

File tree

8 files changed

+86
-38
lines changed

8 files changed

+86
-38
lines changed

playbooks/deploy.yaml

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66
vars_files:
77
- "../vars/{{ certificate_source }}_certificates.yml"
88
- "../vars/images.yml"
9+
- "../vars/database.yml"
910
vars:
1011
certificate_source: default
1112
certificates_hostnames:
1213
- "{{ ansible_fqdn }}"
1314
- localhost
1415
certificates_ca_password: "CHANGEME"
15-
candlepin_db_password: "CHANGEME"
1616
candlepin_keystore_password: "CHANGEME"
1717
candlepin_oauth_secret: "CHANGEME"
1818
candlepin_ca_key_password: "{{ ca_key_password }}"
@@ -30,30 +30,13 @@
3030
foreman_ca_certificate: "{{ ca_certificate }}"
3131
foreman_client_key: "{{ client_key }}"
3232
foreman_client_certificate: "{{ client_certificate }}"
33-
foreman_db_password: "CHANGEME"
3433
foreman_oauth_consumer_key: abcdefghijklmnopqrstuvwxyz123456
3534
foreman_oauth_consumer_secret: abcdefghijklmnopqrstuvwxyz123456
3635
httpd_server_ca_certificate: "{{ ca_certificate }}"
3736
httpd_client_ca_certificate: "{{ ca_certificate }}"
3837
httpd_server_certificate: "{{ server_certificate }}"
3938
httpd_server_key: "{{ server_key }}"
40-
pulp_db_password: "CHANGEME"
4139
pulp_content_origin: "https://{{ ansible_fqdn }}"
42-
postgresql_restarted_state: started
43-
postgresql_databases:
44-
- name: candlepin
45-
owner: candlepin
46-
- name: foreman
47-
owner: foreman
48-
- name: pulp
49-
owner: pulp
50-
postgresql_users:
51-
- name: candlepin
52-
password: "{{ candlepin_db_password }}"
53-
- name: foreman
54-
password: "{{ foreman_db_password }}"
55-
- name: pulp
56-
password: "{{ pulp_db_password }}"
5740
pre_tasks:
5841
- name: Deploy debug_tools
5942
ansible.builtin.include_role:

roles/candlepin/defaults/main.yml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,10 @@ candlepin_ciphers:
1515
candlepin_container_image: quay.io/ehelms/candlepin
1616
candlepin_container_tag: 4.4.14
1717

18-
candlepin_db_host: localhost
19-
candlepin_db_port: 5432
20-
candlepin_db_ssl: false
21-
candlepin_db_ssl_ca: None
22-
candlepin_db_ssl_verify: true
18+
candlepin_database_host: localhost
19+
candlepin_database_port: 5432
20+
candlepin_database_ssl: false
21+
candlepin_database_ssl_mode: disable
22+
candlepin_database_ssl_ca:
23+
candlepin_database_ssl_cert:
24+
candlepin_database_ssl_key:

roles/candlepin/templates/candlepin.conf.j2

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,10 @@ candlepin.async.jobs.ExpiredPoolsCleanupJob.schedule=0 0 0 * * ?
2020

2121
jpa.config.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
2222
jpa.config.hibernate.hbm2ddl.auto=validate
23-
jpa.config.hibernate.connection.username=candlepin
24-
jpa.config.hibernate.connection.password={{ candlepin_db_password }}
23+
jpa.config.hibernate.connection.username={{ candlepin_database_user }}
24+
jpa.config.hibernate.connection.password={{ candlepin_database_password }}
2525
jpa.config.hibernate.connection.driver_class=org.postgresql.Driver
26-
jpa.config.hibernate.connection.url=jdbc:postgresql://{{ candlepin_db_host }}:{{ candlepin_db_port }}/candlepin{% if candlepin_db_ssl %}?ssl=true{% endif %}{% if candlepin_db_ssl and candlepin_db_ssl_ca is defined %}&sslrootcert={{ candlepin_db_ssl_ca }}{% endif %}{% if not candlepin_db_ssl_verify and candlepin_db_ssl %}&sslfactory=org.postgresql.ssl.NonValidatingFactory{% endif %}
26+
jpa.config.hibernate.connection.url=jdbc:postgresql://{{ candlepin_database_host }}:{{ candlepin_database_port }}/{{ candlepin_database_name }}?sslmode={{ candlepin_database_ssl_mode }}{% if candlepin_database_ssl_ca is defined %}&sslrootcert={{ candlepin_database_ssl_ca }}{% endif %}
2727

2828

2929
org.quartz.jobStore.misfireThreshold=60000
@@ -34,7 +34,7 @@ org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX
3434
org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
3535

3636
org.quartz.dataSource.myDS.driver=org.postgresql.Driver
37-
org.quartz.dataSource.myDS.user=candlepin
38-
org.quartz.dataSource.myDS.password={{ candlepin_db_password }}
37+
org.quartz.dataSource.myDS.user={{ candlepin_database_user }}
38+
org.quartz.dataSource.myDS.password={{ candlepin_database_password }}
3939
org.quartz.dataSource.myDS.maxConnections=5
40-
org.quartz.dataSource.myDS.URL=jdbc:postgresql://{{ candlepin_db_host }}:{{ candlepin_db_port }}/candlepin{% if candlepin_db_ssl %}?ssl=true{% endif %}{% if candlepin_db_ssl and candlepin_db_ssl_ca is defined %}&sslrootcert={{ candlepin_db_ssl_ca }}{% endif %}{% if not candlepin_db_ssl_verify and candlepin_db_ssl %}&sslfactory=org.postgresql.ssl.NonValidatingFactory{% endif %}
40+
org.quartz.dataSource.myDS.URL=jdbc:postgresql://{{ candlepin_database_host }}:{{ candlepin_database_port }}/{{ candlepin_database_name }}?sslmode={{ candlepin_database_ssl_mode }}{% if candlepin_database_ssl_ca is defined %}&sslrootcert={{ candlepin_database_ssl_ca }}{% endif %}

roles/foreman/defaults/main.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
11
---
22
foreman_container_image: "quay.io/evgeni/foreman-rpm"
33
foreman_container_tag: "nightly"
4+
5+
foreman_database_name: foreman
6+
foreman_database_user: foreman
7+
foreman_database_host: localhost
8+
foreman_database_port: 5432
9+
foreman_database_pool: 9
10+
foreman_database_sslmode: disable
11+
foreman_database_sslrootcert:

roles/foreman/tasks/main.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
containers.podman.podman_secret:
99
state: present
1010
name: foreman-database-url
11-
data: "postgresql://foreman:{{ foreman_db_password }}@localhost/foreman"
11+
data: "postgresql://{{ foreman_database_user }}:{{ foreman_database_password }}@{{ foreman_database_host }}:{{ foreman_database_port }}/{{ foreman_database_name }}?pool={{ foreman_database_pool }}&sslmode={{ foreman_database_sslmode }}{% if foreman_database_ssl_ca is defined %}&sslrootcert={{ foreman_database_ssl_ca }}{% endif %}" # yamllint disable-line rule:line-length
1212

1313
- name: Create settings config secret
1414
containers.podman.podman_secret:

roles/pulp/defaults/main.yaml

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,20 @@ pulp_content_origin: "http://{{ ansible_fqdn }}:24816"
1717

1818
pulp_enable_analytics: false
1919

20-
pulp_settings_db_env:
21-
PULP_DATABASES__default__HOST: "localhost"
22-
PULP_DATABASES__default__NAME: "pulp"
23-
PULP_DATABASES__default__PORT: 5432
24-
PULP_DATABASES__default__USER: "pulp"
20+
pulp_database_name: pulp
21+
pulp_database_user: pulp
22+
pulp_database_host: localhost
23+
pulp_database_port: 5432
24+
pulp_database_ssl_mode: disabled
25+
pulp_database_ssl_ca: None
26+
27+
pulp_settings_database_env:
28+
PULP_DATABASES__default__NAME: "{{ pulp_database_name }}"
29+
PULP_DATABASES__default__USER: "{{ pulp_database_user }}"
30+
PULP_DATABASES__default__HOST: "{{ pulp_database_host }}"
31+
PULP_DATABASES__default__PORT: "{{ pulp_database_port }}"
32+
PULP_DATABASES__default__OPTIONS__sslmode: "{{ pulp_database_ssl_mode }}"
33+
PULP_DATABASES__default__OPTIONS__sslrootcert: "{{ pulp_database_ssl_ca }}"
2534

2635
# The arrays (AUTH_BACKENDS, AUTH_CLASSES) need to contain literal quotes
2736
# to workaround https://github.com/containers/ansible-podman-collections/issues/807
@@ -37,4 +46,4 @@ pulp_settings_other_env:
3746
PULP_REST_FRAMEWORK__DEFAULT_AUTHENTICATION_CLASSES: >-
3847
"['rest_framework.authentication.SessionAuthentication', 'pulpcore.app.authentication.PulpRemoteUserAuthentication']"
3948
40-
pulp_settings_env: "{{ pulp_settings_db_env | ansible.builtin.combine(pulp_settings_other_env) }}"
49+
pulp_settings_env: "{{ pulp_settings_database_env | ansible.builtin.combine(pulp_settings_other_env) }}"

roles/pulp/tasks/main.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
containers.podman.podman_secret:
3535
state: present
3636
name: pulp-db-password
37-
data: "{{ pulp_db_password }}"
37+
data: "{{ pulp_database_password }}"
3838

3939
- name: Generate database symmetric key
4040
ansible.builtin.command: "bash -c 'openssl rand -base64 32 | tr \"+/\" \"-_\" > /var/lib/pulp/database_fields.symmetric.key'"
@@ -132,7 +132,7 @@
132132
secrets:
133133
- 'pulp-symmetric-key,type=mount,target=/etc/pulp/certs/database_fields.symmetric.key'
134134
- 'pulp-db-password,type=env,target=PULP_DATABASES__default__PASSWORD'
135-
env: "{{ pulp_settings_db_env }}"
135+
env: "{{ pulp_settings_database_env }}"
136136

137137
- name: Start the Pulp API services
138138
ansible.builtin.systemd:

vars/database.yml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
---
2+
database_mode: internal
3+
database_host: localhost
4+
database_port: 5432
5+
database_ssl_mode: disable
6+
database_ssl_ca: None
7+
8+
foreman_database_name: foreman
9+
foreman_database_user: foreman
10+
foreman_database_password: CHANGEME
11+
candlepin_database_name: candlepin
12+
candlepin_database_user: candlepin
13+
candlepin_database_password: CHANGEME
14+
pulp_database_name: pulp
15+
pulp_database_user: pulp
16+
pulp_database_password: CHANGEME
17+
18+
candlepin_database_host: "{{ database_host }}"
19+
candlepin_database_port: "{{ database_port }}"
20+
candlepin_database_ssl_mode: "{{ database_ssl_mode }}"
21+
candlepin_database_ssl_ca: "{{ database_ssl_ca }}"
22+
23+
pulp_database_host: "{{ database_host }}"
24+
pulp_database_port: "{{ database_port }}"
25+
pulp_database_ssl_mode: "{{ database_ssl_mode }}"
26+
pulp_database_ssl_ca: "{{ database_ssl_ca }}"
27+
28+
foreman_database_host: "{{ database_host }}"
29+
foreman_database_port: "{{ database_port }}"
30+
foreman_database_sslmode: "{{ database_ssl_mode }}"
31+
foreman_database_sslrootcert: "{{ database_ssl_ca }}"
32+
33+
postgresql_databases:
34+
- name: "{{ candlepin_database_name }}"
35+
owner: "{{ candlepin_database_user }}"
36+
- name: "{{ foreman_database_name }}"
37+
owner: "{{ foreman_database_user }}"
38+
- name: "{{ pulp_database_name }}"
39+
owner: "{{ pulp_database_user }}"
40+
postgresql_users:
41+
- name: "{{ candlepin_database_name }}"
42+
password: "{{ candlepin_database_password }}"
43+
- name: "{{ foreman_database_name }}"
44+
password: "{{ foreman_database_password }}"
45+
- name: "{{ pulp_database_name }}"
46+
password: "{{ pulp_database_password }}"

0 commit comments

Comments
 (0)