diff --git a/action.yml b/action.yml new file mode 100644 index 0000000..38e54e6 --- /dev/null +++ b/action.yml @@ -0,0 +1,44 @@ +name: "WP Release CI" +description: "Package and publish a WordPress plugin/theme release to a Gitea release + self-hosted update channel." + +# Consuming workflow MUST check out the source repo with fetch-depth: 0 BEFORE this +# step (git archive + the tag validation need full history and the tag ref). +# +# Minimal usage: +# - uses: actions/checkout@v4 +# with: { fetch-depth: 0 } +# - uses: wordpress/wp-release-ci@v1 # pin to a tag or SHA, not a branch +# with: +# channel_deploy_key: ${{ secrets.CHANNEL_DEPLOY_KEY }} +# +# GITHUB_REPOSITORY / GITHUB_REF_NAME / GITHUB_SERVER_URL / GITHUB_TOKEN are provided +# automatically by the Actions runner and consumed by release.sh directly. + +inputs: + channel_deploy_key: + description: "SSH private key with WRITE access to the channel repo. Without it, the channel-publish step is skipped (Gitea release still cut)." + required: true + channel_ssh_port: + description: "SSH port of the Gitea host for the channel push." + required: false + default: "30009" + channel_branch: + description: "Branch of the channel repo to publish to." + required: false + default: "main" + channel_git_name: + description: "Git committer name used for the channel push." + required: false + default: "release bot" + +runs: + using: "composite" + steps: + - name: Release via wp-release-ci + shell: bash + env: + CHANNEL_DEPLOY_KEY: ${{ inputs.channel_deploy_key }} + CHANNEL_SSH_PORT: ${{ inputs.channel_ssh_port }} + CHANNEL_BRANCH: ${{ inputs.channel_branch }} + CHANNEL_GIT_NAME: ${{ inputs.channel_git_name }} + run: bash "${GITHUB_ACTION_PATH}/release.sh"