diff --git a/roles/openafs-client/README.rst b/roles/openafs-client/README.rst index 11556a921b..5934709ef5 100644 --- a/roles/openafs-client/README.rst +++ b/roles/openafs-client/README.rst @@ -43,3 +43,10 @@ role has limited platform support. Currently supported are :default: no Enable or disable gpg checking for ``openafs_yum_repo_url`` + +.. zuul:rolevar:: openafs_client_service_timeout_sec + :default: 480 + + The TimeoutSec for service start. Accounting for the cache + during startup can cause a high load which may necessitate + a longer startup timeout on some platforms. diff --git a/roles/openafs-client/defaults/main.yaml b/roles/openafs-client/defaults/main.yaml index 248bfcf8f5..4109dd3e1f 100644 --- a/roles/openafs-client/defaults/main.yaml +++ b/roles/openafs-client/defaults/main.yaml @@ -1,3 +1,4 @@ openafs_client_cell: 'openstack.org' openafs_client_cache_directory: '/var/cache/openafs' -openafs_client_cache_size: 500000 \ No newline at end of file +openafs_client_cache_size: 500000 +openafs_client_service_timeout_sec: 480 diff --git a/roles/openafs-client/tasks/main.yaml b/roles/openafs-client/tasks/main.yaml index ef9ac34120..6ed5412f7c 100644 --- a/roles/openafs-client/tasks/main.yaml +++ b/roles/openafs-client/tasks/main.yaml @@ -62,6 +62,23 @@ mode: 0700 become: yes +- name: Set timeout override + become: yes + block: + - name: Create service override directory + file: + path: '/etc/systemd/system/openafs-client.service.d' + state: directory + owner: root + group: root + mode: 0755 + - name: Save override + template: + dest: '/etc/systemd/system/openafs-client.service.d/timeout.conf' + src: 'timeout.conf.j2' + group: root + mode: 0644 + - name: Setup OS specific openafs-client environment include_tasks: "{{ lookup('first_found', params) }}" vars: diff --git a/roles/openafs-client/templates/timeout.conf.j2 b/roles/openafs-client/templates/timeout.conf.j2 new file mode 100644 index 0000000000..846ad410b0 --- /dev/null +++ b/roles/openafs-client/templates/timeout.conf.j2 @@ -0,0 +1,2 @@ +[Service] +TimeoutSec={{ openafs_client_service_timeout_sec }}