The meetings_by_team.sh script is sending errors:
From: "(Cron Daemon)" <apache@fedoraproject.org> To: apache@fedoraproject.org Subject: Cron <apache@value01> /usr/local/bin/meetings_by_team.sh ln: failed to create symbolic link ‘/srv/web/meetbot/teams/f30-beta-readiness-meeting/f30-beta-readiness-meeting.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/f31-final-go_no_go-meeting/f31-final-go_no_go-meeting.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/f33-beta-go_no_go-meeting/f33-beta-go_no_go-meeting.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/f33-blocker-review/f33-blocker-review.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/f35-beta-go_no_go-meeting/f35-beta-go_no_go-meeting.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fad_apac_2018/fad_apac_2018.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fad_fosdem_2011/fad_fosdem_2011.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famna_2014-10-24/famna_2014-10-24.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famna_west_-_2018-7-9/famna_west_-_2018-7-9.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_1-20-2016/famsco_1-20-2016.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2013-06-03/famsco_2013-06-03.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2014-06-17/famsco_2014-06-17.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2014-08-12/famsco_2014-08-12.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2016-04-20/famsco_2016-04-20.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2016-05-25/famsco_2016-05-25.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2016-07-06/famsco_2016-07-06.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2016-07-12/famsco_2016-07-12.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2016-07-20/famsco_2016-07-20.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2017-01-25/famsco_2017-01-25.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2017-02-08/famsco_2017-02-08.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2017-03-15/famsco_2017-03-15.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2017-04-19/famsco_2017-04-19.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2017-05-10/famsco_2017-05-10.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2017-06-14/famsco_2017-06-14.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2017-08-23/famsco_2017-08-23.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2017-09-13/famsco_2017-09-13.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_2017-10-11/famsco_2017-10-11.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/famsco_meeting_2012-01-04/famsco_meeting_2012-01-04.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_17_final_go_nogo_meeting_round_2/fedora_17_final_go_nogo_meeting_round_2.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_20_elections:_famsco_townhall/fedora_20_elections:_famsco_townhall.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_29_release_retrospective/fedora_29_release_retrospective.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_ambassadors_latam_meeting_(05252018)/fedora_ambassadors_latam_meeting_(05252018).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_ambassadors_latam_meeting_2016-11-05/fedora_ambassadors_latam_meeting_2016-11-05.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_ambassadors_latam_meeting_2016-12-10/fedora_ambassadors_latam_meeting_2016-12-10.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_ambassadors_latam_meeting_2017-10-06/fedora_ambassadors_latam_meeting_2017-10-06.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_ambassadors_latam_meeting_jan_12th,_2018/fedora_ambassadors_latam_meeting_jan_12th,_2018.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_ambassadors_latam_meeting/fedora_ambassadors_latam_meeting.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_ambassadors_meeting/fedora_ambassadors_meeting.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_arm_sig_meeting/fedora_arm_sig_meeting.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_atomic_apac_wg/fedora_atomic_apac_wg.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora-bugzappers/fedora-bugzappers.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_chinese_meeting_18_aug_2017/fedora_chinese_meeting_18_aug_2017.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/"fedora_classroom_-_command_line_101"/"fedora_classroom_-_command_line_101".tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_cloud_workgroup/fedora_cloud_workgroup.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2016-02-16)/fedora_commops_(2016-02-16).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2016-03-01)/fedora_commops_(2016-03-01).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2016-03-29)/fedora_commops_(2016-03-29).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2016-04-26)/fedora_commops_(2016-04-26).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2016-05-17)/fedora_commops_(2016-05-17).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2016-05-31)/fedora_commops_(2016-05-31).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2016-06-07)/fedora_commops_(2016-06-07).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2016-07-12)/fedora_commops_(2016-07-12).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2016-07-26)/fedora_commops_(2016-07-26).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2016-08-09)/fedora_commops_(2016-08-09).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2016-09-20)/fedora_commops_(2016-09-20).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2016-09-27)/fedora_commops_(2016-09-27).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2017-11-27)/fedora_commops_(2017-11-27).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-01-22)/fedora_commops_(2018-01-22).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-02-12)/fedora_commops_(2018-02-12).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-02-19)/fedora_commops_(2018-02-19).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-03-19)/fedora_commops_(2018-03-19).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-05-21)/fedora_commops_(2018-05-21).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-06-11)/fedora_commops_(2018-06-11).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-02-12)/fedora_commops_(2018-02-12).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-02-19)/fedora_commops_(2018-02-19).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-03-19)/fedora_commops_(2018-03-19).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-05-21)/fedora_commops_(2018-05-21).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-06-11)/fedora_commops_(2018-06-11).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-07-02)/fedora_commops_(2018-07-02).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-07-16)/fedora_commops_(2018-07-16).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-08-13)/fedora_commops_(2018-08-13).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-10-10)/fedora_commops_(2018-10-10).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-10-31)/fedora_commops_(2018-10-31).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-11-07)/fedora_commops_(2018-11-07).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_(2018-12-12)/fedora_commops_(2018-12-12).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_hack_session_(2016-05-18)/fedora_commops_hack_session_(2016-05-18).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_hack_session_(2016-06-03)/fedora_commops_hack_session_(2016-06-03).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_hack_session_-_2018-03-25/fedora_commops_hack_session_-_2018-03-25.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops_meeting_(2017-08-15)/fedora_commops_meeting_(2017-08-15).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_commops/fedora_commops.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_container_sig/fedora_container_sig.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_coreos_apac_meeting/fedora_coreos_apac_meeting.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora-design-dandelion/fedora-design-dandelion.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_design_meeting/fedora_design_meeting.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora-design-steel/fedora-design-steel.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_design_team_meeting/fedora_design_team_meeting.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora-devel/fedora-devel.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_diversity_(2018-06-22)/fedora_diversity_(2018-06-22).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_diversity_and_inclusion_team_meeting/fedora_diversity_and_inclusion_team_meeting.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_diversity_&_inclusion_team_(2019-06-24)/fedora_diversity_&_inclusion_team_(2019-06-24).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_diversity_&_inclusion_team_(2019-07-01)/fedora_diversity_&_inclusion_team_(2019-07-01).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_diversity_&_inclusion_team_(2020-08-13)/fedora_diversity_&_inclusion_team_(2020-08-13).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_diversity_&_inclusion_team_(2020-09-10)/fedora_diversity_&_inclusion_team_(2020-09-10).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_diversity_team_-_2016_sept/fedora_diversity_team_-_2016_sept.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_diversity_team_-_2017_feb_8/fedora_diversity_team_-_2017_feb_8.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_diversity_team_-_2018_jan_12/fedora_diversity_team_-_2018_jan_12.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_docs_fad_day_3/fedora_docs_fad_day_3.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_docs_https:fedoraproject/fedora_docs_https:fedoraproject.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_docs_project_meeting_https:fedoraproject/fedora_docs_project_meeting_https:fedoraproject.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2016-11-29)/fedora_dotnet_(2016-11-29).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2017-02-07)/fedora_dotnet_(2017-02-07).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2017-04-11)/fedora_dotnet_(2017-04-11).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2017-06-13)/fedora_dotnet_(2017-06-13).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2017-06-20)/fedora_dotnet_(2017-06-20).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2017-07-04)/fedora_dotnet_(2017-07-04).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2017-07-20)/fedora_dotnet_(2017-07-20).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2017-08-24)/fedora_dotnet_(2017-08-24).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2017-08-31)/fedora_dotnet_(2017-08-31).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2017-11-30)/fedora_dotnet_(2017-11-30).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2018-03-01)/fedora_dotnet_(2018-03-01).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2018-03-08)/fedora_dotnet_(2018-03-08).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2018-06-28)/fedora_dotnet_(2018-06-28).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2018-09-06)/fedora_dotnet_(2018-09-06).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora_dotnet_(2018-10-18)/fedora_dotnet_(2018-10-18).tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora-edu/fedora-edu.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora-flock-ectr103/fedora-flock-ectr103.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora-flock-ectr112/fedora-flock-ectr112.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora-fr_du_1_décembre_2014/fedora-fr_du_1_décembre_2014.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora-fr_du_27_octobre_2014/fedora-fr_du_27_octobre_2014.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora-fr_du_2_novembre_2015/fedora-fr_du_2_novembre_2015.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora-fr_du_8_decembre_2014/fedora-fr_du_8_decembre_2014.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora-fwn/fedora-fwn.tgz’: File exists ln: failed to create symbolic link ‘/srv/web/meetbot/teams/fedora-golang/fedora-golang.tgz’: File exists ...more lines
This might be related to it being moved to a nfs volume, or something else.
CC: @eddiejennings
Metadata Update from @mohanboddu: - Issue priority set to: Waiting on Assignee (was: Needs Review) - Issue tagged with: low-gain, low-trouble, ops
Here are the results of initial troubleshooting.
The script in question is meetings_by_team.sh, which is run via cron as the user apache. It looks like what is failing is the -f function of ln, which makes sense considering the above error message.
-f
ln
The first thought was a permissions issue, but the apache user has write permissions to the directories in question and, through other, has execute permissions to traverse all the way down the tree to where the work will be done.
SELinux may be a thing, but I can't verify or rule it out because of apprentice permissions.
One thing that's curious is that new symlinks do appear to be created. /srv/web/meetbot/teams/zodbot_test/zodbot_test.tgz was created today, October 20th. This seems to confirm that my first thought is wrong and that permissions are not the issue.
/srv/web/meetbot/teams/zodbot_test/zodbot_test.tgz
SELinux seems to be enforcing, from results of sestatus command:
sestatus
SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mode: enforcing Mode from config file: enforcing Policy MLS status: enabled Policy deny_unknown status: allowed Max kernel policy version: 31
There's no selinux AVC's on that machine. ;(
I wonder if the /./ in the path is confusing things?
ie, lrwxrwxrwx. 1 apache apache 58 Oct 21 19:58 /srv/web/meetbot/teams/f30-beta-readiness-meeting/f30-beta-readiness-meeting.tgz -> /srv/web/meetbot/./archives/f30-beta-readiness-meeting.tgz should be
/srv/web/meetbot/archives/f30-beta-readiness-meeting.tgz
but is
/srv/web/meetbot/./archives/f30-beta-readiness-meeting.tgz
They should resolve to the same thing, but perhaps ln has some issue here?
Has this script worked before ?
Most likely line shoud read: ln -f -s "$BASELOCATION/$teamname/" "$PWD/$f"
as ln is used 'ln -s Existing-file New-name' and directory is made on the line above.
I did some tests tonight value01.iad2.fedoraproject.org within the /tmp directory. I simulated the script and it looks like /./ didn't cause a problem. I was able to run my for loop a few times without generating an error. Not quite an apples-to-apples test as /tmp isn't mounted via NFS, but I'm not convinced /./ is a problem.
/./
@copperi I don't know if this script has worked in the past. Maybe @kevin can shed some light.
Maybe it would help if we could get the nfs config from the server hosting the share, so we could simulate it somewhere else. @kevin maybe?
Yes, this script worked fine before we moved from local storage to a nfs volume
The nfs server is a netapp. I don't know of any way to get config off it. It just produces nfs for clients to consume. :( I might be able to look up specific settings if there's a question about them, but I don't know how to get a dump of all config really.
Apparently, the same script is running on both value01 & 02 at the same time:
Mar 13 23:00:01 value01.iad2.fedoraproject.org CROND[3497]: (apache) CMD (/usr/local/bin/meetings_by_team.sh) Mar 13 23:00:02 value02.iad2.fedoraproject.org CROND[635551]: (apache) CMD (/usr/local/bin/meetings_by_team.sh)
According to the playbook, that should not happen. Maybe value02 needs some manual cleaning of that crontab?
And same for archive.sh btw:
archive.sh
Mar 13 23:30:01 value01.iad2.fedoraproject.org CROND[15938]: (apache) CMD (/usr/local/bin/archive.sh >& /dev/null) Mar 13 23:30:01 value02.iad2.fedoraproject.org CROND[678997]: (apache) CMD (/usr/local/bin/archive.sh >& /dev/null)
Ah ha. Good eye.
I've set archive to only run on 01 and removed the old jobs on 02. :)
Metadata Update from @kevin: - Issue close_status updated to: Fixed - Issue status updated to: Closed (was: Open)