-
-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #851 from processing/main
Update core-maven
- Loading branch information
Showing
15 changed files
with
1,986 additions
and
123 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
# Processing 32-bit Linux | ||
|
||
For the Raspberry Pi 3 and older we'd need to create an 32-bit arm version of | ||
processing. | ||
|
||
Github Actions do not support creating 32 bit runners so we need to host one | ||
ourselves. | ||
|
||
## Instructions | ||
|
||
### Gathering your Tools | ||
|
||
You will need: | ||
|
||
- A Raspberry Pi | ||
- A micro SD card | ||
- An SD card reader | ||
- A computer | ||
|
||
### Flashing the SD Card | ||
1. Install and open [**Raspberry Pi Imager**](https://www.raspberrypi.com/software/) on your computer | ||
2. In **Raspberry Pi Imager**: | ||
- Select your Raspberry Pi model | ||
- Select "Raspberry PI OS lite (32bit)" as the OS (you may need to look into the sub-menus) | ||
- Select your SD card | ||
- Click NEXT | ||
3. Edit the OS settings: | ||
- Set a hostname (e.g. `processing.local`) | ||
- Set a username and password | ||
- Go to the SERVICES tab and enable SSH with password authentication | ||
- Click SAVE and Apply the OS customisation settings | ||
|
||
### Configuring the Raspberry Pi | ||
1. Take the written SD card and put it into the Raspberry PI | ||
2. Power it up and wait for it to boot | ||
3. SSH into the Raspberry Pi using the hostname, username, and password you set earlier | ||
4. Follow Github's [instructions on how to set up a self-hosted runner](https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners). _Note: In the `./config.sh` setup step, you will be prompted to enter a name and other settings. Use default settings by pressing ENTER for each prompt._ | ||
5. Verify that the new runner appears in the list of runners on GitHub. | ||
6. Quit the the runner in the terminal (we will set it up to run automatically on boot). | ||
7. Use Github [instructions to setup the runner as a services](https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/configuring-the-self-hosted-runner-application-as-a-service) so it runs on boot. | ||
|
||
Done. |
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
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
name: Pull Requests | ||
on: | ||
pull_request: | ||
paths-ignore: | ||
- '**/*.md' | ||
branches: | ||
- main | ||
|
||
jobs: | ||
build: | ||
name: Create Pull Request Build for ${{ matrix.os_prefix }} (${{ matrix.arch }}) | ||
runs-on: ${{ matrix.os }} | ||
permissions: | ||
pull-requests: write | ||
contents: read | ||
strategy: | ||
matrix: | ||
include: | ||
# compiling for arm32 needs a self-hosted runner on Raspi OS (32-bit) | ||
- os: self-hosted | ||
os_prefix: linux | ||
arch: arm | ||
- os: ubuntu-latest | ||
os_prefix: linux | ||
arch: x64 | ||
- os: windows-latest | ||
os_prefix: windows | ||
arch: x64 | ||
- os: macos-latest | ||
os_prefix: macos | ||
arch: x64 | ||
- os: macos-latest | ||
os_prefix: macos | ||
arch: aarch64 | ||
- os: macos-latest | ||
os_prefix: linux | ||
arch: aarch64 | ||
steps: | ||
- name: Checkout Repository | ||
uses: actions/checkout@v4 | ||
- name: Install Java | ||
uses: actions/setup-java@v4 | ||
with: | ||
java-version: '17' | ||
distribution: 'temurin' | ||
architecture: ${{ matrix.arch }} | ||
- name: Setup Ant | ||
uses: cedx/setup-ant@v3 | ||
- name: Build Release | ||
run: ant -noinput -buildfile build/build.xml ${{ matrix.os_prefix }}-dist -Dversion="${{ github.sha }}" | ||
- name: Add artifact | ||
uses: actions/upload-artifact@v3 | ||
id: upload | ||
with: | ||
name: processing-${{github.sha}}${{ matrix.os_prefix }}-${{ matrix.arch }} | ||
path: ./build/${{ matrix.os_prefix }}/processing-${{github.sha}}-${{ matrix.os_prefix}}-* | ||
retention-days: 5 | ||
# TODO: Merge into one comment and fix the link | ||
# - uses: mshick/add-pr-comment@v2 | ||
# with: | ||
# message-id: "build-artifact ${{ matrix.os_prefix }} ${{ matrix.arch }}" | ||
# message: | | ||
# Build artifacts for ${{ matrix.os_prefix }} (${{ matrix.arch }}) have been created. | ||
# Download the artifacts [here](${{ steps.upload.outputs.artifact-id }}). |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,83 @@ | ||
name: Releases | ||
on: | ||
release: | ||
types: [published] | ||
push: | ||
tags: | ||
- processing-* | ||
|
||
jobs: | ||
version: | ||
runs-on: ubuntu-latest | ||
outputs: | ||
build_number: ${{ steps.tag_info.outputs.build_number }} | ||
version: ${{ steps.tag_info.outputs.version }} | ||
steps: | ||
- name: Extract version and build number | ||
id: tag_info | ||
shell: bash | ||
run: | | ||
TAG_NAME="${GITHUB_REF#refs/tags/}" | ||
BUILD_NUMBER=$(echo "$TAG_NAME" | cut -d'-' -f2) | ||
VERSION=$(echo "$TAG_NAME" | cut -d'-' -f3) | ||
# Set outputs for use in later jobs or steps | ||
echo "build_number=$BUILD_NUMBER" >> $GITHUB_OUTPUT | ||
echo "version=$VERSION" >> $GITHUB_OUTPUT | ||
build: | ||
name: Publish Release for ${{ matrix.os_prefix }} (${{ matrix.arch }}) | ||
runs-on: ${{ matrix.os }} | ||
needs: version | ||
permissions: | ||
contents: write | ||
strategy: | ||
matrix: | ||
include: | ||
# compiling for arm32 needs a self-hosted runner on Raspi OS (32-bit) | ||
- os: self-hosted | ||
os_prefix: linux | ||
arch: arm | ||
- os: ubuntu-latest | ||
os_prefix: linux | ||
arch: x64 | ||
- os: windows-latest | ||
os_prefix: windows | ||
arch: x64 | ||
- os: macos-latest | ||
os_prefix: macos | ||
arch: x64 | ||
- os: macos-latest | ||
os_prefix: macos | ||
arch: aarch64 | ||
- os: macos-latest | ||
os_prefix: linux | ||
arch: aarch64 | ||
steps: | ||
- name: Checkout Repository | ||
uses: actions/checkout@v4 | ||
- name: Install Java | ||
uses: actions/setup-java@v4 | ||
with: | ||
java-version: '17' | ||
distribution: 'temurin' | ||
architecture: ${{ matrix.arch }} | ||
- name: Setup Ant | ||
uses: cedx/setup-ant@v3 | ||
- name: Install Certificates for Code Signing | ||
if: ${{ matrix.os_prefix == 'macos' }} | ||
uses: apple-actions/import-codesign-certs@v3 | ||
with: | ||
p12-file-base64: ${{ secrets.CERTIFICATES_P12 }} | ||
p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }} | ||
- name: Build Release | ||
run: ant -noinput -buildfile build/build.xml ${{ matrix.os_prefix }}-dist -Dversion="${{ needs.version.outputs.version }}" | ||
env: | ||
PROCESSING_APP_PASSWORD: ${{ secrets.PROCESSING_APP_PASSWORD }} | ||
PROCESSING_APPLE_ID: ${{ secrets.PROCESSING_APPLE_ID }} | ||
PROCESSING_TEAM_ID: ${{ secrets.PROCESSING_TEAM_ID }} | ||
- name: Upload binaries to release | ||
uses: svenstaro/upload-release-action@v2 | ||
with: | ||
repo_token: ${{ secrets.GITHUB_TOKEN }} | ||
file: ./build/${{ matrix.os_prefix }}/processing-${{ needs.version.outputs.version }}-${{ matrix.os_prefix}}-* | ||
file_glob: true |
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
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
Oops, something went wrong.