rvm-binaries/.gitea/workflows/binaries.yaml
Florian Weber 489b800e43
All checks were successful
Building binaries / build (ubuntu-22.04, 3.3.8) (push) Successful in 7m18s
Building binaries / build (ubuntu-22.04, 3.4.2) (push) Successful in 7m47s
Building binaries / build (ubuntu-22.04, 3.2.7) (push) Successful in 15m4s
Switching from branch for binaries to internal package registry
2025-04-14 11:36:43 +00:00

52 lines
2.2 KiB
YAML

name: Building binaries
on:
# Runs on pushes targeting the default branch
push:
branches:
- main
# Runs every day at 1 a.m.
schedule:
- cron: '0 1 * * *'
workflow_dispatch:
jobs:
build:
strategy:
matrix:
os: ["ubuntu-22.04"]
version: ["3.4.2", "3.3.8", "3.2.7"]
runs-on: ${{ matrix.os }}
steps:
- name: setup and package Ruby
run: |
apt-get update && \
apt-get install curl wget tar build-essential zlib1g-dev gpg -y && \
curl -sSL https://rvm.io/mpapis.asc | gpg --import - && \
curl -sSL https://rvm.io/pkuczynski.asc | gpg --import - && \
curl -sSL https://get.rvm.io | bash -s stable && \
source /etc/profile.d/rvm.sh && \
rvm get head && \
rvm install ${{ matrix.version }} && \
ruby -v && \
rvm prepare ${{ matrix.version }}
- name: push binaries
run: |
set -e && apt update && apt install jq -y && \
echo "Prüfe, ob Paket Ruby in Version ${{ matrix.version }} existiert..." && \
package_response=$(curl -s -H "Authorization: token ${{ gitea.token }}" \
"${{ gitea.server_url }}/api/packages/${{context.repo.owner}}/generic/${{ matrix.os }}-aarch64/versions/${{ matrix.version }}")
package_id=$(echo "$package_response" | jq -r '.id') && \
if [ "$package_id" != "null" ] && [ -n "$package_id" ]; then
echo "Vorhandene Version gefunden (ID: $package_id), lösche sie..."
curl -s -X DELETE -H "Authorization: token ${{ gitea.token }}" \
"${{ gitea.server_url }}/api/packages/${{context.repo.owner}}/generic/${{ matrix.os }}-aarch64/versions/${{ matrix.version }}"
else
echo "Keine vorhandene Version gefunden, fahre fort..."
fi
echo "Lade neue Version ${PACKAGE_VERSION} von ${PACKAGE_NAME} hoch..." && \
curl -s -X POST -H "Authorization: token ${{ gitea.token }}" \
--upload-file ./ruby-${{ matrix.version }}.tar.bz2 \
"${{ gitea.server_url }}/api/packages/${{context.repo.owner}}/generic/${{ matrix.os }}-aarch64/${{ matrix.version }}/ruby-${{ matrix.version }}.tar.bz2"