Skip to content

Commit

Permalink
OPSEXP-2450 Search Enterprise as default search engine (#783)
Browse files Browse the repository at this point in the history
  • Loading branch information
gionn authored Feb 26, 2024
1 parent 816078d commit 424ce9f
Show file tree
Hide file tree
Showing 23 changed files with 166 additions and 101 deletions.
2 changes: 1 addition & 1 deletion .envrc
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ export AWS_REGION=eu-west-1
export MOLECULE_IT_AWS_VPC_SUBNET_ID=subnet-6bdd4223
export BRANCH_NAME=local
export BUILD_NUMBER=1
export DTAS_VERSION=v1.2.0
export DTAS_VERSION=v1.5.3
export MOLECULE_IT_ID=$(echo "$LOGNAME" | sha256sum | cut -c1-6)
ANSIBLE_VAULT_PASSWORD_FILE=$(expand_path ./.vault_pass.txt)
export ANSIBLE_VAULT_PASSWORD_FILE
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/enteprise.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ on:
- .pre-commit-config.yaml

env:
DTAS_VERSION: v1.2.2
DTAS_VERSION: v1.5.3
BUILD_NUMBER: ${{ github.run_id }}
PY_COLORS: 1
PYTHONUNBUFFERED: 1
Expand Down
4 changes: 2 additions & 2 deletions .secrets.baseline
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@
"filename": "playbooks/acs.yml",
"hashed_secret": "3a0b8a438a9efa61267357269709a946d797b9bd",
"is_verified": false,
"line_number": 407,
"line_number": 391,
"is_secret": false
}
],
Expand Down Expand Up @@ -259,5 +259,5 @@
}
]
},
"generated_at": "2024-01-17T10:11:58Z"
"generated_at": "2024-02-22T16:12:32Z"
}
6 changes: 3 additions & 3 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,9 @@ The playbook uses the following roles:
* **nginx** - deploys and configures Nginx as a proxy
* **postgres** - deploys and configures PostgreSQL
* **repository** - deploys and configures Alfresco Repository and Alfresco Share
* **search** - deploys and configures Alfresco Search Services
* **search_enteprise** - deploys and configures Alfresco Search Enterprise (as
an alternative to Alfresco Search Services)
* **search** - deploys and configures Alfresco Search Services (as
an alternative to Search Enterprise)
* **search_enterprise** - deploys and configures Alfresco Search Enterprise
* **sfs** - deploys and configures Alfresco Shared File Store
* **sync** - deploys and configures Alfresco Sync Service
* **tomcat** - deploys and configures Apache Tomcat
Expand Down
11 changes: 6 additions & 5 deletions docs/deployment-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ If it's your first time with Ansible, please have a read at [Ansible concepts](h
* [Getting started](#getting-started)
* [Get the playbook](#get-the-playbook)
* [Setup runtime environment](#setup-runtime-environment)
* [Minimal configuration](#minimal-configuration)
* [Understanding the playbook](#understanding-the-playbook)
* [The control node](#the-control-node)
* [Understanding the inventory file](#understanding-the-inventory-file)
Expand Down Expand Up @@ -274,15 +275,15 @@ An ACS inventory file has the following groups a host can belong to:
* `external_activemq`: an alternative group to `activemq` in case you don't want
to deploy ActiveMQ using our basic activemq role but instead use an ActiveMQ
instance of yours which matches your hosting standards.
* `search`: a single host on which to deploy Alfresco Search services.
* `search_enterprise`: one or more hosts on which deploy Search Enterprise, as
an alternative to Alfresco Search.
* `search`: a single host on which to deploy Alfresco Search services, as an
alternative to Search Enterprise.
* `search_enterprise`: one or more hosts on which deploy Search Enterprise.
* `elasticsearch`: one or more hosts on which deploy the ElasticSearch cluster
backing Search Enterprise.
* `external_elasticsearch`: an alternative group to `elasticsearch` in case you
don't want to deploy ElasticSearch using the [community ElasticSearch
role](https://github.com/buluma/ansible-role-elasticsearch) but instead use an
ElasticSearch cluster of yours which matches your hosting standards.
role](https://github.com/geerlingguy/ansible-role-elasticsearch) but instead
use an ElasticSearch cluster of yours which matches your hosting standards.
* `nginx`: a single host on which the playbook will deploy an NGINX reverse
proxy configured for the numerous http based service in the platform.
* `acc`: a single host where you want the Alfresco Control Center UI to be installed
Expand Down
9 changes: 9 additions & 0 deletions docs/playbook-upgrade.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,15 @@

## Unreleased version

### Search Enterprise is the new default search engine

The example inventories have been updated to default to Search Enterprise /
ElasticSearch (`search_enterprise` and `elasticsearch` groups) as the preferred
search engine from Enterprise since ACS 23.1.1.

Search Services are still supported as before by assigning hosts to the `search`
group.

### Passing Alfresco global properties

In previous version we provided an empty `alfresco-global.properties` file to
Expand Down
37 changes: 27 additions & 10 deletions inventory_ha.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,59 +16,76 @@ all:
database:
hosts:
db.infra.local:

repository:
hosts:
ecm1.infra.local:
ecm2.infra.local:
ingester.infra.local:
cluster_keepoff: true

activemq:
hosts:
mq.infra.local:

# Solr search engine (alternative to Enterprise Search)
search:
hosts:
fts.infra.local:
# Enterprise Search section start
# alternative to `search` group

# Enterprise Search (default search engine)
search_enterprise:
hosts:
fts.infra.local:
elasticsearch:
hosts:
# Enterprise Search section end
fts.infra.local:

# Keycloak SSO support (optional)
identity:
hosts:

nginx:
hosts:
proxy.infra.local:

acc:
hosts:
web.infra.local:

adw:
hosts:
web.infra.local:

transformers:
hosts:
render.infra.local:

syncservice:
hosts:
sync.infra.local:

other_repo_clients:
hosts:

trusted_resource_consumers:
children:
repository:
nginx:
adw:
other_repo_clients:

external_activemq:
hosts:

external_elasticsearch:
hosts:

external_identity:
hosts:

external:
children:
external_activemq:
external_elasticsearch:
external_identity:
other_repo_clients:
trusted_resource_consumers:
children:
repository:
nginx:
adw:
other_repo_clients:
40 changes: 29 additions & 11 deletions inventory_local.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,60 +2,78 @@
all:
vars:
ansible_connection: local

children:
repository:
hosts:
localhost:

database:
children:
repository:

activemq:
children:
repository:

# Solr search engine (alternative to Enterprise Search)
search:
children:
repository:
# Enterprise Search section start
# alternative to `search` group

# Enterprise Search (default search engine)
search_enterprise:
children:
repository:
elasticsearch:
children:
# Enterprise Search section end
repository:

# Keycloak SSO support (optional)
identity:
hosts:
children:

nginx:
children:
repository:

acc:
children:
repository:

adw:
children:
repository:

transformers:
children:
repository:

syncservice:
children:
repository:

other_repo_clients:
hosts:

trusted_resource_consumers:
children:
repository:
nginx:
adw:
other_repo_clients:

external_activemq:
hosts:

external_elasticsearch:
hosts:

external_identity:
hosts:

external:
children:
external_activemq:
external_elasticsearch:
external_identity:
other_repo_clients:
trusted_resource_consumers:
children:
repository:
nginx:
adw:
other_repo_clients:
28 changes: 23 additions & 5 deletions inventory_ssh.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,61 +16,79 @@ all:
hosts:
database_1:
ansible_host: targetIP

repository:
hosts:
repository_1:
ansible_host: targetIP

activemq:
hosts:
activemq_1:
ansible_host: targetIP

# Solr search engine (alternative to Enterprise Search)
search:
hosts:
search_1:
ansible_host: targetIP
# Enterprise Search section start
# alternative to `search` group

# Enterprise Search (default search engine)
search_enterprise:
hosts:
search_1:
ansible_host: targetIP
elasticsearch:
hosts:
# Enterprise Search section end
search_1:
ansible_host: targetIP

# Keycloak SSO support (optional)
identity:
hosts:

nginx:
hosts:
nginx_1:
ansible_host: targetIP

acc:
hosts:
acc_1:
ansible_host: targetIP

adw:
hosts:
adw_1:
ansible_host: targetIP

transformers:
hosts:
transformers_1:
ansible_host: targetIP

syncservice:
hosts:
syncservice_1:
ansible_host: targetIP

other_repo_clients:
hosts:

trusted_resource_consumers:
children:
repository:
nginx:
adw:
other_repo_clients:

external_activemq:
hosts:

external_elasticsearch:
hosts:

external_identity:
hosts:

external:
children:
external_activemq:
Expand Down
15 changes: 10 additions & 5 deletions molecule/default/verify.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,19 +30,24 @@
replace: "https://{{ node_hostname }}"

- name: Run pytest
vars:
selfsigned_cert_path: "{{ project_dir }}/configuration_files/ssl_certificates/{{ node_hostname }}.crt"
environment:
REQUESTS_CA_BUNDLE: "{{ project_dir }}/configuration_files/ssl_certificates/{{ node_hostname }}.crt"
ansible.builtin.shell:
chdir: "{{ dtas_dir }}"
cmd: |
export REQUESTS_CA_BUNDLE={{ selfsigned_cert_path }}
pytest --tb=line --color=no --configuration {{ test_config_file }} tests/ -s
rescue:
- name: Print multiline pytest stdout as best as we can
debug:
msg: "{{ ansible_failed_result.stdout_lines }}"
- name: Explicit failure after printing failure debug
fail: msg="Aborting due to pytest failure"
- name: Run pytest AGAIN only for failed tests
environment:
REQUESTS_CA_BUNDLE: "{{ project_dir }}/configuration_files/ssl_certificates/{{ node_hostname }}.crt"
ansible.builtin.shell:
chdir: "{{ dtas_dir }}"
cmd: |
pytest --tb=line --color=no --configuration {{ test_config_file }} tests/ -s --last-failed
- name: Verify adw plugins state
hosts: adw
Expand Down
7 changes: 0 additions & 7 deletions molecule/elasticsearch/converge.yml

This file was deleted.

Loading

0 comments on commit 424ce9f

Please sign in to comment.