Code Monkey home page Code Monkey logo

cri_xcbc's People

Contributors

chirag06 avatar diedpigs avatar eatluri avatar ecoulter avatar eesaanatluri avatar flakrat avatar jprorama avatar krishmoodbidri avatar rtripath89 avatar trupeshkumarpatel avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

cri_xcbc's Issues

Jupyter notebook needs to option to request memory and slots instead of nodes

The jupyter notebook job submit form doesn't have an option for requesting memory. This is needed to get beyond the 1G default for jobs.

Additional the node count selects 1 core per compute node. It appears the submit form should ask for slots and map to the -n and not -N slurm option. In fact it should be -N 1 -n <slots> so all the cores are allocated on the same node. This is the most useful default until more advanced options can be specified.

`ood_uab_ui` role fails with `variable app_name is undefined`

Error:
The role ood_uab_ui fails with an error: variable app_name is undefined.

Description:
The var app_name was defined in a task and it was used in a different task afterwards, so the scope of the var ends in the task it is defined. Since the scope of it wasn't defined at a role level (i.e at the start of the role) rather just the task, it considers the variable as undefined.

Solution:

  • Use {{ item }} attribute of the loop for task

Shib s3 bucket download fails in `ood_shib_config` role

The following error occurs during ansible task run in ood_shib_config role

  openstack.image: TASK [ood_shib_config : Install require package] *******************************
    openstack.image: fatal: [ood]: FAILED! => changed=false
    openstack.image:   cmd: /usr/bin/pip3 install --extra-index-url https://pypi.python.org/simple boto3
    openstack.image:   msg: '[Errno 2] No such file or directory'
    openstack.image:   rc: 2
    openstack.image:   stderr: ''
    openstack.image:   stderr_lines: <omitted>
    openstack.image:   stdout: ''
    openstack.image:   stdout_lines: <omitted>

Add acctsvc user to v007

Need to modify reggie user creation role so that we can add a local account for acctsvc on the virtual node.

Singularity installation

In role ohpc_add_rstudio, we install Singularity if it's not installed yet. The old method we used to install Singularity is now unavailable. EasyBuild has moved Singularity easyconfig file to archive. Easyconfig file is still there, moving it to archive means we have to install with fullpath to the easyconfig which is one way we could do. However, install Singularity as module is not recommended. We might want to change the way we install Singularity.

compute node fails to update /etc/hosts (and other files)

It appears my compute node was failing to get updates to /etc/hosts via warewulf even with it as part of the default provisioning config.

The error seems to be with the "network" file:

Warewulf> file print network
#### network ##################################################################
network         : ID               = 8
network         : NAME             = network
network         : PATH             = /etc/sysconfig/network
network         : ORIGIN           = /tmp/network.ww
network         : FORMAT           = data
network         : CHECKSUM         = d41d8cd98f00b204e9800998ecf8427e
network         : INTERPRETER      = UNDEF
network         : SIZE             = 0
network         : MODE             = 0644
network         : UID              = 0
network         : GID              = 0

This file is not defined or corrupt. When wwgetfiles on c0 hits this file, it errors out and doesn't update any remaining files.

Not sure where this error crept in or if it's specific to a particular instance of the env.

Change the default branch feat-openstack to uab-dev

Most of the recent PRs from our recent sprints were opened and merged against uab-dev. We no longer keep feat-openstack up to date. We did this to make it easy to merge uab-dev to uabrc/CRI_XCBC uab-dev because in prod repo uabrc, we use uab-dev for dev work testing before we merge onto uab-prod

EasyBuild install task fails in ohpc-add-easybuild role

The easybuild install task is failing due to some incompatibility of the 4.0.0 release with our current install environment. This is a recent error and didn't occur prior to the last 24-48 hrs so an upstream update is suspected.

Here's the error:

    openstack: TASK [ohpc_add_easybuild : Boostrap EasyBuild] *********************************
    openstack: fatal: [ohpc]: FAILED! => {"changed": true, "cmd": "source /opt/ohpc/admin/lmod/lmod/init/bash\npython bootstrap_eb.py \"/export/eb\"\n", "delta": "0:00:34.637325", "end": "2019-09-20 16:39:00.626035", "msg": "non-zero return code", "rc": 1, "start": "2019-09-20 16:38:25.988710", "stderr": "  File \"build/bdist.linux-x86_64/egg/easybuild/tools/py2vs3/py3.py\", line 82\n    class WrapperBase(object, metaclass=metaclass):\n                                       ^\nSyntaxError: invalid syntax\n\n\nWARNING: Use of 1 unknown easyconfig parameters detected in EasyBuild-4.0.0.eb: pyshortver\nIf these are just local variables please rename them to start with 'local_', or try using --fix-deprecated-easyconfigs to do this automatically.\nFor more information, see https://easybuild.readthedocs.io/en/latest/Easyconfig-files-local-variables.html .\n\n\nWARNING: Deprecated functionality, will no longer work in v5.0: Use of 'dummy' toolchain is deprecated, use 'system' toolchain instead; see http://easybuild.readthedocs.org/en/latest/Deprecated-functionality.html for more information\n\nTraceback (most recent call last):\n  File \"bootstrap_eb.py\", line 1101, in <module>\n    main()\n  File \"bootstrap_eb.py\", line 904, in main\n    stage2(tmpdir, templates, install_path, distribute_egg_dir, sourcepath)\n  File \"bootstrap_eb.py

Support vagrant provistioning on virtualbox

Vagrant has some strict requirements about how nodes are provisioned and managed, no different from typical cloud platforms.

This issue addresses the changes needed in xcbc to support vagrant, if any.

flask_user_reg.service doesn't start at deploy

The flask_user_reg.service doesn't start automatically on a deployed ood node. It appears to be an issue with the log/ permission. This results from setting the owner of that directory to a non-priviledged user.

This issue is related to #168 and needs a coordinated solution to fix file system permissions and process owner.

ohpc node provisioning fails due to repo GPG key errors

After the upstream release of Open HPC 1.3.7 the TASK [compute_build_vnfs : yum install into the image chroot] is failing. There is lots of output but the final error message is:

Transaction Summary
================================================================================
Install  42 Packages (+381 Dependent packages)
Upgrade              (  19 Dependent packages)

Total download size: 403 M
Downloading packages:
Delta RPMs reduced 12 M of updates to 3.8 M (67% saved)
Public key for ModemManager-glib-1.6.10-1.el7.x86_64.rpm is not installed
Public key for NetworkManager-1.12.0-10.el7_6.x86_64.rpm is not installed
Public key for Thunar-1.6.16-1.el7.x86_64.rpm is not installed
Public key for lua-bit-ohpc-1.0.2-1.1.x86_64.rpm is not installed
Public key for lmod-ohpc-7.8.15-4.1.ohpc.1.3.67.x86_64.rpm is not installed
Some delta RPMs failed to download or rebuild. Retrying..
Public key for mesa-libEGL-18.0.5-4.el7_6.x86_64.rpm is not installed
--------------------------------------------------------------------------------
Total                                               11 MB/s | 401 MB  00:35     
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-OpenHPC-1
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

The seems related to not trusting the GPG keys for these repos. Given they are file-based keys, it may simply mean they are out of date with the upstream repos.

add support for open ondemand node

Open On-Demand provides a web gateway to cluster with support for terminal, desktop and file access via the browser. This feature is focused on instantiating an ood web gateway node for the provisioned ohpc cluster and making it the default interface for the cluster.

The initial work is to provide vagrant and ansible tooling to provision the node and integrate it with the Xsede basic cluster. Early work for this feature exists in a fork of the vagrantcluster codebase providing a foundation for getting vanilla ood running on a node via ansible.

This work effort will integrate this with the XCBC code base and associated cluster.

refactor ood playbook to separate cluster-specific and ood-specfic tasks

With a fully operations ood environment with job control, terminal, and interactive desktop we are ready to use this work in other contexts.

In order to increase the range of applications for the ood role, we need to isolate tasks that are specific to ood set up (software, config files etc) from the tasks that are specific to a particular cluster environment (eg. ohpc, the default). I'm thinking this could be done by splitting tasks across multiple playbooks, but there may be a more ansible recommended approach. This issue tracks the feature request.

Linting result by ansible-lint

Added Github Actions for ansible-lint, and here's the output:

WARNING  Listing 322 violation(s) that are fatal
git-latest: Git checkouts must contain explicit version
roles/cod_rabbitmq_agents_cloud/tasks/main.yaml:2 Task/Handler: Clone the repo where user ldap files are recorded

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_image/tasks/main.yml:37 Task/Handler: Install Websockify

risky-file-permissions: File permissions unset or incorrect
roles/compute_build_image/tasks/main.yml:43 Task/Handler: add autofs maps

risky-file-permissions: File permissions unset or incorrect
roles/compute_build_image/tasks/main.yml:53 Task/Handler: lineinfile path=/etc/auto.{{ item.name }} line=* -{{ item.opt }} {{ headnode_private_ip }}:{{ item.path }}/& create=True

unnamed-task: All tasks should be named
roles/compute_build_image/tasks/main.yml:53 Task/Handler: lineinfile path=/etc/auto.{{ item.name }} line=* -{{ item.opt }} {{ headnode_private_ip }}:{{ item.path }}/& create=True

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_image/tasks/main.yml:82 Task/Handler: Set compute node to boot with multi-user mode

literal-compare: Don't compare to literal True/False
roles/compute_build_nodes/tasks/main.yml:20 Task/Handler: set nodes bootloader

literal-compare: Don't compare to literal True/False
roles/compute_build_nodes/tasks/main.yml:25 Task/Handler: set nodes partitions

literal-compare: Don't compare to literal True/False
roles/compute_build_nodes/tasks/main.yml:30 Task/Handler: format partitions

literal-compare: Don't compare to literal True/False
roles/compute_build_nodes/tasks/main.yml:35 Task/Handler: define filesystems

command-instead-of-shell: Use shell only when shell functionality is required
roles/compute_build_nodes/tasks/main.yml:62 Task/Handler: add nodes via wwnodescan - BOOT NODES NOW, IN ORDER

literal-compare: Don't compare to literal True/False
roles/compute_build_nodes/tasks/main.yml:62 Task/Handler: add nodes via wwnodescan - BOOT NODES NOW, IN ORDER

literal-compare: Don't compare to literal True/False
roles/compute_build_nodes/tasks/main.yml:70 Task/Handler: set files to provision

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_nodes/tasks/main.yml:74 Task/Handler: sync files

literal-compare: Don't compare to literal True/False
roles/compute_build_nodes/tasks/main.yml:86 Task/Handler: update pxeconfig to force node to boot from pxe

var-spacing: Variables should have spaces before and after: compute_node_glob}}
roles/compute_build_nodes/tasks/main.yml:86 Task/Handler: update pxeconfig to force node to boot from pxe

literal-compare: Don't compare to literal True/False
roles/compute_build_nodes/tasks/main.yml:90 Task/Handler: update pxeconfig to let node boot from local disk

var-spacing: Variables should have spaces before and after: compute_node_glob}}
roles/compute_build_nodes/tasks/main.yml:90 Task/Handler: update pxeconfig to let node boot from local disk

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_nodes/tasks/main.yml:94 Task/Handler: wwsh pxe update

no-jinja-when: No Jinja2 in when
roles/compute_build_nodes_cloud/tasks/main.yml:22 Task/Handler: Add node(s) into warewulf database

no-jinja-when: No Jinja2 in when
roles/compute_build_nodes_cloud/tasks/main.yml:27 Task/Handler: Register node IP and MAC address in warewulf database

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_nodes_cloud/tasks/main.yml:53 Task/Handler: sync files

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:10 Task/Handler: check current kernel version

risky-shell-pipe: Shells that use pipes should set the pipefail option
roles/compute_build_vnfs/tasks/main.yml:10 Task/Handler: check current kernel version

command-instead-of-module: yum used in place of yum module
roles/compute_build_vnfs/tasks/main.yml:14 Task/Handler: check most recent installed kernel version

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:14 Task/Handler: check most recent installed kernel version

risky-shell-pipe: Shells that use pipes should set the pipefail option
roles/compute_build_vnfs/tasks/main.yml:14 Task/Handler: check most recent installed kernel version

unnamed-task: All tasks should be named
roles/compute_build_vnfs/tasks/main.yml:18 Task/Handler: fail msg=Most recently installed kernel is not currently loaded version! Consider rebooting before building the vnfs

unnamed-task: All tasks should be named
roles/compute_build_vnfs/tasks/main.yml:22 Task/Handler: fail msg=Loaded kernel does not match the build_kernel_ver in group_vars/all

risky-file-permissions: File permissions unset or incorrect
roles/compute_build_vnfs/tasks/main.yml:31 Task/Handler: template src=compute_template.j2 dest={{ template_path }}{{ compute_template }}.tmpl

unnamed-task: All tasks should be named
roles/compute_build_vnfs/tasks/main.yml:31 Task/Handler: template src=compute_template.j2 dest={{ template_path }}{{ compute_template }}.tmpl

risky-file-permissions: File permissions unset or incorrect
roles/compute_build_vnfs/tasks/main.yml:33 Task/Handler: template src=extend_compute_packages.j2 dest={{ template_path }}extend_compute_packages

unnamed-task: All tasks should be named
roles/compute_build_vnfs/tasks/main.yml:33 Task/Handler: template src=extend_compute_packages.j2 dest={{ template_path }}extend_compute_packages

risky-file-permissions: File permissions unset or incorrect
roles/compute_build_vnfs/tasks/main.yml:35 Task/Handler: template src=base_packages.j2 dest={{ template_path }}base_packages

unnamed-task: All tasks should be named
roles/compute_build_vnfs/tasks/main.yml:35 Task/Handler: template src=base_packages.j2 dest={{ template_path }}base_packages

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:37 Task/Handler: make chroot

risky-file-permissions: File permissions unset or incorrect
roles/compute_build_vnfs/tasks/main.yml:40 Task/Handler: copy resolve.conf into image

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:105 Task/Handler: install Websockify inside chroot env

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:110 Task/Handler: set compute node to boot with multi-user mode

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:122 Task/Handler: firewalld on compute image disabled

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:125 Task/Handler: chronyd on compute image enabled

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:131 Task/Handler: slurmd on compute image enabled

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:134 Task/Handler: wwimport file into image (passwd)

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:137 Task/Handler: wwimport file into image (group)

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:140 Task/Handler: wwimport file into image (shadow)

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:143 Task/Handler: wwimport file into image (slurm)

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:146 Task/Handler: wwimport file into image (munge)

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:149 Task/Handler: wwimport file into image (lmod.sh)

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:152 Task/Handler: wwimport file into image (lmod.csh)

command-instead-of-shell: Use shell only when shell functionality is required
roles/compute_build_vnfs/tasks/main.yml:155 Task/Handler: build bootstrap image

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:155 Task/Handler: build bootstrap image

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:158 Task/Handler: build the vnfs

risky-file-permissions: File permissions unset or incorrect
roles/compute_build_vnfs/tasks/main.yml:161 Task/Handler: set up provisioning interface

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:165 Task/Handler: add network file to import

no-changed-when: Commands should not change things if nothing needs doing
roles/compute_build_vnfs/tasks/main.yml:168 Task/Handler: set network file path

command-instead-of-shell: Use shell only when shell functionality is required
roles/gpu_build_nodes/tasks/main.yml:66 Task/Handler: add nodes via wwnodescan - BOOT NODES NOW, IN ORDER

literal-compare: Don't compare to literal True/False
roles/gpu_build_nodes/tasks/main.yml:66 Task/Handler: add nodes via wwnodescan - BOOT NODES NOW, IN ORDER

literal-compare: Don't compare to literal True/False
roles/gpu_build_nodes/tasks/main.yml:70 Task/Handler: blacklist nouveau on first boot

var-spacing: Variables should have spaces before and after: gpu_prefix}}*"
roles/gpu_build_nodes/tasks/main.yml:70 Task/Handler: blacklist nouveau on first boot

literal-compare: Don't compare to literal True/False
roles/gpu_build_nodes/tasks/main.yml:74 Task/Handler: set files to provision

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_nodes/tasks/main.yml:78 Task/Handler: wwsh file sync

literal-compare: Don't compare to literal True/False
roles/gpu_build_nodes/tasks/main.yml:84 Task/Handler: update pxeconfig to let node boot from pxe

literal-compare: Don't compare to literal True/False
roles/gpu_build_nodes/tasks/main.yml:88 Task/Handler: update pxeconfig to let node boot from local disk

var-spacing: Variables should have spaces before and after: gpu_node_glob}}
roles/gpu_build_nodes/tasks/main.yml:88 Task/Handler: update pxeconfig to let node boot from local disk

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_nodes/tasks/main.yml:92 Task/Handler: wwsh pxe update

risky-file-permissions: File permissions unset or incorrect
roles/gpu_build_vnfs/tasks/main.yml:3 Task/Handler: copy gpu_template.tmpl for wwmkchroot

risky-file-permissions: File permissions unset or incorrect
roles/gpu_build_vnfs/tasks/main.yml:6 Task/Handler: copy gpu_compute_packages for wwmkchroot

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:9 Task/Handler: make chroot

risky-file-permissions: File permissions unset or incorrect
roles/gpu_build_vnfs/tasks/main.yml:12 Task/Handler: copy resolve.conf into image

command-instead-of-module: yum used in place of yum module
roles/gpu_build_vnfs/tasks/main.yml:15 Task/Handler: yum install into the image chroot

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:15 Task/Handler: yum install into the image chroot

command-instead-of-module: yum used in place of yum module
roles/gpu_build_vnfs/tasks/main.yml:19 Task/Handler: yum install slurm client into image

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:19 Task/Handler: yum install slurm client into image

risky-file-permissions: File permissions unset or incorrect
roles/gpu_build_vnfs/tasks/main.yml:22 Task/Handler: create export dir

command-instead-of-module: mount used in place of mount module
roles/gpu_build_vnfs/tasks/main.yml:28 Task/Handler: mount necessary bits

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:28 Task/Handler: mount necessary bits

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:36 Task/Handler: get kernel version

risky-shell-pipe: Shells that use pipes should set the pipefail option
roles/gpu_build_vnfs/tasks/main.yml:36 Task/Handler: get kernel version

risky-file-permissions: File permissions unset or incorrect
roles/gpu_build_vnfs/tasks/main.yml:40 Task/Handler: create build dir

command-instead-of-shell: Use shell only when shell functionality is required
roles/gpu_build_vnfs/tasks/main.yml:50 Task/Handler: build nvidia kernel modules in the vnfs

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:50 Task/Handler: build nvidia kernel modules in the vnfs

command-instead-of-shell: Use shell only when shell functionality is required
roles/gpu_build_vnfs/tasks/main.yml:55 Task/Handler: build cuda toolkit

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:55 Task/Handler: build cuda toolkit

command-instead-of-shell: Use shell only when shell functionality is required
roles/gpu_build_vnfs/tasks/main.yml:60 Task/Handler: build cuda samples

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:60 Task/Handler: build cuda samples

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:66 Task/Handler: unmount necessary bits

risky-file-permissions: File permissions unset or incorrect
roles/gpu_build_vnfs/tasks/main.yml:74 Task/Handler: blacklist nouveau in modprobe

risky-file-permissions: File permissions unset or incorrect
roles/gpu_build_vnfs/tasks/main.yml:77 Task/Handler: blacklist nouveau in grub

risky-file-permissions: File permissions unset or incorrect
roles/gpu_build_vnfs/tasks/main.yml:80 Task/Handler: create rebuild-grub service

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:83 Task/Handler: enable rebuild-grub.service

risky-file-permissions: File permissions unset or incorrect
roles/gpu_build_vnfs/tasks/main.yml:86 Task/Handler: create service create-cuda-devices

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:89 Task/Handler: enable create-cuda-devices

risky-file-permissions: File permissions unset or incorrect
roles/gpu_build_vnfs/tasks/main.yml:92 Task/Handler: copy ssh keys over

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:104 Task/Handler: chronyd on compute image enabled

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:110 Task/Handler: wwimport file (gres.conf)

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:113 Task/Handler: wwimport file (passwd)

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:116 Task/Handler: wwimport file (group)

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:119 Task/Handler: wwimport file (shadow)

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:122 Task/Handler: wwimport file (slurm)

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:125 Task/Handler: wwimport file (munge)

command-instead-of-shell: Use shell only when shell functionality is required
roles/gpu_build_vnfs/tasks/main.yml:128 Task/Handler: build bootstrap image

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:128 Task/Handler: build bootstrap image

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:131 Task/Handler: build the vnfs

risky-file-permissions: File permissions unset or incorrect
roles/gpu_build_vnfs/tasks/main.yml:137 Task/Handler: set up provisioning interface

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:141 Task/Handler: add network file to import

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:144 Task/Handler: set network file path

no-changed-when: Commands should not change things if nothing needs doing
roles/gpu_build_vnfs/tasks/main.yml:147 Task/Handler: add slurm.conf file to import

risky-file-permissions: File permissions unset or incorrect
roles/install_ww_bin/tasks/main.yaml:2 Task/Handler: install warewulf file synchronization

unnamed-task: All tasks should be named
roles/install_ww_bin/tasks/main.yaml:10 Task/Handler: file path=/warewulf/bin recurse=True mode=u+x,g+x

risky-octal: Octal file permissions must contain leading zero or be a string
roles/install_ww_bin/tasks/main.yaml:31 Task/Handler: create log output dir for warewulf cron

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_nodes/tasks/main.yml:8 Task/Handler: add node to ww db

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_nodes/tasks/main.yml:12 Task/Handler: set nodes bootloader

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_nodes/tasks/main.yml:16 Task/Handler: set nodes partitions

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_nodes/tasks/main.yml:20 Task/Handler: format partitions

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_nodes/tasks/main.yml:24 Task/Handler: define filesystems

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_nodes/tasks/main.yml:44 Task/Handler: set files to provision

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_nodes/tasks/main.yml:51 Task/Handler: update pxeconfig to let node boot from pxe

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_nodes/tasks/main.yml:55 Task/Handler: wwsh pxe update

risky-file-permissions: File permissions unset or incorrect
roles/login_build_vnfs/tasks/main.yml:3 Task/Handler: copy login_template.tmpl for wwmkchroot

risky-file-permissions: File permissions unset or incorrect
roles/login_build_vnfs/tasks/main.yml:6 Task/Handler: copy login_packages for wwmkchroot

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:9 Task/Handler: make chroot

risky-file-permissions: File permissions unset or incorrect
roles/login_build_vnfs/tasks/main.yml:12 Task/Handler: copy resolve.conf into image

command-instead-of-module: yum used in place of yum module
roles/login_build_vnfs/tasks/main.yml:15 Task/Handler: yum install into the image chroot

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:15 Task/Handler: yum install into the image chroot

command-instead-of-module: yum used in place of yum module
roles/login_build_vnfs/tasks/main.yml:19 Task/Handler: yum install slurm client into image

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:19 Task/Handler: yum install slurm client into image

risky-file-permissions: File permissions unset or incorrect
roles/login_build_vnfs/tasks/main.yml:32 Task/Handler: copy ssh keys over

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:44 Task/Handler: chronyd on login image enabled

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:50 Task/Handler: wwimport file (gres.conf)

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:53 Task/Handler: wwimport file (passwd)

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:56 Task/Handler: wwimport file (group)

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:59 Task/Handler: wwimport file (shadow)

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:62 Task/Handler: wwimport file (slurm)

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:65 Task/Handler: wwimport file (munge)

command-instead-of-shell: Use shell only when shell functionality is required
roles/login_build_vnfs/tasks/main.yml:68 Task/Handler: build bootstrap image

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:68 Task/Handler: build bootstrap image

risky-file-permissions: File permissions unset or incorrect
roles/login_build_vnfs/tasks/main.yml:71 Task/Handler: fix export of usr/include

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:74 Task/Handler: build the vnfs

risky-file-permissions: File permissions unset or incorrect
roles/login_build_vnfs/tasks/main.yml:77 Task/Handler: set up provisioning interface

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:81 Task/Handler: add network file to import

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:84 Task/Handler: set network file path

no-changed-when: Commands should not change things if nothing needs doing
roles/login_build_vnfs/tasks/main.yml:87 Task/Handler: add slurm.conf file to import

no-changed-when: Commands should not change things if nothing needs doing
roles/nodes_vivify/tasks/main.yml:7 Task/Handler: tell nodes to get files

no-changed-when: Commands should not change things if nothing needs doing
roles/nodes_vivify/tasks/main.yml:16 Task/Handler: start munge on compute nodes

risky-shell-pipe: Shells that use pipes should set the pipefail option
roles/nodes_vivify/tasks/main.yml:16 Task/Handler: start munge on compute nodes

no-changed-when: Commands should not change things if nothing needs doing
roles/nodes_vivify/tasks/main.yml:19 Task/Handler: enable munge on compute nodes

risky-shell-pipe: Shells that use pipes should set the pipefail option
roles/nodes_vivify/tasks/main.yml:19 Task/Handler: enable munge on compute nodes

no-changed-when: Commands should not change things if nothing needs doing
roles/nodes_vivify/tasks/main.yml:22 Task/Handler: start slurmd on compute nodes

risky-shell-pipe: Shells that use pipes should set the pipefail option
roles/nodes_vivify/tasks/main.yml:22 Task/Handler: start slurmd on compute nodes

no-changed-when: Commands should not change things if nothing needs doing
roles/nodes_vivify/tasks/main.yml:25 Task/Handler: enable slurmd on compute nodes

risky-shell-pipe: Shells that use pipes should set the pipefail option
roles/nodes_vivify/tasks/main.yml:25 Task/Handler: enable slurmd on compute nodes

no-changed-when: Commands should not change things if nothing needs doing
roles/nodes_vivify/tasks/main.yml:32 Task/Handler: update slurm status on nodes

risky-shell-pipe: Shells that use pipes should set the pipefail option
roles/nodes_vivify/tasks/main.yml:32 Task/Handler: update slurm status on nodes

literal-compare: Don't compare to literal True/False
roles/nodes_vivify/tasks/main.yml:35 Task/Handler: update pxeconfig to let node boot locally

risky-shell-pipe: Shells that use pipes should set the pipefail option
roles/nodes_vivify/tasks/main.yml:35 Task/Handler: update pxeconfig to let node boot locally

command-instead-of-shell: Use shell only when shell functionality is required
roles/ohpc_add_easybuild/tasks/main.yaml:27 Task/Handler: Fix EasyBuild setuptools dependency on version > 17.1

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_add_easybuild/tasks/main.yaml:27 Task/Handler: Fix EasyBuild setuptools dependency on version > 17.1

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_add_easybuild/tasks/main.yaml:35 Task/Handler: Boostrap EasyBuild

command-instead-of-shell: Use shell only when shell functionality is required
roles/ohpc_add_easybuild/tasks/main.yaml:44 Task/Handler: Check if EasyBuild installation path is in default MODULEPATH

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_add_easybuild/tasks/main.yaml:44 Task/Handler: Check if EasyBuild installation path is in default MODULEPATH

command-instead-of-shell: Use shell only when shell functionality is required
roles/ohpc_add_easybuild/tasks/main.yaml:49 Task/Handler: shell  grep "{{ easybuild_prefix }}/modules/all" /etc/profile.d/lmod.csh

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_add_easybuild/tasks/main.yaml:49 Task/Handler: shell  grep "{{ easybuild_prefix }}/modules/all" /etc/profile.d/lmod.csh

unnamed-task: All tasks should be named
roles/ohpc_add_easybuild/tasks/main.yaml:49 Task/Handler: shell  grep "{{ easybuild_prefix }}/modules/all" /etc/profile.d/lmod.csh

empty-string-compare: Don't compare to empty string
roles/ohpc_add_easybuild/tasks/main.yaml:53 Task/Handler: Add EasyBuild installation path into default MODULEPATH

empty-string-compare: Don't compare to empty string
roles/ohpc_add_easybuild/tasks/main.yaml:61 Task/Handler: Add EasyBuild installation path into default MODULEPATH

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_add_easybuild/tasks/main.yaml:69 Task/Handler: Update file in warewulf file database

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_add_easybuild/tasks/main.yaml:72 Task/Handler: Verify EasyBuild installation

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_add_rabbitmq_agents/tasks/main.yaml:16 Task/Handler: Install rabbitmq agents config file

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_add_rabbitmq_agents/tasks/main.yaml:21 Task/Handler: Install mail template as mail_config file

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_add_rabbitmq_agents/tasks/main.yaml:33 Task/Handler: Install dev agents service files

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_add_rabbitmq_agents/tasks/main.yaml:40 Task/Handler: Install prod agents service files

var-spacing: Variables should have spaces before and after: /etc/systemd/system/{{ item | basename | splitext | first}}_agent.service
roles/ohpc_add_rabbitmq_agents/tasks/main.yaml:40 Task/Handler: Install prod agents service files

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_add_rstudio/tasks/main.yaml:2 Task/Handler: Install Singularity

git-latest: Git checkouts must contain explicit version
roles/ohpc_add_rstudio/tasks/main.yaml:43 Task/Handler: Clone template modulefiles from upstream

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_add_rstudio/tasks/main.yaml:58 Task/Handler: Create folder for different R versions

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_add_rstudio/tasks/main.yaml:66 Task/Handler: Create library folder for different R versions

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_add_rstudio/tasks/main.yaml:74 Task/Handler: Download Rstudio singularity image

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_add_rstudio/tasks/main.yaml:85 Task/Handler: Generate modulefiles for each version

unnamed-task: All tasks should be named
roles/ohpc_add_rstudio/tasks/main.yaml:103 Task/Handler: file path=/tmp/singularity-rstudio/example_module/modulefiles state=absent

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_config/tasks/main.yml:10 Task/Handler: enable httpd access to /srv/warewulf

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_config/tasks/main.yml:53 Task/Handler: exportfs reload

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_config/tasks/main.yml:62 Task/Handler: initialize database

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_config_build/tasks/main.yml:10 Task/Handler: enable httpd access to /srv/warewulf

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_config_build/tasks/main.yml:53 Task/Handler: exportfs reload

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_config_build/tasks/main.yml:62 Task/Handler: initialize database

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_config_build/tasks/main.yml:78 Task/Handler: import files into WW database

package-latest: Package installs should not use latest
roles/ohpc_install/tasks/main.yml:3 Task/Handler: install OpenHPC base, warewulf, and slurm server

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_install/tasks/main.yml:17 Task/Handler: create slurm.conf

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_install/tasks/main.yml:20 Task/Handler: create slurmdbd.conf

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_install/tasks/main.yml:23 Task/Handler: put the sacctmgr config in /etc/slurm

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_install/tasks/main.yml:26 Task/Handler: set the gres.conf on the master

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_install/tasks/main.yml:86 Task/Handler: insert rhel-xcbc WW template

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_install/tasks/main.yml:103 Task/Handler: load sacctmgr config

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_install_cloud/tasks/main.yml:2 Task/Handler: Check if slurm.conf is already updated

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_install_cloud/tasks/main.yml:7 Task/Handler: update slurm.conf with runtime controller and slurmdbd host

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_jupyter/tasks/main.yml:2 Task/Handler: Install Anaconda3 for jupyter.

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_jupyter/tasks/main.yml:12 Task/Handler: Install nb_conda_kernels to manage jupyter kernels

package-latest: Package installs should not use latest
roles/ohpc_matlab/tasks/main.yaml:1 Task/Handler: install the latest version of libXtst

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_matlab/tasks/main.yaml:29 Task/Handler: Copy modulefile from template to module path

empty-string-compare: Don't compare to empty string
roles/ohpc_rabbitmq/tasks/main.yaml:2 Task/Handler: fail msg=Please specify password for rabbitmq user

unnamed-task: All tasks should be named
roles/ohpc_rabbitmq/tasks/main.yaml:2 Task/Handler: fail msg=Please specify password for rabbitmq user

risky-file-permissions: File permissions unset or incorrect
roles/ohpc_sas/tasks/main.yaml:19 Task/Handler: Copy modulefile from template to module path

no-changed-when: Commands should not change things if nothing needs doing
roles/ohpc_user_reg/tasks/main.yml:15 Task/Handler: WareWulf Sync for RegUser on OHPC

risky-file-permissions: File permissions unset or incorrect
roles/ood/tasks/main.yaml:14 Task/Handler: Fix failing SCL RH7 repo with static baseurl

risky-file-permissions: File permissions unset or incorrect
roles/ood/tasks/main.yaml:23 Task/Handler: Fix remove mirrorlist from SCL RH7

risky-file-permissions: File permissions unset or incorrect
roles/ood/tasks/main.yaml:41 Task/Handler: Create clusters.d directory

risky-file-permissions: File permissions unset or incorrect
roles/ood/tasks/main.yaml:46 Task/Handler: Add cluster configuration files

risky-file-permissions: File permissions unset or incorrect
roles/ood/tasks/main.yaml:51 Task/Handler: Create interactive desktop settings directory

risky-file-permissions: File permissions unset or incorrect
roles/ood/tasks/main.yaml:56 Task/Handler: Add interactive desktop settings

risky-file-permissions: File permissions unset or incorrect
roles/ood/tasks/main.yaml:61 Task/Handler: Create interactive desktop job submit script directory

risky-file-permissions: File permissions unset or incorrect
roles/ood/tasks/main.yaml:66 Task/Handler: Add interactive desktop job submit script

ignore-errors: Use failed_when and specify error conditions instead of using ignore_errors
roles/ood/tasks/main.yaml:89 Task/Handler: Build the updated Apache config

no-changed-when: Commands should not change things if nothing needs doing
roles/ood/tasks/main.yaml:89 Task/Handler: Build the updated Apache config

risky-file-permissions: File permissions unset or incorrect
roles/ood_add_rabbitmq_agents/tasks/main.yaml:8 Task/Handler: Install rabbitmq agents config file

risky-file-permissions: File permissions unset or incorrect
roles/ood_add_rabbitmq_agents/tasks/main.yaml:20 Task/Handler: Install agents as service

risky-file-permissions: File permissions unset or incorrect
roles/ood_add_rstudio/tasks/main.yaml:9 Task/Handler: Replace form.yml

risky-file-permissions: File permissions unset or incorrect
roles/ood_add_rstudio/tasks/main.yaml:14 Task/Handler: Replace form submission template

risky-file-permissions: File permissions unset or incorrect
roles/ood_add_rstudio/tasks/main.yaml:19 Task/Handler: Replace manifest file

package-latest: Package installs should not use latest
roles/ood_firewall_and_services/tasks/main.yaml:8 Task/Handler: install the latest version of Python

package-latest: Package installs should not use latest
roles/ood_firewall_and_services/tasks/main.yaml:13 Task/Handler: install the latest version of firewalld

unnamed-task: All tasks should be named
roles/ood_firewall_and_services/tasks/main.yaml:24 Task/Handler: firewalld service=https permanent=True state=enabled

no-changed-when: Commands should not change things if nothing needs doing
roles/ood_firewall_and_services/tasks/main.yaml:34 Task/Handler: Set SELinux to permissive mode without reboot

risky-file-permissions: File permissions unset or incorrect
roles/ood_jupyter/tasks/main.yml:7 Task/Handler: Creates directory to clone the jupyter app

risky-file-permissions: File permissions unset or incorrect
roles/ood_jupyter/tasks/main.yml:18 Task/Handler: Use custom form.yml from templates for jupyter app

risky-file-permissions: File permissions unset or incorrect
roles/ood_jupyter/tasks/main.yml:23 Task/Handler: Use submit.yml.erb file tailored for slurm usage at UAB

risky-file-permissions: File permissions unset or incorrect
roles/ood_jupyter/tasks/main.yml:28 Task/Handler: Use custom script.sh.erb provided to avoid Jupyter Crash with user id!=1000

risky-file-permissions: File permissions unset or incorrect
roles/ood_matlab/tasks/main.yaml:6 Task/Handler: matlab directory

git-latest: Git checkouts must contain explicit version
roles/ood_matlab/tasks/main.yaml:11 Task/Handler: git repo=https://github.com/OSC/bc_osc_matlab.git dest=/var/www/ood/apps/sys/matlab/ clone=True

unnamed-task: All tasks should be named
roles/ood_matlab/tasks/main.yaml:11 Task/Handler: git repo=https://github.com/OSC/bc_osc_matlab.git dest=/var/www/ood/apps/sys/matlab/ clone=True

risky-file-permissions: File permissions unset or incorrect
roles/ood_matlab/tasks/main.yaml:16 Task/Handler: Replace form.yml

risky-file-permissions: File permissions unset or incorrect
roles/ood_matlab/tasks/main.yaml:26 Task/Handler: Replace form submission template

risky-file-permissions: File permissions unset or incorrect
roles/ood_matlab/tasks/main.yaml:31 Task/Handler: Replace form script template

risky-file-permissions: File permissions unset or incorrect
roles/ood_sas/tasks/main.yaml:6 Task/Handler: Create SAS app directory

git-latest: Git checkouts must contain explicit version
roles/ood_sas/tasks/main.yaml:11 Task/Handler: git repo=https://github.com/uabrc/ood_sas.git dest=/var/www/ood/apps/sys/sas/ clone=True

unnamed-task: All tasks should be named
roles/ood_sas/tasks/main.yaml:11 Task/Handler: git repo=https://github.com/uabrc/ood_sas.git dest=/var/www/ood/apps/sys/sas/ clone=True

risky-file-permissions: File permissions unset or incorrect
roles/ood_sas/tasks/main.yaml:16 Task/Handler: Replace form.yml

package-latest: Package installs should not use latest
roles/ood_shib_sso/tasks/main.yml:16 Task/Handler: install shibboleth rpm for scl apache

risky-file-permissions: File permissions unset or incorrect
roles/ood_shib_sso/tasks/main.yml:20 Task/Handler: copy shibbolth apache module into ood scl installe

risky-file-permissions: File permissions unset or incorrect
roles/ood_shib_sso/tasks/main.yml:32 Task/Handler: load samltest.id shibboleth config

risky-file-permissions: File permissions unset or incorrect
roles/ood_shib_sso/tasks/main.yml:37 Task/Handler: add saml-to-ood user map file

ignore-errors: Use failed_when and specify error conditions instead of using ignore_errors
roles/ood_shib_sso/tasks/main.yml:56 Task/Handler: Build the updated Apache config

no-changed-when: Commands should not change things if nothing needs doing
roles/ood_shib_sso/tasks/main.yml:56 Task/Handler: Build the updated Apache config

command-instead-of-module: yum used in place of yum module
roles/ood_user_reg/tasks/main.yml:2 Task/Handler: Enable Copr Repos

command-instead-of-shell: Use shell only when shell functionality is required
roles/ood_user_reg/tasks/main.yml:2 Task/Handler: Enable Copr Repos

literal-compare: Don't compare to literal True/False
roles/ood_user_reg/tasks/main.yml:2 Task/Handler: Enable Copr Repos

package-latest: Package installs should not use latest
roles/ood_user_reg/tasks/main.yml:7 Task/Handler: Install mod_wsgi for httpd24

package-latest: Package installs should not use latest
roles/ood_user_reg/tasks/main.yml:10 Task/Handler: Install pip via yum

package-latest: Package installs should not use latest
roles/ood_user_reg/tasks/main.yml:13 Task/Handler: Install virtualenv via pip

risky-file-permissions: File permissions unset or incorrect
roles/ood_user_reg/tasks/main.yml:21 Task/Handler: Creates directory to clone the user register app

git-latest: Git checkouts must contain explicit version
roles/ood_user_reg/tasks/main.yml:26 Task/Handler: Clone user register app form from gitlab

risky-file-permissions: File permissions unset or incorrect
roles/ood_user_reg/tasks/main.yml:37 Task/Handler: Put apache config file in place

risky-file-permissions: File permissions unset or incorrect
roles/ood_user_reg/tasks/main.yml:42 Task/Handler: Put wsgi config file in place

var-spacing: Variables should have spaces before and after: {{ user_register_app_path }}/{{ user_register_app}}.wsgi
roles/ood_user_reg/tasks/main.yml:42 Task/Handler: Put wsgi config file in place

ignore-errors: Use failed_when and specify error conditions instead of using ignore_errors
roles/ood_user_reg/tasks/main.yml:66 Task/Handler: Build the updated Apache config

no-changed-when: Commands should not change things if nothing needs doing
roles/ood_user_reg/tasks/main.yml:66 Task/Handler: Build the updated Apache config

package-latest: Package installs should not use latest
roles/ood_user_reg_cloud/tasks/main.yml:2 Task/Handler: Install packages via yum

risky-file-permissions: File permissions unset or incorrect
roles/ood_user_reg_cloud/tasks/main.yml:42 Task/Handler: Create log directory

risky-file-permissions: File permissions unset or incorrect
roles/ood_user_reg_cloud/tasks/main.yml:49 Task/Handler: Copy Celery service template

risky-file-permissions: File permissions unset or incorrect
roles/ood_user_reg_cloud/tasks/main.yml:59 Task/Handler: Put apache config file in place (user-reg_conf_shib.j2 in case of shib or user-reg_conf.j2 in case of basicauth)

risky-file-permissions: File permissions unset or incorrect
roles/ood_user_reg_cloud/tasks/main.yml:64 Task/Handler: Put wsgi file in place

risky-file-permissions: File permissions unset or incorrect
roles/ood_user_reg_cloud/tasks/main.yml:69 Task/Handler: Put gunicorn config file in place

risky-file-permissions: File permissions unset or incorrect
roles/ood_user_reg_cloud/tasks/main.yml:74 Task/Handler: Create gunicorn system service

ignore-errors: Use failed_when and specify error conditions instead of using ignore_errors
roles/ood_user_reg_cloud/tasks/main.yml:98 Task/Handler: Build the updated Apache config

no-changed-when: Commands should not change things if nothing needs doing
roles/ood_user_reg_cloud/tasks/main.yml:98 Task/Handler: Build the updated Apache config

risky-file-permissions: File permissions unset or incorrect
roles/ood_vnc_form/tasks/main.yml:2 Task/Handler: Put custom cluster.yml in place

risky-file-permissions: File permissions unset or incorrect
roles/ood_vnc_form/tasks/main.yml:8 Task/Handler: Put submit.yml.erb in place

risky-file-permissions: File permissions unset or incorrect
roles/ood_vnc_form/tasks/main.yml:14 Task/Handler: Put noVNC.html.erb in place

unnamed-task: All tasks should be named
roles/pre_ohpc/tasks/main.yml:11 Task/Handler: fail msg=Kernel version mismatch between loaded kernel and group-vars/all! Please fix and run again.

package-latest: Package installs should not use latest
roles/pre_ohpc/tasks/main.yml:15 Task/Handler: install necessary stuff

literal-compare: Don't compare to literal True/False
roles/pre_ohpc/tasks/main.yml:44 Task/Handler: Install Copr plugin for yum

command-instead-of-module: yum used in place of yum module
roles/pre_ohpc/tasks/main.yml:48 Task/Handler: enable Copr Repos

command-instead-of-shell: Use shell only when shell functionality is required
roles/pre_ohpc/tasks/main.yml:48 Task/Handler: enable Copr Repos

literal-compare: Don't compare to literal True/False
roles/pre_ohpc/tasks/main.yml:48 Task/Handler: enable Copr Repos

package-latest: Package installs should not use latest
roles/pre_ohpc/tasks/main.yml:53 Task/Handler: install fail2ban

risky-file-permissions: File permissions unset or incorrect
roles/pre_ohpc/tasks/main.yml:64 Task/Handler: template src=firewall_conf/services/slurm.xml dest=/etc/firewalld/services/slurm.xml

unnamed-task: All tasks should be named
roles/pre_ohpc/tasks/main.yml:64 Task/Handler: template src=firewall_conf/services/slurm.xml dest=/etc/firewalld/services/slurm.xml

risky-file-permissions: File permissions unset or incorrect
roles/pre_ohpc/tasks/main.yml:66 Task/Handler: template src=firewall_conf/firewalld.conf dest=/etc/firewalld/firewalld.conf

unnamed-task: All tasks should be named
roles/pre_ohpc/tasks/main.yml:66 Task/Handler: template src=firewall_conf/firewalld.conf dest=/etc/firewalld/firewalld.conf

risky-file-permissions: File permissions unset or incorrect
roles/pre_ohpc/tasks/main.yml:68 Task/Handler: template src=firewall_conf/zones/internal.xml dest=/etc/firewalld/zones/internal.xml

unnamed-task: All tasks should be named
roles/pre_ohpc/tasks/main.yml:68 Task/Handler: template src=firewall_conf/zones/internal.xml dest=/etc/firewalld/zones/internal.xml

risky-file-permissions: File permissions unset or incorrect
roles/pre_ohpc/tasks/main.yml:70 Task/Handler: template src=firewall_conf/zones/public.xml dest=/etc/firewalld/zones/public.xml

unnamed-task: All tasks should be named
roles/pre_ohpc/tasks/main.yml:70 Task/Handler: template src=firewall_conf/zones/public.xml dest=/etc/firewalld/zones/public.xml

no-changed-when: Commands should not change things if nothing needs doing
roles/pre_ohpc/tasks/main.yml:77 Task/Handler: check for default public network profile name

risky-shell-pipe: Shells that use pipes should set the pipefail option
roles/pre_ohpc/tasks/main.yml:77 Task/Handler: check for default public network profile name

no-changed-when: Commands should not change things if nothing needs doing
roles/pre_ohpc/tasks/main.yml:85 Task/Handler: check for default private network profile name

risky-shell-pipe: Shells that use pipes should set the pipefail option
roles/pre_ohpc/tasks/main.yml:85 Task/Handler: check for default private network profile name

no-changed-when: Commands should not change things if nothing needs doing
roles/pre_ohpc/tasks/main.yml:93 Task/Handler: add private interface to internal zone via nmcli

no-changed-when: Commands should not change things if nothing needs doing
roles/pre_ohpc/tasks/main.yml:96 Task/Handler: add public interface to public zone via nmcli

risky-file-permissions: File permissions unset or incorrect
roles/pre_ohpc/tasks/main.yml:148 Task/Handler: set up /etc/hosts

risky-file-permissions: File permissions unset or incorrect
roles/pre_ohpc/tasks/main.yml:151 Task/Handler: set up /etc/ssh/sshd_config

literal-compare: Don't compare to literal True/False
roles/prep_ood/tasks/main.yaml:5 Task/Handler: Install Copr plugin for yum

command-instead-of-module: yum used in place of yum module
roles/prep_ood/tasks/main.yaml:9 Task/Handler: enable Copr Repos

command-instead-of-shell: Use shell only when shell functionality is required
roles/prep_ood/tasks/main.yaml:9 Task/Handler: enable Copr Repos

literal-compare: Don't compare to literal True/False
roles/prep_ood/tasks/main.yaml:9 Task/Handler: enable Copr Repos

literal-compare: Don't compare to literal True/False
roles/prep_ood_cloud/tasks/main.yaml:5 Task/Handler: Install Copr plugin for yum

command-instead-of-module: yum used in place of yum module
roles/prep_ood_cloud/tasks/main.yaml:9 Task/Handler: enable Copr Repos

command-instead-of-shell: Use shell only when shell functionality is required
roles/prep_ood_cloud/tasks/main.yaml:9 Task/Handler: enable Copr Repos

literal-compare: Don't compare to literal True/False
roles/prep_ood_cloud/tasks/main.yaml:9 Task/Handler: enable Copr Repos

risky-file-permissions: File permissions unset or incorrect
roles/prep_ood_cloud/tasks/main.yaml:29 Task/Handler: add autofs maps

risky-file-permissions: File permissions unset or incorrect
roles/prep_ood_cloud/tasks/main.yaml:39 Task/Handler: lineinfile path=/etc/auto.{{ item.name }} line=* -{{ item.opt }} {{ headnode_private_ip }}:{{ item.path }}/& create=True

unnamed-task: All tasks should be named
roles/prep_ood_cloud/tasks/main.yaml:39 Task/Handler: lineinfile path=/etc/auto.{{ item.name }} line=* -{{ item.opt }} {{ headnode_private_ip }}:{{ item.path }}/& create=True

risky-file-permissions: File permissions unset or incorrect
roles/reg_user_create_scripts/tasks/main.yml:7 Task/Handler: Creates directory to clone ohpc user create

git-latest: Git checkouts must contain explicit version
roles/reg_user_create_scripts/tasks/main.yml:12 Task/Handler: Clone template repo from upstream

no-changed-when: Commands should not change things if nothing needs doing
roles/viz_build_nodes/tasks/main.yml:8 Task/Handler: add node to ww db

no-changed-when: Commands should not change things if nothing needs doing
roles/viz_build_nodes/tasks/main.yml:12 Task/Handler: set nodes bootloader

no-changed-when: Commands should not change things if nothing needs doing
roles/viz_build_nodes/tasks/main.yml:16 Task/Handler: set nodes partitions

no-changed-when: Commands should not change things if nothing needs doing
roles/viz_build_nodes/tasks/main.yml:20 Task/Handler: format partitions

no-changed-when: Commands should not change things if nothing needs doing
roles/viz_build_nodes/tasks/main.yml:24 Task/Handler: define filesystems

no-changed-when: Commands should not change things if nothing needs doing
roles/viz_build_nodes/tasks/main.yml:44 Task/Handler: set files to provision

no-changed-when: Commands should not change things if nothing needs doing
roles/viz_build_nodes/tasks/main.yml:51 Task/Handler: update pxeconfig to let node boot from pxe

no-changed-when: Commands should not change things if nothing needs doing
roles/viz_build_nodes/tasks/main.yml:55 Task/Handler: wwsh pxe update

risky-file-permissions: File permissions unset or incorrect
roles/warewulf_sync/tasks/main.yaml:17 Task/Handler: install warewulf file synchronization

unnamed-task: All tasks should be named
roles/warewulf_sync/tasks/main.yaml:25 Task/Handler: file path=/warewulf/bin recurse=True mode=u+x,g+x

risky-octal: Octal file permissions must contain leading zero or be a string
roles/warewulf_sync/tasks/main.yaml:46 Task/Handler: create log output dir for warewulf cron

command-instead-of-shell: Use shell only when shell functionality is required
roles/warewulf_sync/tasks/main.yaml:54 Task/Handler: Check if ood already in warewulf database

no-changed-when: Commands should not change things if nothing needs doing
roles/warewulf_sync/tasks/main.yaml:54 Task/Handler: Check if ood already in warewulf database

command-instead-of-shell: Use shell only when shell functionality is required
roles/warewulf_sync/tasks/main.yaml:59 Task/Handler: Add ood node into warewulf database

command-instead-of-shell: Use shell only when shell functionality is required
roles/warewulf_sync/tasks/main.yaml:64 Task/Handler: Register ood node IP and MAC address in warewulf database

no-changed-when: Commands should not change things if nothing needs doing
roles/warewulf_sync/tasks/main.yaml:64 Task/Handler: Register ood node IP and MAC address in warewulf database

command-instead-of-shell: Use shell only when shell functionality is required
roles/warewulf_sync/tasks/main.yaml:68 Task/Handler: Setup ood node provision in warewult database

no-changed-when: Commands should not change things if nothing needs doing
roles/warewulf_sync/tasks/main.yaml:68 Task/Handler: Setup ood node provision in warewult database

no-changed-when: Commands should not change things if nothing needs doing
roles/warewulf_sync/tasks/main.yaml:88 Task/Handler: Force warewulf synchronization

OOD installation from running a standalone ood role fails because of lua-posix dependency.

Error:

    openstack.image:   ood failed | msg: Error: Package: ondemand-2.0.27-1.el7.x86_64 (ondemand-web)
    openstack.image:            Requires: lua-posix

Description:
The role ood errored out as it could not satisfy installing the dependency lua-posix which is part of epel-release. This task is part of the prep_ood which we don't run in ood-packer.yaml. prep-ood is part of the playbook targeted for ohpc based dev cluster.

Proposed Solution:

  • Add task to install epel-release in ood role so that it is self-sufficient

hpc desktop launch with node count 2 uses 2 cores on different nodes

It seems that specifying "2" as the number of nodes for an hpc desktop launches a job that has two cores spanning two nodes. From the terminal in such an hpc desktop:

[jpr@c0001 ~]$ srun hostname
c0001
c0002

It would make more sense to use 1 node with two cores for a desktop env. Need to understand how these job parameters are defined/controlled in the underlying resource request. Do we need to distinguish between resource reservation systems?

ansible `aws_s3` module & `boto3` dependency failure in role `ood_shib_config`

Error:

    openstack.image: TASK [ood_shib_config : Install require package] *******************************
    openstack.image: fatal: [ood]: FAILED! => changed=false
    openstack.image:   msg: Unable to find any of pip2, pip to use.  pip needs to be installed.
    openstack.image:
    openstack.image: PLAY RECAP *********************************************************************
    openstack.image: ood                        : ok=29   changed=27   unreachable=0    failed=1    skipped=1    rescued=0    ignored=0

Description:

  • aws_s3 module in ansible is used to download shib config tar from s3. This module has a dependency on boto3 pkg. boto3 is a Python3 only package.
    Solution:

    • Need pip3 and Python3 to install boto3.
  • boto3 pkg install still fails after fixing above issue as it can't find the pip3 executable.
    Solution:

    • point the task to pip3 executable.
  • As the ansible module to download the shib config tar is inherently dependent on Python3, we need to set the task to use a Python3 interpreter.
    Solution:

    • Set the interpreter at task level to point to Python3.
      NOTE: This wouldn't work if we set it globally in /etc/ansible/ansible.cfg because it would break yum installs in all the previous tasks and roles in the playbook because ansible uses Python2.X under the hood for yum module. So the yum install from the first solution would also break.

build vs deploy - two versions of slurm.conf

Currently we are maintaining slurm template file in two places one during the build phase in https://github.com/jprorama/CRI_XCBC/blob/feat-openstack/roles/ohpc_install/templates/slurm_conf.j2 and the other in https://github.com/jprorama/CRI_XCBC/blob/feat-openstack/roles/ohpc_install_cloud/templates/slurm_conf.j2 .

This would create an issue if we make a change to any vars in /CRI_XCBC/roles/ohpc_install/templates/slurm_conf.j2 they won't take effect as they will be replaced by the vars from /CRI_XCBC/roles/ohpc_install_cloud/templates/slurm_conf.j2.

Also, the second issue with using a template file in the deploy phase is that we are only using it when the condition in the task https://github.com/jprorama/CRI_XCBC/blob/feat-openstack/roles/ohpc_install_cloud/tasks/main.yml#L7 fails for eg. 22e3bc5 changes would only apply in the case of failure of above mentioned condition.

I think it should be an in-place line in file kind of change rather than a template substitution for updating runtime controller and slurmdbd host in slurm.conf

Problems with new openstack image

With latest version of images, e.g. compute-devint-v0.2, ohpc-devint-V0.4, and ood-devint-V0.5, I've found the following problems:

  • Only c0 will be available for slurm to schedule

This can be fixed by updating Partitions section in slurm.conf.

  • MODULEPATH is not up-to-date on compute node causing ood interactive job failed

Because lmod.sh and lmod.csh are not set as files to provision compute nodes in warewulf. It can be fixed by adding lmod.sh and lmod.csh into files list in compute_build_nodes_cloud role.

VNFS image oversize

now in the script, we use a customized template to make chroot environment. line 31-38 in file roles/compute_build_vnfs/tasks/main.yml which will install a bunch of software defined in templates roles/compute_build_vnfs/templates/extend_compute_packages.j2 and roles/compute_build_vnfs/templates/base_packages.j2.
After wwmkchroot, this customized environment will have footprint of 1.3G which is around 900M bigger than default centos-7 environment, 451M.

I am not sure what in the customized list of packages is needed but after all the required packages are installed, the chroot environment will become 2.7G which will cause compute node privisioning failed due to lack of memory.

So should we move back to default environment or just increase memory size of compute node?

packer build failure the user account for flask app doesn't exist at build time

The reggie user currently used as the process and file system owner for the flask app doesn't exist at build time causing the packer build to fail.

For security reasons this app should run as an unprivileged user and not have write access to anything but log files in /var/log/user_reg (which could be symlink from the app dir if desired).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.