--- # allow running scwrypts in Github Actions name: scwrypts author: yage description: check required dependencies and run a scwrypt inputs: scwrypt: description: "args / identifiers for scwrypts CLI (e.g. '--name --group --type ')" required: true args: description: "arguments to pass to the scwrypt-to-be-run" required: false version: description: "scwrypts version; defaults to latest (minimum v3.7.0)" required: false scwrypts-env: description: "override value for SCWRYPTS_ENV" required: false default: "ci.github-actions" runs: using: composite steps: - uses: actions/checkout@v4 with: repository: wrynegade/scwrypts path: ./wrynegade/scwrypts ref: ${{ inputs.version }} - name: check dependencies shell: bash env: CI: true SCWRYPTS_PLUGIN_ENABLED__ci: 1 run: | [ $CI_SCWRYPTS_READY ] && [[ $CI_SCWRYPTS_READY -eq 1 ]] && echo 'setup completed previously' && exit 0 echo "updating package dependencies" { sudo apt-get update sudo apt-get install --yes zsh fzf ripgrep for D in $($GITHUB_WORKSPACE/wrynegade/scwrypts/scwrypts -n --name check-all-dependencies --group ci --type zsh) do echo "--- installing $D ---" ( sudo apt-get install --yes $D; exit 0; ) done } > $HOME/.scwrypts.apt-get.log 2>&1 echo "updating virtual dependencies" $GITHUB_WORKSPACE/wrynegade/scwrypts/scwrypts \ --name scwrypts/virtualenv/update-all \ --group scwrypts \ --type zsh \ ; #> $HOME/.scwrypts.virtualenv.log 2>&1 echo "CI_SCWRYPTS_READY=1" >> $GITHUB_ENV exit 0 - name: run scwrypt shell: bash env: CI: true SCWRYPTS_ENV: ${{ inputs.scwrypts-env }} run: $GITHUB_WORKSPACE/wrynegade/scwrypts/scwrypts ${{inputs.scwrypt}} -- ${{inputs.args}} || exit 1