ansible managed files for software group - raeker/ARC-Wiki-Test GitHub Wiki

Advanced Research Computing : Ansible managed files for software group

crontab template clusters script to run when run as requires files
sw_license_tracking /etc/ansible/roles/software_admin/templates/sw_license_tracking.j2

greatlakes

sw_license_tracker

10:30 am on the 2nd of each month

(30 10 2 * * )

swinstaller

/usr/local/sbin/*

  • sw_license_tracker
  • monthly_license_use_report
  • token_plot_month.R
  • token_plot_ytd.R


/etc/*

  • catalog.keytab
update_sw_catalog /etc/ansible/roles/software_admin/templates/update_sw_catalog.j2

greatlakes

lighthouse


future(?):

armis2*

make_catalog

every 14 min

(*/14 * * * )

swinstaller

/usr/local/sbin/*

  • make_catalog
  • sw_cataloger


/etc/*

  • catalog.keytab
update_spider_cache

/etc/ansible/roles/lmod/tasks/main.yml

- block:
- name: Setup update_spider_cache cron job

armis2 update_spider_cache.sh

every 1, 16, 31, & 47 min past the hour

(01,16,31,46 * * * *)

swinstaller

/usr/local/sbin/*

  • update_spider_cache.sh
  • If attempting to automate sw_catalog for armis2, it needs to be implemented differently because cannot write to afs from armis2.

    • For example, scp  to the license server, then another cron to copy to afs . Create a new account on armis2.  Install scponly for that one account.  License server would have a separate crontab to process the files copied to it and then put it into AFS. 
    • Or use gitlab or bitbucket  as the middle man.  Update only twice a day (noon and 6 pm).
  • Software group is primarily responsible for the following roles: lmodlicense_server, and create_gres.

  • Does software group have maintainer role for the singularity role (question)

  • Does software group have maintainer role for the ood role (question)

  • Use the hotfix/ prefix for anything that goes directly from/to master and is to be distributed to production nodes now.

  • Use the feature/ prefix for anything that is new and/or not in production; these should be from/to the dev (or other) branch.

  • The proper procedure for making changes, getting review, creating PR, merging, and distributed to nodes is as follows

    • checkout and update the master branch of your local ansible repository
    • create a new hotfix branch for the change from master
    • make the changes, review with git status and git diff
    • add and commit
    • push the hotfix branch with git push origin <hotfix_branch_name>
    • copy the link to create the PR and make the PR
      • In the PR description you must include which nodes to apply this to and when to apply it, e.g., please do this as soon as possible, or at your leisure, or by Tue 5:00 PM.
    • slack #systems that there is a PR waiting and when it should be done by.
⚠️ **GitHub.com Fallback** ⚠️