java-wrapper-version-update #1201
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: Update checkmarx Java wrapper | |
on: | |
workflow_dispatch: | |
repository_dispatch: | |
types: [java-wrapper-version-update] | |
jobs: | |
update-checkmarx-cli: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/[email protected] | |
with: | |
lfs: true | |
- name: Install Git LFS | |
run: git lfs install | |
- name: Configure Git user | |
run: | | |
git config --global user.name github-actions[bot] | |
git config --global user.email github-actions[bot]@users.noreply.github.com | |
- name: Get Latest Checkmarx Java wrapper version | |
id: ast-cli-java-wrapper | |
run: | | |
echo ::set-output name=release_tag::$(curl -s "https://repo1.maven.org/maven2/com/checkmarx/ast/ast-cli-java-wrapper/maven-metadata.xml" | grep -oPm1 "(?<=<latest>)[^<]+") | |
echo ::set-output name=current_tag::$(<ast-cli-java-wrapper.version) | |
- name: Update Checkmarx Java wrapper version | |
if: steps.ast-cli-java-wrapper.outputs.current_tag != steps.ast-cli-java-wrapper.outputs.release_tag | |
run: | | |
# Update current release | |
echo ${{ steps.ast-cli-java-wrapper.outputs.release_tag }} > ast-cli-java-wrapper.version | |
current_version=ast-cli-java-wrapper-${{ steps.ast-cli-java-wrapper.outputs.current_tag }}.jar | |
new_version=ast-cli-java-wrapper-${{ steps.ast-cli-java-wrapper.outputs.release_tag }}.jar | |
sed -i "s/$current_version/$new_version/g" checkmarx-ast-eclipse-plugin/build.properties | |
sed -i "s/$current_version/$new_version/g" checkmarx-ast-eclipse-plugin/.classpath | |
sed -i "s/$current_version/$new_version/g" checkmarx-ast-eclipse-plugin/META-INF/MANIFEST.MF | |
cd checkmarx-ast-eclipse-plugin/lib/ | |
rm -rf "$current_version" | |
curl "https://repo1.maven.org/maven2/com/checkmarx/ast/ast-cli-java-wrapper/${{ steps.ast-cli-java-wrapper.outputs.release_tag }}/${new_version}" --output $new_version | |
ls -la | |
cd ../.. | |
# Track the new JAR file with LFS | |
FILE_PATH="checkmarx-ast-eclipse-plugin/lib/$new_version" # Correct path | |
echo "FILE_PATH: $FILE_PATH" | |
# Create the directory if it doesn't exist (important!) | |
# mv $new_version $FILE_PATH | |
# Ensure the file exists after download | |
if [ ! -f "$FILE_PATH" ]; then | |
echo "Error: File $FILE_PATH not found after download." | |
exit 1 # Fail the workflow | |
fi | |
git lfs track "$FILE_PATH" | |
git add .gitattributes | |
git add "$FILE_PATH" | |
git commit -m "Update ast-cli-java-wrapper to ${{ steps.ast-cli-java-wrapper.outputs.release_tag }}" | |
- name: Create Pull Request | |
if: steps.ast-cli-java-wrapper.outputs.current_tag != steps.ast-cli-java-wrapper.outputs.release_tag | |
uses: peter-evans/create-pull-request@c5a7806660adbe173f04e3e038b0ccdcd758773c #v6.1.0 | |
with: | |
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} | |
commit-message: Update ast-cli-java-wrapper to ${{ steps.ast-cli-java-wrapper.outputs.release_tag }} | |
title: Update ast-cli-java-wrapper with ${{ steps.ast-cli-java-wrapper.outputs.release_tag }} | |
body: | | |
Updates [ast-cli-java-wrapper][1] to ${{ steps.ast-cli-java-wrapper.outputs.release_tag }} | |
Auto-generated by [create-pull-request][2] | |
[1]: https://github.com/CheckmarxDev/ast-cli-java-wrapper | |
labels: cxone | |
branch: dependency/update_java_wrapper |