Skip to content

Release

Release #10

Workflow file for this run

name: Release
on:
workflow_dispatch:
jobs:
deploy-release:
runs-on: ubuntu-latest
permissions:
contents: write
id-token: write
packages: write
steps:
- name: Setup Maven Action
uses: s4u/setup-maven-action@4f7fb9d9675e899ca81c6161dadbba0189a4ebb1 # v1.18.0
with:
java-distribution: 'temurin'
java-version: 17
maven-version: 3.9.9
cache-enabled: true
settings-servers: |
[{
"id": "central",
"username": "${{ secrets.CENTRAL_USERNAME }}",
"password": "${{ secrets.CENTRAL_PASSWORD }}"
}]
- name: Configure Git
run: |
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
- name: Import GPG key
uses: crazy-max/ghaction-import-gpg@cb9bde2e2525e640591a934b1fd28eef1dcaf5e5 # v6.2.0
with:
gpg_private_key: ${{ secrets.GPG_KEY }}
passphrase: ${{ secrets.GPG_PASSPHRASE }}
- name: List keys
run: gpg -K
- name: Setup SSH
uses: webfactory/ssh-agent@dc588b651fe13675774614f8e6a936a468676387 # v0.9.0
with:
ssh-private-key: ${{ secrets.RELEASE_SSH_KEY }}
- name: Maven release
run: mvn --batch-mode --update-snapshots -Dmaven.resolver.transport=wagon -DskipTests -Darguments="-DskipTests" release:prepare release:perform
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Finalize release
run: |
release_id=$(gh api /repos/oras-project/oras-java/releases | jq -r '.[] | select(.draft == true) | .id')
gh api -X PATCH -F draft=false /repos/oras-project/oras-java/releases/$release_id
for file in target/*.jar target/*.jar.asc target/*.jar.sigstore.json; do
gh release upload $release_id "$file"
done
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}