name: Reconcile labels description: Converge PR state and optionally bootstrap the label taxonomy inputs: bootstrap: description: Whether to bootstrap labels before reconciling (yes or no) required: true default: "no" runs: using: composite steps: - name: validate bootstrap input shell: bash env: BOOTSTRAP: ${{ inputs.bootstrap }} run: | case "$BOOTSTRAP" in yes | no) ;; *) echo "bootstrap must be 'yes' or 'no'" >&2; exit 2 ;; esac - name: reconcile labels shell: bash env: BOOTSTRAP: ${{ inputs.bootstrap }} LABELS_CONF: ${{ github.workspace }}/.github/labels.conf run: | # BOOTSTRAP passes through as-is: the script gates on the input. The # export-the-event-name hack that lived here died with ceremony#215 — # the script keyed on GITHUB_EVENT_NAME, which #209 made true for # every machine wake, so "no" could never mean no. bash "$GITHUB_ACTION_PATH/labels-reconcile.sh"