Skip to content

Update Rule Metadata #38

Update Rule Metadata

Update Rule Metadata #38

name: Update Rule Metadata
on: workflow_dispatch
env:
PR_BRANCH_NAME: gh-action/update-rule-metadata
jobs:
UpdateRuleMetadata_job:
name: Update Rule Metadata
runs-on: github-ubuntu-latest-s
permissions:
pull-requests: write
contents: write
id-token: write
steps:
- name: Checkout Sources
uses: actions/checkout@v4
- name: Checkout RSpec
uses: actions/checkout@v4
with:
repository: SonarSource/rspec
path: /tmp/rspec
- name: Setup JFrog
uses: SonarSource/jfrog-setup-wrapper@v3
with:
artifactoryRoleSuffix: private-reader
- name: Setup Rule API
run: |
jfrog rt curl -sLf "sonarsource-private-releases/com/sonarsource/rule-api/rule-api/%5BRELEASE%5D/rule-api-%5BRELEASE%5D.jar" -o rule-api.jar
echo "Latest com.sonarsource.rule-api:rule-api release:"
jar xf rule-api.jar META-INF/MANIFEST.MF
grep 'Implementation-Version' META-INF/MANIFEST.MF
working-directory: /tmp
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '21'
- name: Update Files
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
java -jar "/tmp/rule-api.jar" -folder /tmp/rspec update
sed --in-place='' -e 's/rule:java:S3649/rule:javasecurity:S3649/g' 'sonar-java-plugin/src/main/resources/org/sonar/l10n/java/rules/java/S2077.html'
- name: Create PR
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
git config user.name "${GITHUB_ACTOR}"
git config user.email "${GITHUB_ACTOR}@users.noreply.github.com"
git checkout -b "${{ env.PR_BRANCH_NAME }}"
git commit -m 'Update rule metadata' -a
git push --set-upstream origin "${{ env.PR_BRANCH_NAME }}"
gh pr create -B master --title 'Update rule metadata' --body ''