Files
common/utils/chown/action.yaml
2025-07-01 13:55:53 -07:00

47 lines
1.1 KiB
YAML

name: chown
description: "Take or change ownership of the specified files."
inputs:
uid:
description: "User id."
required: false
default: ""
gid:
description: "Group id."
required: false
default: ""
file:
description: "File or folder to own."
required: true
default: .
runs:
using: "composite"
steps:
- name: "Determine UID and GID."
id: ids
run: |
NAME="Chown"
echo "::group::$NAME - Inputs"
echo "${{ toJSON(inputs) }}"
echo "::endgroup::"
USER_UID="${{ inputs.uid }}"
USER_GID="${{ inputs.gid }}"
if [[ -z "$USER_UID" ]]; then
USER_UID=$(id -u)
fi
if [[ -z "$USER_GID" ]]; then
USER_GID=$(id -g)
fi
echo "uid=$USER_UID" >> "$GITHUB_OUTPUT"
echo "gid=$USER_GID" >> "$GITHUB_OUTPUT"
echo "::group::$NAME - Outputs"
cat "$GITHUB_OUTPUT"
echo "::endgroup::"
shell: bash
- name: "Take ownership of output."
uses: virtualitics/actions/distros/busybox@master
with:
args: chown ${{ steps.ids.outputs.uid }}:${{ steps.ids.outputs.gid }} "${{ inputs.file }}" -R