ESGF / esgf-ansible

A repository to hold Ansible inventory, playbooks, roles and tasks that specify the details of ESGF Node deployments.
4 stars 10 forks source link

When installing from scratch, /esg/gridftp_root/etc/grid-security/certificates/ isn’t created if non-existent #127

Open plogerais opened 4 years ago

plogerais commented 4 years ago

While installing from scratch, if you don’t create the directory /esg/gridftp_root/etc/grid-security/certificates/, install.yml fails with this error :

TASK [globus_certs : Copy certificates over if it is] **********************************************************************************************************************************************************
changed: [vesg4cds-data.ipsl.upmc.fr]
fatal: [vesg4cds-idx.ipsl.upmc.fr]: FAILED! => {
    "changed": true,
    "cmd": "cp /etc/grid-security/certificates/* /esg/gridftp_root/etc/grid-security/certificates/",
    "delta": "0:00:00.005728",
    "end": "2019-09-16 15:19:56.689950",
    "rc": 1,
    "start": "2019-09-16 15:19:56.684222"
}

STDERR:

cp: la cible « /esg/gridftp_root/etc/grid-security/certificates/ » n'est pas un répertoire

To Reproduce Steps to reproduce the behavior :

  1. Run installer with options --skip-tags gridftp
  2. See error

ESGF Node (please complete the following information):

Additional context Possible workaround : Using the command mkdir -p /esg/gridftp_root/etc/grid-security/certificates/, then launching the playbook install.yml again, solves the problem.

Theropod commented 4 years ago

is it mistyping in source code? see https://github.com/ESGF/esgf-ansible/blob/ef3bd71aa75fc2594e500b7c57bb3c7f60ce50e7/roles/globus_certs/tasks/main.yml#L37

because {{ gridftp.chroot }} is {{ esg.home }}/gridftp_root and {{ grid_security.cert_dir }} is /etc/grid-security/certificates in group_vars/all.yml