puppet issueshttps://git.ligo.org/groups/dasc/puppet/-/issues2023-10-03T17:51:06Zhttps://git.ligo.org/dasc/puppet/conda/-/issues/5latest conda master branch breaks auto activation for almost every LHO user2023-10-03T17:51:06ZErik von Reislatest conda master branch breaks auto activation for almost every LHO userI've rolled back LHO to its previous version.I've rolled back LHO to its previous version.Erik von ReisErik von Reishttps://git.ligo.org/dasc/puppet/conda/-/issues/4Invalid 'text' keyword in update_conda script2022-10-06T18:04:54ZMichael ThomasInvalid 'text' keyword in update_conda scriptThe subprocess.run() command is failing on SL7 due to an invalid 'text=True' keyword passed to subprocess.run:
result = subprocess.run([installer, "-y", "-b", "-p", base_path],
stdout=subprocess.P...The subprocess.run() command is failing on SL7 due to an invalid 'text=True' keyword passed to subprocess.run:
result = subprocess.run([installer, "-y", "-b", "-p", base_path],
stdout=subprocess.PIPE, stderr=subprocess.STDOUT, text=True)
```
[cdsadmin@cr15 envs]$ /usr/bin/update_conda --config-path /opt/conda/conda_config.yaml
{'home': '/opt/conda', 'forge_url': 'http://puppet1/conda/environments/linux-64', 'remove_missing': False, 'environs': {'cds': {'target': 'cds-py39-2022082401'}, 'cds-py39-20220316': {'ensure': 'absent'}, 'cds-py39-20220607': {'ensure': 'absent'}, 'cds-py39-20220610': None, 'cds-py39-2022072101': {'ensure': 'absent'}, 'cds-py39-2022082401': None, 'cds-py39-2022091901': None, 'nonsens': {'target': '/ligo/apps/conda/envs/nonsens'}}, 'user_configs': []}
conda_home=/opt/conda
Mamba already installed. Skipping installation.
checking for new environments
cds-py39-2022082401 already installed
cds-py39-20220610 already installed
installing cds-py39-2022091901 environment
forge_url is http://puppet1/conda/environments/linux-64/cds-py39-2022091901.yaml
install command is /opt/conda/base/bin/mamba env create -q --file http://puppet1/conda/environments/linux-64/cds-py39-2022091901.yaml
Traceback (most recent call last):
File "/usr/bin/update_conda", line 449, in <module>
run(args.config_path, args.noop)
File "/usr/bin/update_conda", line 428, in run
installed = install_environments(conda_base, forge_url, logfile, install_envs, noop)
File "/usr/bin/update_conda", line 131, in install_environments
stdout=subprocess.PIPE, stderr=subprocess.STDOUT, text=True)
File "/usr/lib64/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
TypeError: __init__() got an unexpected keyword argument 'text'
[cdsadmin@cr15 envs]$ python3 --version
Python 3.6.8
```
If I remove the `text=True` keyword, I get a different error:
```
File "/usr/bin/update_conda", line 138, in install_environments
log_file.write(result.stdout)
TypeError: write() argument must be str, not bytes
```Erik von ReisErik von Reishttps://git.ligo.org/dasc/puppet/conda/-/issues/3conda service failes with relative links2022-09-27T19:07:50ZMichael Thomasconda service failes with relative linksThe latest conda service fails when setting up the symlinks due to a relative path:
```
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu systemd[1]: Starting Install or update conda environments...
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.e...The latest conda service fails when setting up the symlinks due to a relative path:
```
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu systemd[1]: Starting Install or update conda environments...
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu update_conda[22740]: {'home': '/opt/conda', 'forge_url': 'http://puppet1/conda/environments/linux-64', 'remove_missing': False, 'environs': {'cds': {'target': 'cds-py39-2022082401'}, 'cds-py39-20220316': {'ensure': 'absent'}, 'cds-py39-20220607': {'ensure': 'absent'}, 'cds-py39-20220610': None, 'cds-py39-2022072101': {'ensure': 'absent'}, 'cds-py39-2022082401': None}, 'user_configs': []}
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu update_conda[22740]: conda_home=/opt/conda
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu update_conda[22740]: Mamba already installed. Skipping installation.
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu update_conda[22740]: *** Error: target for cds must be an absolute path, but relative path given: cds-py39-2022082401
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu update_conda[22740]: *** Error: requested target for cds => cds-py39-2022082401 does not exist.
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu update_conda[22740]: Traceback (most recent call last):
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu update_conda[22740]: File "/usr/bin/update_conda", line 441, in <module>
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu update_conda[22740]: run(args.config_path, args.noop)
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu update_conda[22740]: File "/usr/bin/update_conda", line 395, in run
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu update_conda[22740]: check_links(links_list)
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu update_conda[22740]: File "/usr/bin/update_conda", line 320, in check_links
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu update_conda[22740]: raise Exception("One or more errors were found in requested links for environments")
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu update_conda[22740]: Exception: One or more errors were found in requested links for environments
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu systemd[1]: conda.service: main process exited, code=exited, status=1/FAILURE
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu systemd[1]: Failed to start Install or update conda environments.
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu systemd[1]: Unit conda.service entered failed state.
Sep 19 10:07:32 cr15.cds.ligo-la.caltech.edu systemd[1]: conda.service failed.
```
The `update_conda` script shouldn't require fully qualified paths for the linked environments in the config file.Erik von ReisErik von Reishttps://git.ligo.org/dasc/puppet/conda/-/issues/1Symlinks should be managed by the update script2022-09-16T19:22:34ZErik von ReisSymlinks should be managed by the update scriptSymlinks to environments are created in puppet, but are unknown to the async update script, which means they can be autodeleted when the update script runs. The update script should manage symlinks as well as full environmentsSymlinks to environments are created in puppet, but are unknown to the async update script, which means they can be autodeleted when the update script runs. The update script should manage symlinks as well as full environments