kotcrab / ghidra-allegrex

Ghidra processor module adding support for the Allegrex CPU (PSP)
Apache License 2.0
91 stars 9 forks source link

Add CI build #18

Closed illusion0001 closed 2 years ago

illusion0001 commented 2 years ago

Sample Release: https://github.com/illusion0001/ghidra-allegrex/releases/tag/1.034

illusion0001 commented 2 years ago

It would be better to create release build based on commit tag, where the tag name is used as a version.

Something like this? https://github.com/illusion0001/ghidra-allegrex/releases/tag/8347977

Name and tag is commit hash. Or should it be commit number?

kotcrab commented 2 years ago

Something like this?

Should be tag name, e.g. look at current one, https://github.com/kotcrab/ghidra-allegrex/releases/tag/v1.10 (tag name is v1.10)

Is it possible to specify other details in the release? Ideally we want to match existing one so it should include: Release name: ghidra-allegrex + version (from tag name) Description: See CHANGES file before updating.

The release workflow should be triggered on tag push, so the repo maintainer controls the tag name (i.e. it's not auto generated).

Btw, try to avoid force pushing if possible, it's harder to track changes this way.

illusion0001 commented 2 years ago

Updated PR to only push release on workflow dispatch which is manual. I'll figure out how to get proper change log and versioning.

illusion0001 commented 2 years ago

I removed the create release steps because I can't figure out how to make it work, should be okay to squash merge

illusion0001 commented 2 years ago

https://github.com/kotcrab/ghidra-allegrex/pull/18#discussion_r920060876

Done

kotcrab commented 2 years ago

Thanks, merged and added workflow for creating automatic releases based on tags.

John-K commented 2 years ago

Good question, I feel like most folks use them together

On Mon, Jun 27, 2022 at 6:04 AM Kotcrab @.***> wrote:

@.**** commented on this pull request.

In .github/workflows/CI.yml https://github.com/kotcrab/ghidra-allegrex/pull/18#discussion_r907210640 :

  • distribution: temurin
    • name: Setup Ghidra
  • uses: @.***
  • with:
  • version: ${{ steps.ghidra_version.outputs.full }}
    • name: Build Extension
  • run: |
  • ls ${{ env.GHIDRA_INSTALL_DIR }}
  • chmod +x gradlew
  • ./gradlew shadowJar
    • name: Prepare artifact
  • run: |
  • mkdir -p Allegrex/lib
  • cp build/libs/ghidra-allegrex-all.jar Allegrex/lib/Allegrex.jar
  • cp -R data ghidra_scripts Allegrex
  • cp -R psp-ghidra-scripts/* Allegrex/ghidra_scripts

@John-K https://github.com/John-K thanks but do you think it's worth bundling those two together? I'm not sure. For now I'll add a link to psp-ghidra-scripts in the README.

@illusion0001 https://github.com/illusion0001 I removed the .sh suffixes from build file so it will probably work now.

— Reply to this email directly, view it on GitHub https://github.com/kotcrab/ghidra-allegrex/pull/18#discussion_r907210640, or unsubscribe https://github.com/notifications/unsubscribe-auth/AADCSVSWND5RJIM2QJQJWNTVRF4DPANCNFSM5ZKPIZKA . You are receiving this because you were mentioned.Message ID: @.***>