-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Starter site integration #226
Starter site integration #226
Conversation
…on to be skipped.
... I think there's just one other section where there's a check for things being explicitly "standard" that we should move over to a shared variable?
when: webserver_app_do_original_trusted_host_and_more | ||
|
||
- name: Trusted Host Settings | ||
blockinfile: | ||
state: present | ||
block: | | ||
$settings['trusted_host_patterns'] = array( | ||
{% for host in drupal_trusted_hosts %} | ||
'{{ host }}', | ||
{% endfor %} | ||
); | ||
path: "{{ drupal_trusted_hosts_file }}" | ||
marker: // {mark} ANSIBLE MANAGED BLOCK - trusted hosts | ||
when: webserver_app_do_trusted_host | ||
|
||
- name: Flysystem "fedora" scheme configuration | ||
blockinfile: | ||
state: present | ||
block: | | ||
$settings['flysystem'] = [ | ||
'fedora' => [ | ||
'driver' => 'fedora', | ||
'config' => [ | ||
'root' => '{{ fedora_base_url }}', | ||
], | ||
], | ||
]; | ||
path: "{{ drupal_site_default_settings }}" | ||
marker: // {mark} ANSIBLE MANAGED BLOCK - fedora flysystem scheme | ||
when: webserver_app_do_fedora_scheme_config | ||
|
||
- name: Content Sync Directory configuration | ||
blockinfile: | ||
state: present | ||
block: | | ||
global $content_directories; | ||
$content_directories['sync'] = $app_root.'/../content/sync'; | ||
path: "{{ drupal_site_default_settings }}" | ||
marker: // {mark} ANSIBLE MANAGED BLOCK - content sync dir | ||
when: webserver_app_do_content_sync_config |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure what the best approach was here, to allow for more granular control over what was being done in what was originally called the "Trusted Host Settings" bit, which was doing more than just setting the "trusted hosts" settings... elected to keep the original, but additionally have all the bits it contained be available in separate chunks, as we don't really want the content/sync
thing being done in the starter
"profile".
# Presently pointing at the main branch. | ||
drupal_composer_project_package: 'islandora/islandora-starter-site:dev-main' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should eventually be pointed at whatever reference structure we move to use for releases... or maybe left without a version reference to pull whatever "latest" version?
changed_when: "'Do you want to update' in set_search_api_config.stdout" | ||
changed_when: "'Do you want to update' in set_search_api_config_host.stdout" | ||
|
||
- name: Set default solr server to point to first core | ||
command: "{{ drush_path }} --root {{ drupal_core_path }} -y config-set search_api.server.default_solr_server backend_config.connector_config.core {{ solr_cores[0] }}" | ||
register: set_search_api_config_core | ||
changed_when: "'Do you want to update' in set_search_api_config.stdout" | ||
changed_when: "'Do you want to update' in set_search_api_config_core.stdout" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking back at https://github.com/Islandora-Devops/islandora-playbook/pull/126/files#diff-5bddb401e18178b7584b51cd9831eaa348385079b2224a85e3db8fa2412fc547L5-R15 ... I believe this is the intent, as otherwise, it seems that the set_search_api_config
bit would've been being registered by the "Matomo" setup, in the webserver-app/tasks/drupal.yml
bit?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah that seems like a typo in the Matomo stuff.
drupal_site_install_extra_args: | ||
- '--existing-config' | ||
|
||
openseadragon_composer_require: false |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some of these - setting up Matomo and FITS - seem like they're false
only because theyre out of scope at the moment but we probably eventually want them. Can you denote/comment/group them in some way to distinguish from the others which we do/don't need due to the architecture of the Starter Site?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Took a shot in 52f962a ... thoughts?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I feel like I should mention: Anything that does need to do any configuration probably maybe shouldn't do it by config:set
'ing anything, but instead to use other mechanisms such as config_override
to avoid potentially dirtying configs... to avoid specific environmental concerns creeping into things; for example: If the matomo.settings:url_http
value was made to dynamically point at the hostname instead of just specifying localhost:8000
, then yeah, it wouldn't really belong in the config that gets used between environments where that remote would(/could) vary.
... This... does kind of get into a weird area with how the JWT stuff is presently configured, in that because things were based on the "standard" playbook install, that it just so happens to match the paths; however, if other paths are ever specified for webserver_app_jwt_key_path
, then it could end up diverging...
Seems like Composer 2.4.2 (https://github.com/composer/composer/releases/tag/2.4.2) became more strict, preventing the command from returning completely.
Also, allow the attempted chown'ing of islandora_defaults to be skipped... 'cause the starter stuff doesn't/shouldn't have it.
GitHub Issue:
Replace islandora_defaults with an exported site islandora-starter-site islandora-starter-site#2
Deprecate islandora_defaults (Note: do not action till islandora-starter-site is ready) future ticket Islandora/islandora_defaults#74
Other Relevant Links (Google Groups discussion, related pull requests,
Release pull requests, etc.)
What does this Pull Request do?
Gets the new "starter site" project installable via ansible.
What's new?
Added the
starter
andstarter_dev
profiles, with minor reworks to allow some tasks to be suppressed.(i.e. Regeneration activity, etc.)? No.
set_search_api_config
value, and "Solr" stuff still referring to it). Also, if there's otherHow should this be tested?
Smoketest and compare the behaviours of the
standard
anddemo
"profiles" from before and after the changes made here, they should behave the same as they did previously.Test out the new
starter
andstarter_dev
"profiles". Should come up and look much the same, with the only difference presently being that_dev
performs a clone of the project (which is only really evident when looking at how it the project exists as it was deployed on the filesystem).Additional Notes:
Nothing to mind...
Interested parties
Tag (@ mention) interested parties or, if unsure, @Islandora-Devops/committers