Release Creation #60
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: Release Creation | |
on: | |
workflow_call: | |
inputs: | |
tag: | |
description: 'Next release tag' | |
required: true | |
type: string | |
rbranch: | |
description: 'Branch to publish development releases' | |
required: false | |
type: string | |
workflow_dispatch: | |
inputs: | |
tag: | |
description: 'Next release tag' | |
required: true | |
type: string | |
rbranch: | |
description: 'Branch to publish development releases' | |
required: false | |
type: string | |
jobs: | |
deleteDevReleases: | |
uses: Checkmarx/ast-eclipse-plugin/.github/workflows/delete-dev-releases.yml@main | |
with: | |
tag: ${{ inputs.rbranch }} | |
secrets: inherit | |
if: inputs.rbranch | |
release: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/[email protected] | |
with: | |
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} | |
# Set the tag in an env var | |
- name: Set env | |
run: | | |
echo "RELEASE_VERSION=${{ inputs.tag }}" >> $GITHUB_ENV | |
- name: Create Release Name | |
run: | | |
echo "Creating release name" | |
if [ -z "${{ inputs.rbranch }}" ]; then | |
echo "GH_RELEASE_TAG_NAME=${{ env.RELEASE_VERSION }}" >> $GITHUB_ENV | |
echo "GH_BRANCH_NAME=main" >> $GITHUB_ENV | |
else | |
echo "GH_RELEASE_TAG_NAME=${{ env.RELEASE_VERSION }}-${{ inputs.rbranch }}" >> $GITHUB_ENV | |
echo "GH_BRANCH_NAME=nightly" >> $GITHUB_ENV | |
fi | |
- name: Set up JDK 8 | |
uses: actions/setup-java@v3 | |
with: | |
distribution: temurin | |
java-version: 8 | |
- name: Cache local Maven repository | |
uses: actions/cache@v3 | |
with: | |
path: ~/.m2/repository | |
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} | |
restore-keys: | | |
${{ runner.os }}-maven- | |
- name: Update the POM version. | |
run: mvn -B org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion='${{ env.RELEASE_VERSION }}' --file pom.xml | |
- name: Create release | |
run: mvn -B clean install --file pom.xml -DskipTests -pl "!checkmarx-ast-eclipse-plugin-tests" | |
- name: Release | |
uses: softprops/action-gh-release@v1 | |
with: | |
tag_name: ${{ env.GH_RELEASE_TAG_NAME }} | |
generate_release_notes: true | |
files: ./com.checkmarx.eclipse.site/target/com.checkmarx.eclipse.site-*.zip | |
prerelease: ${{ inputs.rbranch != '' && inputs.rbranch != null }} | |
- name: Git configuration | |
run: | | |
git config --global safe.directory "/tmp/**/*/" | |
git config --global http.postBuffer 2097152000 | |
git config --global https.postBuffer 2097152000 | |
- name: Create update site | |
uses: cpina/github-action-push-to-another-repository@main | |
env: | |
API_TOKEN_GITHUB: ${{ secrets.PERSONAL_ACCESS_TOKEN }} | |
with: | |
source-directory: './com.checkmarx.eclipse.site/target/repository/' | |
destination-github-username: 'cylon-bot' | |
destination-repository-username: 'CheckmarxDev' | |
destination-repository-name: 'ast-eclipse-plugin-update-site' | |
user-email: [email protected] | |
target-branch: ${{ env.GH_BRANCH_NAME }} |