fix-attrs 925 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #!/bin/sh -e
  2. got=false
  3. err=false
  4. if profile=`printcontenv S6_RUNTIME_PROFILE` ; then
  5. etc="/etc/cont-profile.d/$profile"
  6. else
  7. etc=/etc
  8. fi
  9. if v=`printcontenv S6_VERBOSITY` && s6-test "$v" =~ '^[[:digit:]]+$' ; then : ; else
  10. v=2
  11. fi
  12. apply () {
  13. if test $v -ge 2 ; then
  14. echo "fix-attrs: info: applying $1" 1>&2
  15. fi
  16. got=true
  17. if ! /package/admin/s6-overlay-@VERSION@/libexec/fix-attrs < "$1" ; then
  18. err=true
  19. fi
  20. }
  21. for file in `s6-ls "$etc/fix-attrs.d" 2>/dev/null | s6-sort` ; do
  22. apply "$etc/fix-attrs.d/$file"
  23. done
  24. if $got && test $v -ge 1 ; then
  25. echo 'fix-attrs: warning: fix-attrs is deprecated, please fix volume permissions in your container manager instead' 1>&2
  26. fi
  27. if $err && b=0`printcontenv S6_BEHAVIOUR_IF_STAGE2_FAILS` && test "$b" -ne 0 ; then
  28. if test $v -ge 1 ; then
  29. echo 'fix-attrs: warning: some fix files failed to apply' 1>&2
  30. fi
  31. if test "$b" -ge 2 ; then
  32. exit 1
  33. fi
  34. fi