Update main.yml #10
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build DCM Project and Create Release | |
on: | |
push: | |
branches: | |
- actions # Triggers on push to the 'actions' branch | |
tags: | |
- '*' # Triggers on any tag creation (for release) | |
jobs: | |
build: | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Set up JDK 8 | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' # You can change this to another JDK distribution if needed | |
java-version: '8' | |
- name: Install Apache Ant 1.9.9 | |
run: | | |
wget https://archive.apache.org/dist/ant/binaries/apache-ant-1.9.9-bin.zip | |
unzip apache-ant-1.9.9-bin.zip | |
sudo mv apache-ant-1.9.9 /usr/local/ant | |
echo "export PATH=\$PATH:/usr/local/ant/bin" >> $GITHUB_ENV | |
- name: Verify Ant installation | |
run: ant -version | |
- name: Set build version | |
run: echo "VERSION=${GITHUB_REF#refs/tags/}.${GITHUB_SHA:0:7}" >> $GITHUB_ENV | |
- name: Build the project | |
env: | |
VERSION: ${{ env.VERSION }} | |
run: ant -Dplugin.version=${{ env.VERSION }} | |
- name: Archive artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: artifacts | |
path: | | |
dist/datapower-v*.zip | |
dist/dcm.jar | |
release: | |
runs-on: ubuntu-20.04 | |
needs: build # Release job depends on successful completion of build job | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Create GitHub release | |
id: create_release # Add an ID to this step | |
uses: actions/create-release@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
tag_name: ${{ github.ref_name }} # Use the tag name directly | |
release_name: "Release ${{ github.ref_name }}" # Use the tag name for the release | |
body: | | |
Release notes for ${{ github.ref_name }}. | |
- Plugin version: ${{ env.VERSION }} | |
draft: false | |
prerelease: false | |
- name: Upload release assets | |
uses: actions/upload-release-asset@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} # Reference the output from create_release step | |
asset_path: dist/datapower-v${{ env.VERSION }}.zip | |
asset_name: datapower-v${{ env.VERSION }}.zip | |
asset_content_type: application/zip |